轉自:
https://www.linuxidc.com/Linux/2012-12/76448.htm
刪除數據庫用戶的時候經常會遇到這樣的錯誤;
ORA-01940: cannot drop a user that is currently connected
原因是有程序在連接我們需要刪除的用戶,我們刪除用戶之前一定要先把連接斷掉;
1、查找帳號下哪些連接在運行:
SELECT SID,SERIAL# FROM V$SESSION WHERE USERNAME='USERNAME';
注意:此處需要大寫
SQL> SELECT SID,SERIAL# FROM V$SESSION WHERE USERNAME='SSTEST';
SID SERIAL#
---------- ----------
137 41813
335 25993
464 58747
500 9153
531 50402
629 9264
631 11237
664 36180
8 rows selected.
2、刪除用戶進程;
SQL>ALTER SYSTEM KILL SESSION '137,41813';
System altered.
SQL>ALTER SYSTEM KILL SESSION '33525993;
System altered.
3、重新查看用戶連接,並確認無連接在使用
SELECT SID,SERIAL# FROM V$SESSION WHERE USERNAME='SSCRM';
4、刪除用戶
drop user sstest cascade ;