ORA-01940: 无法删除当前连接的用户处理
Oracle11gR2删除用户时报错如下:
SQL> drop user HONGSINC CASCADE;
drop user ODI_SRC CASCADE
*
第 1 行出现错误:
ORA-01940: 无法删除当前连接的用户
ORA-01940是因为要删除的用户,还存在连接无法删除,解决方法如下:
查看当前用户的连接:
select username,sid,serial# from v$session where username='HONGSINC';
USERNAME SID SERIAL#
------------------------------------------------------------ ---------- ----------
HONGSINC 127 185
HONGSINC 246 195
HONGSINC 366 183
删除用户的sid,和serial:
SQL> alter system kill session'127,185';
系统已更改。
SQL> alter system kill session'246,195';
系统已更改。
SQL> alter system kill session'366,183';
系统已更改。
删除用户:
SQL> drop user HONGSINC CASCADE;
用户已删除。
如果在drop后还提示ORA-01940:无法删除当前已链接的用户,说明还有连接的session,可以通过查看session的状态来确定该session是否被kill了,
用如下语句查看:status为要删除用户的session状态,如果还为inactive,说明没有被kill掉,如果状态为killed,说明已kill。
select saddr,sid,serial#,paddr,username,status from v$session where username ='HONGSINC';
Tag标签:「连接 ORA-01940 删除」更新时间:「2021-11-03 10:21:57」阅读次数:「1031」