Oracle 删除用户drop user cascade报错解决方案
程序员文章站
2024-02-20 10:54:47
...
前段时间需要将数据库正式环境中的数据导入测试库做一个更新,需要先删除测试库中的相应用户的原有旧数据。估计是资源占用的问题,使用drop命令系统报错了,网上搜索了一下,找到了解决方案。
1.首先将要删除的用户锁定:
alter user 用户名 account lock;
2.查看当前用户占用资源:
select saddr,sid,serial#,paddr,username,status from v$session where username = '用户名';
然后可以看到status 为 INACTIVE 的记录;
- 执行以下杀死进程的sql(下面的两个参数是status 为 INACTIVE 时的记录):
alter system kill session 'sid,serial#';
- 执行删除用户操作
drop user 用户名 cascade;
按以上步骤,即可完成删除用户。