重庆思庄Oracle、Redhat认证学习论坛

标题: 执行DROP USER ... CASCADE操作删除很慢 [打印本页]

作者: 刘泽宇    时间: 2021-4-25 17:32
标题: 执行DROP USER ... CASCADE操作删除很慢
在删除用户及其对象时使用命令:
drop user XXX cascade;
操作执行很慢,要删除很久
原因是:如果目标用户有太多表等对象的话,执行可能会非常慢。
作为临时处理方法可以先删除目标用户Schema中的所有对象,然后删除用户。
1.通过如下SQL列出目标用户所有对象的删除语句脚本(drop.sql)
SQL> set pages 0
SQL> spool drop.sql
SQL> select 'drop ' || object_type || ' ' || owner || '.' || object_name || ';'
     from dba_objects where owner = '<USER_NAME>';
SQL> spool off

2.执行删除语句脚本(drop.sql)
SQL> @drop.sql

3.删除用户
SQL> DROP USER <USER_NAME>  CASCADE ;






欢迎光临 重庆思庄Oracle、Redhat认证学习论坛 (http://bbs.cqsztech.com/) Powered by Discuz! X3.2