连接时报错:
unable to extend table SYS.AUD$ by 8192 in tablespace SYSTEM
这是因为开启了审计日志,造成占用了大量表空间引起的
1、查看表空间使用情况:
SELECT SUM(bytes) / (1024 * 1024) AS free_space, tablespace_name
FROM dba_free_space
GROUP BY tablespace_name;
SELECT a.tablespace_name,
a.bytes total,
b.bytes used,
c.bytes free,
(b.bytes * 100) / a.bytes "% USED ",
(c.bytes * 100) / a.bytes "% FREE "
FROM sys.sm$ts_avail a, sys.sm$ts_used b, sys.sm$ts_free c
WHERE a.tablespace_name = b.tablespace_name
AND a.tablespace_name = c.tablespace_name;
2、先关闭审计日志
unable to extend table SYS.AUD$ by 8192 in tablespace SYSTEM
这是因为开启了审计日志,造成占用了大量表空间引起的
1、查看表空间使用情况:
SELECT SUM(bytes) / (1024 * 1024) AS free_space, tablespace_name
FROM dba_free_space
GROUP BY tablespace_name;
SELECT a.tablespace_name,
a.bytes total,
b.bytes used,
c.bytes free,
(b.bytes * 100) / a.bytes "% USED ",
(c.bytes * 100) / a.bytes "% FREE "
FROM sys.sm$ts_avail a, sys.sm$ts_used b, sys.sm$ts_free c
WHERE a.tablespace_name = b.tablespace_name
AND a.tablespace_name = c.tablespace_name;
发现SYSTEM空间已使用99.8%
查看表空间的参数:
select tablespace_name,file_name,autoextensible from dba_data_files where tablespace_name = 'SYSTEM'
autoextensible 为是否自动扩展
2、先关闭审计日志
查看审计日志设置参数:
show parameter audit;
audit_trail项不为 NONE,说明开启了审计功能,存储位置有DB或OS等
现在的目标是将其设置为NONE
alter system set audit_trail = none scope=spfile;
然后重启实例即可
3、删除审计表数据
把占用的空间找回来:
设计表名为 SYS.AUD$ ,可以delete也可以truncate
建议用truncate,直接解决问题
之后再检查一下表空间使用情况