如何才能实现Oracle测试库上更改用户名
来源:岁月联盟
时间:2008-01-28
一般情况下,在修改用户名时我们大多使用导出用户a再导入用户b来实现用户名的换名。假如在测试库上你可以用下面的方法来简单实现,这样就不用导出了。
请大家注重:重要的生产库不建议这样做。
conn / as sysdbaUPDATE USER$ SET NAME='A2B' WHERE NAME='HH';ALTER SYSTEM CHECKPOINT;--强制写入数据文件ALTER SYSTEM FLUSH SHARED_POOL;--清除缓存数据字典信息alter user a2b identified by a;SQL> conn hh/aConnected.SQL> SELECT COUNT(*) FROM USER_OBJECTS;COUNT(*)----------952SQL> conn / as sysdbaConnected.SQL> show userUSER is "SYS"SQL> UPDATE USER$ SET NAME='A2B' WHERE NAME='HH';1 row updated.SQL> commit;Commit complete.SQL> ALTER SYSTEM CHECKPOINT;System altered.SQL> ALTER SYSTEM FLUSH SHARED_POOL;System altered.SQL> alter user a2b identified by a;User altered.SQL> conn a2b/aConnected.SQL> SELECT COUNT(*) FROM USER_OBJECTS;COUNT(*)----------952SQL> |