ORA-00604、ORA-01653、ORA-02002
执行SQL报以下错误,检查数据库表空间,没有发现问题;分析查询SQL发现语句中有用的dblink,检查dblink连接的数据库,发现问题;在此记录以下
描述:
ORA-00604: error occurred at recursive SQL level 1
ORA-01653: unable to extend table SYS.AUD$ by 8192 in tablespace SYSTEM
ORA-02002: error while writing to audit trail
ORA-00604: error occurred at recursive SQL level 1 错误指的是 内部的SQL语句执行失败
ORA-01653: unable to extend table SYS.AUD$ by 8192 in tablespace SYSTEM 意思是表空间已满
ORA-02063: preceding 5 lines from KJERP
原因:
Oracle 11g缺省安装数据库启动了audit功能,导致oracle不断累积sys.aud$表及相关索引数据量增加;
如果导致表空间满了,在alert日志中将会报ORA-1654: unable to extend index SYS....错误。
如果不用到审计功能,建议关闭审计。
解决办法:
(1)、用oracle用户登录到数据库服务器,执行:
sqlplus / as sysdba
(2)、取消audit,将初始化参数audit_trail设置为NONE
alter system set audit_trail=none scope=spfile;
(3)、然后重启数据库.
shutdown immediate;
sqlplus / as sysdba
startup;
(4)、删除审计数据,oracle用户登录到数据库服务器:
sqlplus / as sysdba
truncate table SYS.AUD$;