ORA-00604: error occurred at recursive SQL level 1
在测试环境中使用某个账号ESCMOWNER对数据库进行ALTER操作时,老是报如下错误:
ORA-00604: error occurred at recursive SQL level 1
ORA-20016: (ALTER) Action denied as it is a protected object!
ORA-06512: at line 7
不清楚发生了什么情况,于是想跟踪当前会话,查看具体原因,查看当前会话的SID为967
SELECT USERENV('SID') FROM DUAL;
以system登录,查看会话ID=967的SID,SERIAL#
SELECT SID, SERIAL# FROM V$SESSION WHERE SID=967;
跟踪会话ID、SERIAL#为967,2276的会话,如下所示:
SQL> exec dbms_system.set_sql_trace_in_session(967,2276,true);
PL/SQL procedure successfully completed.
在会话967中启用跟踪标识,如下所示
ALTER SESSION SET TRACEFILE_IDENTIFIER='kerry_test'
ORACLE 10g 的跟踪文件位于$ORACLE_BASE/admin/SID/udump 下,查看跟踪文件,
[oracle@get-linux01 udump]$ ls *kerry*
epps_ora_1960_kerry_test.trc
[oracle@get-linux01 udump]$ more epps_ora_1960_kerry_test.trc
具体的内容如下所示
查看SELECT * FROM DBA_OBJECTS WHERE OBJECT_NAME='PROTECT_ESCMOWNER_BTR' 发现PROTECT_ESCMOWNER_BTR为触发器,具体脚本如下所示
CREATE OR REPLACE TRIGGER PROTECT_ESCMOWNER_BTR
BEFORE DDL
ON ESCMOWNER.SCHEMA
BEGIN
if sys.sysevent = 'ALTER' and sys.dictionary_obj_type in ('TRIGGER','VIEW','PACKAGE','PACKAGE BODY','PROCEDURE','FUNCTION','SYNONYM') then
NULL;
elsif sys.sysevent = 'ANALYZE' then
NULL;
else
RAISE_APPLICATION_ERROR(-20016,'('||sys.sysevent||') Action denied as it is a protected object!');
end if;
END PROTECT_ESCMOWNER_BTR;
结论:
这个数据库触发器应该是前任DBA设置的,而我一直使用system更新脚本,所以一直没有触发该触发器。禁用该触发器后问题解决。
ORA-00604: error occurred at recursive SQL level 1的更多相关文章
- error occurred at recursive SQL level 1
ORA-00604: error occurred at recursive SQL level 1出现的错误:java.sql.SQLException: ORA-00604: error occu ...
- 【总算解决了】A network-related or instance-specific error occurred while establishing a connection to SQL Server
给别人做的网站莫名其妙连接不上数据库.百度了好多,总算知道自己的错在哪了. 报 "A network-related or instance-specific error occurred ...
- 解决:安装SQL Server 2008 Native Client遇到错误(在Navicat premium新建sqlserver连接时 需要):An error occurred during ...HRESULT: 0x80070422(注意尾部的错误号)
解决:安装SQL Server 2008 Native Client遇到错误(在Navicat premium新建sqlserver连接时 需要):An error occurred during . ...
- 【SQL Server 问题记录】A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible.
本文涉及的相关问题,如果你的问题或需求有与下面所述相似之处,请阅读本文 A network-related or instance-specific error occurred while esta ...
- kettle 通过JDBC 连接SQL Server(Error occurred while trying to connect to the database)
在连接数据(MS SQLServer 2008)发现:Error occurred while trying to connect to the database 然后找资料看,都不是问题所在,最后一 ...
- SSMS错误:A connection was successfully established with the server, but then an error occurred during the login process
参考: 系统太慢,实在搞不清是哪里的问题,祭出重装大法 需要安装的工具还真多,先装主要的吧.VS2013, SQL SERVER 2012,搞定.. 连个数据库试试,出错了: A connection ...
- The error occurred while setting parameters 错误解析--Bad value for type timestamp : 3
错误信息:nested exception is org.apache.ibatis.exceptions.PersistenceException: ### Error querying datab ...
- 安装qc 出现error An error occurred while attempting to connect to the database.
When trying to install mercury quality center starter edition 9.0 on Windows XP media center, I am g ...
- iis7错误提示An error occurred on the server when processing the URL...
win7下面运行ASP程序总是出错,原来是站点配置的问题... 问题一:MS Jet引擎改变了临时目录的位置,但是又没有对临时目录的存取权限,导致数据库使用失败(因为sql问题,后改用access数据 ...
随机推荐
- T-Sql(七)用户权限操作(grant)
一般数据库的权限操作我们很少用,除非一些大型的项目,需要给数据库配置不同的用户及权限,防患于未然,今天我们就来了解下t-sql中配置用户权限操作. 先看示例代码: --创建登录名 create log ...
- 使用免费组件view pdf 文档
“Is there any way to view PDF files in a Winforms tool?” 这个是我在技术论坛上发现的一个老外求助的帖子,然后看到别人回复的帖子中建议了一个免费的 ...
- linux 安装 nginx 及反向代理配置
Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,以下为Linux centos平台下安装nginx并配置反向代理的过程(采用源码安装的方式) 一:安装 ...
- (1)从底层设计,探讨插件式GIS框架的实现
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 研一时,听当时的师兄推荐,买了蒋波涛的一本关于GIS插件框架的书.当时 ...
- PHP中的魔术方法(2)
1.__get.__set这两个方法是为在类和他们的父类中没有声明的属性而设计的__get( $property ) 当调用一个未定义的属性时访问此方法__set( $property, $value ...
- 【原创】轻量级即时通讯技术MobileIMSDK:Android客户端开发指南
申明:MobileIMSDK 目前为个人维护的原创开源工程,现陆续整理了一些资料,希望对需要的人有用.如需与作者交流,见文章底签名处,互相学习. MobileIMSDK开源工程的代码托管地址请进入 G ...
- Azure ARM (14) 设置ARM VM的Availability Set
<Windows Azure Platform 系列文章目录> 参考资料:https://gallery.technet.microsoft.com/Set-Azure-Resource- ...
- Groovy学习--基本语法了解
x项目用到gradle,学习gradle之前准备先过一遍Groovy的语法.这里参考:Groovy入门. 该博客没有系统的讲解Groovy的语法和原理,仅仅只是罗列了使用Groovy的常规方法.我照着 ...
- GBDT的基本原理
这里以二元分类为例子,给出最基本原理的解释 GBDT 是多棵树的输出预测值的累加 GBDT的树都是 回归树 而不是分类树 分类树 分裂的时候选取使得误差下降最多的分裂 计算的技巧 最终分裂收益按照下面 ...
- 背水一战 Windows 10 (26) - XAML: x:DeferLoadStrategy, x:Null
[源码下载] 背水一战 Windows 10 (26) - XAML: x:DeferLoadStrategy, x:Null 作者:webabcd 介绍背水一战 Windows 10 之 XAML ...