今天在进行测试环境导数据的时候,需要记性drop user操作。在执行drop user的时候,提示:ORA-01940: cannot drop a user that is currently connected

SQL> drop user ecity ;

drop user ecity

*

ERROR at line 1:

ORA-01940: cannot drop a user that is currently connected

问题很明显,有用户在连接,不允许drop掉该user。

select username,sid,serial#,paddr from v$session where username='ECITY';

USERNAME                                    SID    SERIAL# PADDR

------------------------------ ---------- -------------------------------------------------

ECITY                                              634          7 00000000C028D198

SQL> select PROGRAM from v$process where addr='00000000C028D198';

PROGRAM

----------------------------------------------------------------------------------------------------------

Oracle@oradb01 (DW00)

SQL>

SQL> alter system kill session '634,7';

System altered.

SQL>

SQL> select saddr,sid,serial#,paddr,username,status from v$session where username is not null;

SQL> drop user ecity CASCADE;

User dropped.

SQL>

问题解决,记得KILL进程前,先看看是啥进程,哪台机连过来的,能否KILL等等。测试环境还好,生产无小事。

0b1331709591d260c1c78e86d0c51c18.png

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