一般来说,Unix-like的系统都有单用户模式,那么Oracle有单用户模式吗?
好像是没有的,但可以模拟。在有些情况下还是很有用的,特别是某些急需的资源经常被lock的情况下。
SQLPLUS> CONNECT SYS AS sysdba;
SQLPLUS> SHUTDOWN IMMEDIATE;
SQLPLUS> STARTUP;
SQLPLUS> SPOOL revoke_restricted_session;
SQLPLUS> SELECT 'REVOKE restricted session FROM '
username ';' FROM dba_users
WHERE username NOT IN ('SYS','SYSTEM');
SQLPLUS> SPOOL OFF;
SQLPLUS> @revoke_restricted_session.log;
SQLPLUS> ALTER SYSTEM ENABLE RESTRICTED SESSION;
这样就进入“单用户模式了”。
但这往往还是不够的,如果有某些job的频率特别高的话。所以,还需要
SQL> show parameter queue;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
job_queue_processes integer 10
SQL> alter system set job_queue_processes = 0;
然后就可以干你需要干的事情了,比如说compile某个package。
reference: http://askanantha.blogspot.com/2008/05/how-to-switch-oracle-in-single-user.html
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21342557/viewspace-1021408/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/21342557/viewspace-1021408/