一般来讲除开业务数据存放的表空间,DBA要着重关注SYSTEM,SYSAUX,UNDO,TEMP表空间,SYSTEM表空间的大小一般是衡定的,UNDO和TEMP表空间的大小由数据库的业务情况决定,而SYSAUX表空间在默认条件下你如果不做任何配置,随着时间的推移,会膨胀的越来越大!SYSAUX表空间做为SYSTEM表空间的辅助表空间,主要存放EM相关的内容以及表统计信息,AWR快照,审计信息等,个人认为,如果你的SYSAUX表空间大小超过2G,那么该考虑让他减肥了!

一:使用下列语句查询表空间使用率 
  1. SELECT * FROM (
  2. SELECT D.TABLESPACE_NAME,
  3. SPACE || 'M' "SUM_SPACE(M)",
  4. BLOCKS "SUM_BLOCKS",
  5. SPACE - NVL (FREE_SPACE, 0) || 'M' "USED_SPACE(M)",
  6. ROUND ( (1 - NVL (FREE_SPACE, 0) / SPACE) * 100, 2) || '%'
  7. "USED_RATE(%)",
  8. FREE_SPACE || 'M' "FREE_SPACE(M)"
  9. FROM (  SELECT TABLESPACE_NAME,
  10. ROUND (SUM (BYTES) / (1024 * 1024), 2) SPACE,
  11. SUM (BLOCKS) BLOCKS
  12. FROM DBA_DATA_FILES
  13. GROUP BY TABLESPACE_NAME) D,
  14. (  SELECT TABLESPACE_NAME,
  15. ROUND (SUM (BYTES) / (1024 * 1024), 2) FREE_SPACE
  16. FROM DBA_FREE_SPACE
  17. GROUP BY TABLESPACE_NAME) F
  18. WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+)
  19. UNION ALL
  20. SELECT D.TABLESPACE_NAME,
  21. SPACE || 'M' "SUM_SPACE(M)",
  22. BLOCKS SUM_BLOCKS,
  23. USED_SPACE || 'M' "USED_SPACE(M)",
  24. ROUND (NVL (USED_SPACE, 0) / SPACE * 100, 2) || '%' "USED_RATE(%)",
  25. NVL (FREE_SPACE, 0) || 'M' "FREE_SPACE(M)"
  26. FROM (  SELECT TABLESPACE_NAME,
  27. ROUND (SUM (BYTES) / (1024 * 1024), 2) SPACE,
  28. SUM (BLOCKS) BLOCKS
  29. FROM DBA_TEMP_FILES
  30. GROUP BY TABLESPACE_NAME) D,
  31. (  SELECT TABLESPACE_NAME,
  32. ROUND (SUM (BYTES_USED) / (1024 * 1024), 2) USED_SPACE,
  33. ROUND (SUM (BYTES_FREE) / (1024 * 1024), 2) FREE_SPACE
  34. FROM V$TEMP_SPACE_HEADER
  35. GROUP BY TABLESPACE_NAME) F
  36. WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+)
  37. ORDER BY 1)
  38. WHERE TABLESPACE_NAME IN ('SYSAUX','SYSTEM','UNDOTBS1','TEMP');
二:查询SYSAUX表空间内各个分类项目占存储空间的比重,很明显可以看出来AWR快照占用了2G左右的空间,统计信息为149M左右,同时数据库关闭了审计audit_trail,所以审计表aud$不占空间 
  1. SELECT occupant_name "Item",
  2. space_usage_kbytes / 1048576 "Space Used (GB)",
  3. schema_name "Schema",
  4. move_procedure "Move Procedure"
  5. FROM v$sysaux_occupants
  6. ORDER BY 1

三:修改统计信息的保持时间,默认为31天,这里修改为7天,过期的统计信息会自动被删除

  1. SQL> select dbms_stats.get_stats_history_retention from dual;
  2. GET_STATS_HISTORY_RETENTION
  3. ---------------------------
  4. 31
  5. SQL> exec dbms_stats.alter_stats_history_retention(7);
  6. PL/SQL procedure successfully completed.
  7. SQL> select dbms_stats.get_stats_history_retention from dual;
  8. GET_STATS_HISTORY_RETENTION
  9. ---------------------------
  10. 7

四:修改AWR快照的保存时间为7天(7*24*60),每小时收集一次,也可以通过EM界面查看和修改

  1. SQL> begin
  2. dbms_workload_repository.modify_snapshot_settings (
  3. interval => 60,
  4. retention => 10080,
  5. topnsql => 100
  6. );
  7. end;

五:删除AWR快照,再次查看SYSAUX表空间使用率,最后表空间使用率降低为38.42%

  1. select min(snap_id),max(snap_id) from dba_hist_snapshot;//查询最最小和最大快照ID
  2. begin
  3. dbms_workload_repository.drop_snapshot_range(
  4. low_snap_id => 10758,
  5. high_snap_id => 10900,
  6. dbid => 387090299);
  7. end;

