drop user 报错ora-00604
问题描述:
SQL> show user
USER is "SYS"
SQL> drop user efmis_zhongyang cascade;
drop user efmis_zhongyang cascade
*
ERROR at line 1:
ORA-00604: error occurred at recursive SQL level 1
ORA-38301: can not perform DDL/DML over objects in Recycle Bin
排查问题思路:
sql_trace跟踪sql:
SQL> alter session set sql_trace=true;
Session altered.
SQL> drop user efmis_zhongyang cascade;
drop user efmis_zhongyang cascade
*
ERROR at line 1:
ORA-00604: error occurred at recursive SQL level 1
ORA-38301: can not perform DDL/DML over objects in Recycle Bin
SQL> alter session set sql_trace=false;
Session altered.
通过以下语句确认跟踪文件位置:
select d.value || '/' || lower(rtrim(i.instance, chr(0))) || '_ora_' ||
p.spid || '.trc' trace_file_name
from (select p.spid
from sys.v$mystat m, sys.v$session s, sys.v$process p
where m.statistic# = 1
and s.sid = m.sid
and p.addr = s.paddr) p,
(select t.instance
from sys.v$thread t, sys.v$parameter v
where v.name = 'thread'
and (v.value = 0 or t.thread# = to_number(v.value))) i,
(select value from sys.v$parameter where name = 'user_dump_dest') d;
/u01/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_15959.trc
查看跟踪文件有如下信息:
EXEC #46948114736296:c=5999,e=5848,p=0,cr=26,cu=3,mis=0,r=0,dep=1,og=4,plh=0,tim=1459587911014685
ERROR #46948114736296:err=38301 tim=1459587911014699
EXEC #46948114738488:c=56991,e=57337,p=0,cr=11776,cu=6,mis=0,r=0,dep=0,og=1,plh=0,tim=1459587911014743
ERROR #46948114738488:err=604 tim=1459587911014757
通过ERROR #46948114736296:err=38301可以得到oracle要执行语句为:
=====================
PARSING IN CURSOR #46948114736296 len=93 dep=1 uid=0 oct=12 lid=0 tim=1459587911008777 hv=2610238907 ad='2ab2f5b054a0' sqlid='byuwhpydta5dv'
drop table "EFMIS_ZHONGYANG"."BIN$LR983/P8HqDgUyQDqMBbSw==$0" cascade constraints purge force
END OF STMT
PARSE #46948114736296:c=0,e=114,p=0,cr=0,cu=0,mis=1,r=0,dep=1,og=4,plh=0,tim=1459587911008776
=====================
可以从上看到现在删除用户efmis_zhongyang要删除的是回收站对象"EFMIS_ZHONGYANG"."BIN$LR983/P8HqDgUyQDqMBbSw==$0"
登录SQL> conn efmis_zhongyang/1
SQL> select * from tab;
TNAME TABTYPE CLUSTERID
------------------------------ ------- ----------
BIN$LR983/P8HqDgUyQDqMBbSw==$0 TABLE
drop user 报错ora-00604的更多相关文章
- expdp报错ora 39126
11.2.0.2,expdp报错: ORA-39126: Worker unexpected fatal error in KUPW$WORKER.GET_TABLE_DATA_OBJECTS []O ...
- ORA-01157报错"cannot identify/lock data file"解决
sqlplus以管理员方式接入数据库,启动时出现报错,如下: > sqlplus "/as sysdba" SQL> startup ...... ORA-01157: ...
- ORA-12609报错分析
问题:监控不断告警ORA-12609 Wed 10/14/2020 10:40 AM 12CRAC1-ALERT中出现ORA错误,请检查 171- nt OS err code: 0 172- Cli ...
- GTID复制报错处理:Last_Error: Error 'Can't drop database 'test'; database doesn't exist' on query
创建GTID主从连接: mysql, master_user; 报错显示: Slave_IO_Running: Yes Slave_SQL_Running: No Last_Error: Error ...
- hive drop 报错
执行 drop database xxxx cascade; 删除数据库的时候报错. 报错信息:Execution Error, return code 1 from org.apache.hadoo ...
- drop redo logfile current报错
目的:在安装完毕11.2.0.4版本Oracle单实例数据库后,对日志进行格式化,删除原日志组current状态,删除报错 #对于理论学习,而带来的理解命令,因此作为记录 #查询日志状态SYS > ...
- Oracle 12.2 报错:ORA-12012: error on auto execute of job "SYS"."ORA$AT_OS_OPT_SY_7458"
alert报错 2019-01-12T10:10:11.499130+08:00Errors in file /u01/app/oracle/diag/rdbms/rac1/rac112/trace/ ...
- Linux 启动数据库报错:could not open parameter file init**.ora
sqlplus /nolog.conn /as sysdba.startup命令后显示 SQL> startupORA-01078: failure in processing system p ...
- alert日志报错:ERROR: failed to establish dependency between database RACDB and diskgroup resource ora.DATA.dg
一.打开数据库alert日志,发现有报错 ERROR: failed to establish dependency between database RACDB and diskgroup reso ...
随机推荐
- ffmpeg 编解码详细过程
ffmpeg编解码详细过程 bobbypollo 转:ffmpeg编解码详细过程 原文地址:ffmpeg编解码详细过程(转)作者:心在飞翔原文出处: http://www.360doc.com ...
- JavaSE(八)集合之Set
今天这一篇把之前没有搞懂的TreeSet中的比较搞得非常的清楚,也懂得了它的底层实现.希望博友提意见! 一.Set接口 1.1.Set集合概述 Set集合:它类似于一个罐子,程序可以依次把多个对象 “ ...
- mongodb php auto increment 自增
mongodb的自增实现根oracle,postgresql是差不多,都是通过计数器来实现的. oracle自增实现: 实例说明oracle序列用法 postgresql自增实现: postgresq ...
- jQuery 检查某个元素在页面上是否存在实例代码
用jQuery检查某个元素在网页上是否存在时,应该根据获取元素的长度来判断,代码如下: if($("#tt").length > 0) { //元素存在时执行的代码 } ...
- GIS-013-Cesium Terrain 数据生成
一.Python 1.修改Python脚本文件 if __name__=='__main__': #sys.argv = ['F:\\000_Terrain\\T7-gdal2srtmtiles-de ...
- shell基础篇(四)算术运算
---内容来源于http://www.jb51.net/article/31232.htm shell中的赋值和操作默认都是字符串处理,1.错误方法举例 a) var=1+1 echo $var 输出 ...
- LinkedBlockingQueue(lbq)阻塞队列
最近开发中,经常使用这个类LinkedBlockingQueue,它是BlockingQueue这个子类. 并发库中的BlockingQueue是一个比较好玩的类,顾名思义,就是阻塞队列.该类主要提供 ...
- Android中Bitmap和Drawable详解
一.相关概念 1.Drawable就是一个可画的对象,其可能是一张位图(BitmapDrawable),也可能是一个图形(ShapeDrawable),还有可能是一个图层(LayerDrawable) ...
- APP的缓存文件放在哪里?
只要是需要进行联网获取数据的APP,都会在本地产生缓存文件.那么,这些缓存文件到底放在什地方合适呢?系统有没有给我们提供建议的缓存位置呢?不同的缓存位置有什么不同呢? 考虑到卸载APP必须删除缓存 在 ...
- C语言分支结构之if else语句
前面我们看到的代码都是顺序执行的,也就是先执行第一条语句,然后是第二条.第三条……一直到最后一条语句,这称为顺序结构. 但是对于很多情况,顺序结构的代码是远远不够的,比如一个程序限制了只能成年人使用, ...