oracle:ORA-01940無法刪除當前已連接用戶的解決方案


由於開發過程中對數據庫的操作比較多,另外也是怕占用資源,決定將數據庫所使用用戶刪除掉,然后可能是資源占用,oracle報錯了,提供解決方案:

1.首先將索要刪除的用戶鎖定(這句必須執行):

     alter user 用戶名 account lock;

2.查看當前用戶占用資源:

     select saddr,sid,serial#,paddr,username,status from v$session where username = '用戶名';

然后可以看到status  為 INACTIVE 的記錄;

3. 執行以下殺死進程的sql(下面的兩個參數是status  為 INACTIVE 時的記錄):

  alter system kill session 'sid,serial#';

4. 執行刪除用戶操作

  drop user 用戶名 cascade;

注意:如果發現 v$session 表中一直存在狀態 為 INACTIVE 的記錄,那么,恭喜你,你可能蠢蠢的忘記執行第一句 鎖住用戶的sql了,笨蛋~

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM