暂无图片
暂无图片
3
暂无图片
暂无图片
4
暂无图片

记录一次SYSAUX表空间爆满的处理办法

原创 夏雕 2022-12-26
5611

内容如有纰漏还请各位大佬多多指教
SYSAUX表空间:为SYSTEM表空间的辅助表空间,主要存放EM相关的内容以及表统计信息,AWR快照,审计信息等。
如果SYSAUX表空间空间满了,并不会影响主要业务,但是如果数据库频繁收集统计信息,那就会可能出问题,甚至由于收集统计信息hang住,导致数据不可用,对于SYSAUX表空间,也要定期进行检查,确保还有空余空间,如果空间满了,需要删除统计信息以及AWR快照等。

1、创建新的分区
如果WRH$_表无法自动创建分区,可以用如下SQL创建新的分区,用于保留最新的数据:
alter session set “_swrf_test_action” = 72;

–手工创建一个快照
exec dbms_workload_repository.create_snapshot();

1672044679385.png

2、truncate旧的分区
生成truncate分区的SQL
select ‘alter table ‘||object_name||’ truncate partition ‘||subobject_name||’ update global indexes;’
from dba_objects where object_name like ‘WRH$%’ and object_type = ‘TABLE PARTITION’ and created<sysdate-1;
检查输出的SQL,并执行。
image.png
0349623a24296eb8ae0458e0e20f11a.png

3.检查表空间使用情况发现已经truncate了大部分数据
1672045036551.png
到这里基本已经清理完成了
image.png
4、定期清理
默认会自动清理,也可以使用如下SQL定期手工清理
select dbid,min(snap_id) from WRH$_SQL_PLAN group by dbid;
exec DBMS_WORKLOAD_REPOSITORY.DROP_SNAPSHOT_RANGE(dbid,start_id,end_id);

5、减少保留的时长或细粒度
exec DBMS_WORKLOAD_REPOSITORY.MODIFY_BASELINE_WINDOW_SIZE(7);
exec DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS(retention=>76024);

最后修改时间:2023-02-01 14:56:49
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

萨布热斯
暂无图片
11月前
评论
暂无图片 0
能将最后一个图片的查询sql发一下嘛?
11月前
暂无图片 点赞
1
夏雕
暂无图片
11月前
回复
暂无图片 0
SQL>col Item for a30 SQL>col Schema for a20 SQL>set lines 200 SQL> SELECT occupant_name"Item", round(space_usage_kbytes/1024/1024,3)"Space Used (GB)", schema_name "Schema", move_procedure "MoveProcedure" FROM v$sysaux_occupants ORDER BY 2 Desc;
11月前
暂无图片 点赞
回复
星星之火
暂无图片
0年前
评论
暂无图片 0
下述哪些描述适用于B*Tree索引、但是不适用于bitmap索引? A Reverse键索引 B 降序 C 组合键值 D 唯一索引 E 基于函数表达式的键值 F 压缩
0年前
暂无图片 点赞
评论
夏雕
暂无图片
2年前
评论
暂无图片 0
exec DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS(retention=>7*60*24);
2年前
暂无图片 点赞
评论