广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >Oracle sysaux表空间异常增长的完美解决方法
  • 592
分享到

Oracle sysaux表空间异常增长的完美解决方法

2024-04-02 19:04:59 592人浏览 泡泡鱼
摘要

目录发现问题问题原因分析:处理方法:总结发现问题 某一业务系统数据库,sysaux表空间大小达到24GB+ 查询sysaux表空间中对象的大小,超过1GB的列出,发现ASH相关的表

发现问题

某一业务系统数据库,sysaux表空间大小达到24GB+

查询sysaux表空间中对象的大小,超过1GB的列出,发现ASH相关的表过大。

 SEGMENT_NAME                   OWNER                SEGMENT_TYPE           MB                                                                                                       
------------------------------ -------------------- ------------------ ------                                                                                                       
WRH$_ACTIVE_SESSioN_HISTORY    SYS                  TABLE PARTITION      7151                                                                                                       
WRH$_EVENT_HISTOGRAM_PK        SYS                  INDEX PARTITION      1856                                                                                                       
WRH$_EVENT_HISTOGRAM           SYS                  TABLE PARTITION      1777                                                                                                       
WRH$_LATCH                     SYS                  TABLE PARTITION      1657                                                                                                       
WRH$_sqlSTAT                   SYS                  TABLE PARTITION      1344

查看快照在数据库中的保留时长

可以看到,AWR设定的保留时间为8天,WRH$_ACTIVE_SESSION_HISTORY确保留了2140天的数据,需清理。

查看AWR快照未清理原因

WRH$_ACTIVE_SESSION_HISTORY由于分区失败,导致所有数据均在同一个表空间,所以删除过期快照失败。

问题原因分析:

oracle根据保留策略决定需要清除哪些行。在大型AWR表的情况下使用了一种特殊的机制,我们将快照数据存储在分区中。从这些表中清除数据的一种方法是删除只包含超过保留条件的行的分区。在夜间清除任务中,只有当分区中的所有数据都已过期时,我们才会删除该分区。如果该分区至少包含一行,根据保留策略,该行不应被删除,那么该分区将不会被删除,因此该表将包含旧数据。

如果没有发生分区拆分(无论出于何种原因),那么我们最终可能会遇到这样的情况:我们必须等待最新的条目过期,然后才能删除它们所在的分区。这可能意味着,一些较旧的条目可以在有效期过后显著保留。其结果是数据未按预期清除。

处理方法:

根据MOS:WRH$_ACTIVE_SESSION_HISTORY Does Not Get Purged Based Upon the Retention Policy (Doc ID 387914.1)处理步骤

1.Check the partition details for the offending table before the split:

 SELECT owner,
  segment_name,
  partition_name,
  segment_type,
  bytes/1024/1024/1024 Size_GB
FROM dba_segments
WHERE segment_name='WRH$_ACTIVE_SESSION_HISTORY';

2.Split the partitions so that there is more chance of the smaller partition being purged:

alter session set "_swrf_test_action" = 72;

NOTE: This command will split partitions for ALL partitioned AWR objects. It also initiates a single split; it does not need to be disabled and will need to be repeated if multiple splits are required.

3.Check the partition details for the offending table after the split:

SELECT owner,
  segment_name,
  partition_name,
  segment_type,
  bytes/1024/1024/1024 Size_GB
FROM dba_segments
WHERE segment_name='WRH$_ACTIVE_SESSION_HISTORY';

以上步骤执行完成后,再truncate原来的分区,只保留新分区,释放空间

ALTER TABLE WRH$_ACTIVE_SESSION_HISTORY TRUNCATE PARTITION WRH$_ACTIVE_xxxxx;

检查索引是否正常

select index_name,partition_name,status from dba_ind_partitions where index_name='WRH$_ACTIVE_SESSION_HISTORY_PK';

总结

到此这篇关于Oracle sysaux表空间异常增长解决的文章就介绍到这了,更多相关Oracle sysaux表空间异常增长内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Oracle sysaux表空间异常增长的完美解决方法

本文链接: https://www.lsjlt.com/news/146701.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Oracle sysaux表空间异常增长的完美解决方法
    目录发现问题问题原因分析:处理方法:总结发现问题 某一业务系统数据库,sysaux表空间大小达到24GB+ 查询sysaux表空间中对象的大小,超过1GB的列出,发现ASH相关的表...
    99+
    2022-11-13
  • Oracle sysaux表空间异常增长怎么解决
    这篇“Oracle sysaux表空间异常增长怎么解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Oracle&...
    99+
    2023-06-30
  • oracle 11g sysaux表空间使用率非常高的问题解决
    今天发现有个数据库的sysaux表空间暴涨,快要100%了,如图: 查看一下是什么内容占用了空间: 是awr的相关内容,需要重建awr来释放空间,具体重建步骤,请参考我的另一篇博文:http...
    99+
    2022-10-18
  • oracle表被锁定的完美解决方法
    解决办法: ora-00031:session marked for kill处理oracle中杀不掉的锁一些ORACLE中的进程被杀掉后,状态被置为”killed”,但是锁定的资源很长时间不释放,有时实在...
    99+
    2022-10-18
  • oracle ORA-01653 表空间不能自动增长的原因及处理方法
    背景:表空间已经设置自动增长,但达到一定大小后仍会报ORA-01653。解决过程:   查阅相关资料,多数只给出了解决办法,但这个解决办法经过验证也是临时了,到了一定大小仍旧会报错,到时...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作