ORACLE system表空间满

ORACLE system表空间满

解决方法:执行迁移命令,将AUD$表相关移到其它表空间中,也可以新建 一个审计 表空间

SELECT * FROM (SELECT SEGMENT_NAME, SUM(BYTES) /  /  MB FROM DBA_SEGMENTS WHERE TABLESPACE_NAME = 'SYSTEM' GROUP BY SEGMENT_NAME ORDER BY  DESC) WHERE ROWNUM < ;

alter table aud$ move tablespace SIEBELINDEX
alter table audit$ move tablespace SIEBELINDEX;
alter table audit_actions move tablespace SIEBELINDEX;
alter index i_audit_actions rebuild online tablespace SIEBELINDEX;

ORACLE system表空间满

ORACLE system表空间满

结果如下:

select b.tablespace_name "表空间",b.bytes/1024/1024 "大小M",(b.bytes-sum(nvl(a.bytes,0)))/1024/1024 "已使用M",substr((b.bytes-sum(nvl(a.bytes,0)))/(b.bytes)*100,1,5) "利用率" from dba_free_space a,dba_data_files b where a.file_id=b.file_id and b.tablespace_name='SYSTEM' group by b.tablespace_name,b.file_name,b.bytes order by b.tablespace_name;

ORACLE system表空间满

ORACLE system表空间满

清理审计表,释放系统表空间:

sqlplus / as sysdba

truncate table SYS.AUD$;

上一篇:shiro与Web项目整合-Spring+SpringMVC+Mybatis+Shiro(八)


下一篇:oracle维护表空间和数据文件