欢迎投稿

今日深度:

OracleSYSAUX表空间使用率过高的处理办法,

OracleSYSAUX表空间使用率过高的处理办法,


目录
  • 1、维护需求
  • 2、通过SQL语句查询SYSAUX表空间占用
  • 3、直接查询出是哪些表分区占用SYSAUX表空间较高
  • 4、然后直接truncate这些表
  • 5、再次查看SYSAUX表空间使用量

1、维护需求

日常巡检发现工单数据库中SYSAUX表空间使用率达到95%

在这里插入图片描述

对于SYSAUX表空间而言,如果占用过大,那么一般情况下是由于AWR信息或对象统计信息没有及时清理引起的

2、通过SQL语句查询SYSAUX表空间占用

SQL> SELECT OCCUPANT_NAME "Item",SPACE_USAGE_KBYTES / 1048576 "Space Used (GB)",SCHEMA_NAME "Schema",MOVE_PROCEDURE "Move Procedure"FROM V$SYSAUX_OCCUPANTS WHERE SPACE_USAGE_KBYTES > 1048576 ORDER BY "Space Used (GB)" DESC;

在这里插入图片描述

如果OCCUPANT_NAME列为SM/AWR(Server Manageability - Automatic Workload Repository),那么表示AWR信息占用过大;如果该列为SM/OPTSTAT(Server Manageability - Optimizer Statistics History),那么表示优化器统计信息占用过大。如上截图,是AWR信息过大。

3、直接查询出是哪些表分区占用SYSAUX表空间较高

SQL> select distinct 'truncate  table  '||segment_name||';',s.bytes/1024/1024
  from dba_segments s
 where s.segment_name like 'WRH$%'
   and segment_type in ('TABLE PARTITION', 'TABLE')
   and s.bytes/1024/1024>100
   order by s.bytes/1024/1024/1024 desc;

在这里插入图片描述

4、然后直接truncate这些表

在这里插入图片描述

5、再次查看SYSAUX表空间使用量

在这里插入图片描述

到此这篇关于Oracle SYSAUX表空间使用率过高的处理办法的文章就介绍到这了,更多相关Oracle SYSAUX表空间使用率内容请搜索PHP之友以前的文章或继续浏览下面的相关文章希望大家以后多多支持PHP之友!

您可能感兴趣的文章:
  • Oracle表空间大小如何查看及扩增
  • Oracle表空间时间点恢复的方法
  • Oracle rac模式下undo表空间爆满的解决方案
  • Oracle临时表空间管理和优化操作
  • Oracle表空间利用率不足的处理流程
  • Oracle如何获取当前库中所有表空间创建的语句

www.htsjk.Com true http://www.htsjk.com/oracle/48412.html NewsArticle OracleSYSAUX表空间使用率过高的处理办法, 目录 1、维护需求 2、通过SQL语句查询SYSAUX表空间占用 3、直接查询出是哪些表分区占用SYSAUX表空间较高 4、然后直接truncate这些表 5、再次查看...
评论暂时关闭