环境描述:
redhat6.4 64位+oracle 11.2.0.4 RAC
问题描述:前两天临时接到通知,说数据库出问题,让我和谁谁联系。后面连接上数据库发现集群服务是正常的,数据库也是OPEN状态,本地也能正常访问,顿时松了一口气,接着跟业务方联系了解一下,发现是应用程序连接数据库报unable to extend table SYS.AUD$ by 8192 in tablespace SYSTEM,通过sqlplus user/passowrd@service_name错误信息如下:
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
ORA-01653: unable to extend table SYS.AUD$ by 8192 in tablespace SYSTEM
上面的错误信息很明显了
解决方式:
1、给表空间增加数据文件
alter tablespace system add datafile '+DATA' size 500M
2、删除aud$表中的数据
select bytes/1024/1024 from dba_segments where segment_name='AUD$'
truncate table aud$
3、 更改aud$表所用表空间
alter table aud$ move tablespace tablespace_name
4、修改audit_trail参数
alter system set audit_trail='none' scope=spfile
invalid value for parameter audit_trail, must be from among extended, xml, db_extended, false, true, none, os, db
此次是采用第一种方式,给表空间增加数据文件。后面再来处理aud$中的数据