参考文章,感谢作者分享!http://jhdba.wordpress.com/2009/05/19/purging-statistics-from-the-sysaux-tablespace/

本文转自斩月博客51CTO博客,原文链接http://blog.51cto.com/ylw6006/1135593如需转载请自行联系原作者

ylw6006

SYSAUX表空间使用率高问题处理相关推荐

  1. oracle SYSAUX表空间使用率过高处理

    1维护需求 日常巡检发现工单数据库中SYSAUX表空间使用率达到95% 对于SYSAUX表空间而言,如果占用过大,那么一般情况下是由于AWR信息或对象统计信息没有及时清理引起的 2.1 通过SQL语句 ...

  2. oracle system和sysaux表空间清理和回收

    oracle system和sysaux表空间清理和回收   前几天和一个网友讨论了下SYSAUX表空间使用率过高的问题,今天有时间整理一下,正好我们的测试数据库也存在这个问题.本案例数据库版本为11 ...

  3. oracle之 SYSAUX表空间维护

    1.查询表空间使用率 SQL> set linesize 400 SQL> set pagesize 400 SQL> SELECT D.TABLESPACE_NAME 表空间名称, ...

  4. 导出oracle awr分析报告,配置oracle内存参数,察看表空间使用率

    cmd 命令生成awr报告: cmd 窗口 输入 -> Sqlplus sys/orcl@orcl as sysdba  (sys登陆oracle) . 导出awr命令 @?/rdbms/adm ...

  5. Oracle 扩展sysaux,oracle 清理SYSAUX表空间

    简介 oracle 清理SYSAUX表空间 处理思路 1.查询表空间使用情况1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17SELECT UPPER(F.TABLES ...

  6. oracle 10g SYSAUX表空间快速增长之WRH$_SQL_PLAN篇

    通过分析oracle sysaux表空间下的各模块信息: SELECT t.OCCUPANT_NAME,SUM(t.SPACE_USAGE_KBYTES)/1024/1024  FROM gV$SYS ...

  7. oracle 257,ORACLE 10g SYSAUX表空间快速增长之WRH$_ACTIVE_SESSION_HISTORY篇

    近一段时间监控生产数据库的表空间使用情况,发现SYSAUX表空间非常大(17g之多),而且每天都有几十M的增长,看到此现象后,认为这很不正常,分析SYSAUX表空间那些segments占用空间比较大: ...

  8. 清理SYSAUX表空间

    1.查看SYSAUX表空间中数据分布情况 col SEGMENT_NAME for a30 set lines 999 select * from (select segment_name,PARTI ...

  9. oracle sysaux表空间不足,sysaux 表空间不足问题处理

    sysaux 表空间不足问题处理 一现场,备份库alter 日志出现错误 ORA-1688: unable to extend table SYS.WRH$_SQLSTAT partition WRH ...

最新文章

  1. Android Acitivity 生命周期
  2. android 设置单边框,详解Android用Shape制作单边框图的两种思路和坑
  3. 软件故障_一些主要的软件故障
  4. 最新蚂蚁金服Java面试题:Docker+秒杀设计+RocketMQ+亿级数据设计
  5. strong vs copy
  6. 实际操作更改Linux启动模式
  7. RabbitMQ交换器Exchange
  8. Ubuntu 开发者工具中心 Ubuntu Make
  9. 用segnet训练我自己的数据,实验笔记1——改变图片大小
  10. 精心整理 | R语言中文社区历史文章合集(作者篇)
  11. Unity3D常用知识点总结
  12. filenet安装前置工作-总结安装一天的成果
  13. 微信 网页授权/第三方平台账户绑定/微信openid获取
  14. VScode插件管理(C/C++)
  15. 闲鱼双11全链路营销体系初体验
  16. ibm的主要竞争对手_IBM如何计划在云中竞争
  17. 25岁,一个北漂程序员,如果不想35 岁被淘汰,请把它当成一种信仰!
  18. 微信小程序云开发实战:网上商城(二)
  19. ELK日志分析平台(二)----logstash数据采集
  20. psql -d temp 时候的txid_current!

热门文章

  1. linux的read命令
  2. 资深程序员不一定当得了软件架构师
  3. VirtualBox快照(Snapshot)功能使用及注意事项
  4. smarty半小时快速上手教程
  5. 推荐一款好用的搜索引擎(kngine)
  6. JAVA SE学习day_13 :Map 查找表
  7. asp多表查询并显示_SpringBoot系列(五):SpringBoot整合Mybatis实现多表关联查询
  8. Tweet信息搜集工具tinfoleak
  9. 会话跟踪技术Cookieless
  10. php中表头不跟着滑动,JS实现table表格固定表头且表头随横向滚动而滚动