ORA-01940:没法删除当前已链接的用户
(1)查看用户的连接状况 select username,sid,serial# from v$session ------------------------------------------ 如下结果:
username sid serial# ---------------------------------------- NETBNEW 513 22974 (2)找到要删除用户的sid,和serial,并删除 ------------------------------------------- 如:你要删除用户'WUZHQ',可以这样做:
alter system kill session'532,4562'
(3)删除用户 -------------------------------------------- drop user username cascade
(**)如果在drop 后还提示ORA-01940:无法删除当前已链接的用户,说明还有连接的session,可以通过查看session的状态来确定该session是否被kill 了,用如下语句查看: ------------------------------------- select saddr,sid,serial#,paddr,username,status from v$session where username is not null 结果如下(以我的库为例): saddr sid serial# paddr username status -------------------------------------------------------------------- 564A1E28 513 22974 569638F4 NETBNEW ACTIVE
status 为要删除用户的session状态,如果还为inactive,说明没有被kill掉,如果状态为killed,说明已kill。 由此可见,WUZHQ这个用户的session已经被杀死。此时可以安全删除用户。
|