2013-09-11 64 views
7

我創建了一個用戶:如何更改模式名稱?

CREATE USER gds_map 
IDENTIFIED BY gds_map; 

現在我需要改一個名字。我試圖更新或找到其他方式,但還沒有發現任何東西。

我會很高興的任何提示。

回答

9

你不能(至少不是以支持或模糊負責的方式)。您需要使用新的用戶名創建一個新用戶並刪除舊用戶。

4

沒有方法來重命名oracle模式。

嘗試,

1 - 創建新的模式

2,出口舊模式,

$exp owner=test2 

3,進口舊模式到新模式,

$imp fromuser=test2 touser=newuser_name 
1

做此

1-登錄以sys

2-執行此: 更新SYS.USER $ 集名稱= 'NEW_NAME' 其中name = 'OLD_NAME';

3-然後重新啓動數據庫

+0

你可能也想看看默認的表空間,所以你不會開始混合對象 –

0

我需要如此頻繁,我甚至寫了一篇關於這個話題

,我用的是「克隆」用戶對解決方法做到這一點相同的數據庫使用不同的名稱,使用loopback dblink。

它的速度非常快,最終在成功檢查後,您可以刪除舊的模式。

入住在這裏:http://www.dbarj.com.br/en/2014/11/rename-schema-oracle-11g-loopback-dblink/

問候,

羅德里戈·豪爾赫

-2

在Oracle數據庫不能重命名您的用戶名,但你可以改變你的密碼。

alter user USER_NAME identified by <enter_new_password>; 
8

如果你想修改模式的名稱,您應該對用戶preveledegs架構的名字$

1.使用標識

SQL> select user#,NAME from SYS.user$ WHERE NAME='TEST'; 
USER# NAME 
---------- ------------------------------ 
*93* TEST 

2.修改架構名稱

SQL> UPDATE USER$ SET NAME='NEW_SCHEMA_NAME' WHERE USER#=93; 

3。提交完

SQL> COMMIT; 

4.修改系統SCN

SQL> ALTER SYSTEM CHECKPOINT; 

5.Then刷新SHARED_POOL

SQL> ALTER SYSTEM FLUSH SHARED_POOL; 

6.修改新模式的密碼

SQL> ALTER USER new_schema IDENTIFIED BY new_pass; 
+0

感謝你,它節省了我的一天,並像任何工作......謝謝。 – ArifMustafa