• SYSAUX表空间使用率高问题处理


    SYSAUX表空间做为SYSTEM表空间的辅助表空间,主要存放EM相关的内容以及表统计信息,AWR快照,审计信息等,而假设SYSAUX表空间在默认条件下你假设不做不论什么配置,随着时间的推移。会膨胀的越来越大。

    经过几次的不断扩展添加SYSAUX表空间,眼下已经20G了,所以现是考虑减肥的时候了。

    1. 查看表空间使用

    SQL>

    Select Tablespace_Name,

                                 Sum_m,

                                 Max_m,

                                 Count_Blocks Free_Blk_Cnt,

                                 Sum_Free_m,

                                 To_Char(100 * Sum_Free_m / Sum_m, '99.9999')|| '%' As Pct_Free,

           100 - To_Char(100 * Sum_Free_m / Sum_m,'99.9999') || '%' As Pct_used   

             From (Select Tablespace_Name, Sum(Bytes) / 1024 / 1024 AsSum_m

                                                   From Dba_Data_Files

                                          Group By Tablespace_Name)

             Left Join

     (Select Tablespace_Name As Fs_Ts_Name,

                                          Max(Bytes) / 1024 / 1024 As Max_m,

                                          Count(Blocks) As Count_Blocks,

                                          Sum(Bytes / 1024 / 1024) As Sum_Free_m

                       From Dba_Free_Space

              Group ByTablespace_Name)

    On Tablespace_Name = Fs_Ts_Name

    ORDER BY Sum_Free_m / Sum_m ;

     

    TABLESPACE_NAME                     SUM_M      MAX_M FREE_BLK_CNT SUM_FREE_MPCT_FREE  PCT_USED

    ---------------------------------------- ---------- ------------ ---------- --------- ------------

    SYSAUX                              21652       1031           13     1032.5  4.7686% 95.2314%

    NTICKET_DB                         235520       7798         4922      46894 19.9108% 80.0892%

    NTICKET_INDEX                      112640       2418          764      25382 22.5337% 77.4663%

    SYSTEM                               2798       1884            7  1916.125  68.4820% 31.518%

    USERS                                   5     3.6875            1     3.6875 73.7500% 26.25%

    PORTALMAIL                            200    168.125            2        170 85.0000% 15%

    UNDOTBS2                            10265       3596          200 9936.8125  96.8028% 3.1972%

    UNDOTBS3                            10265       3593          248       9983 97.2528% 2.7472%

    UNDOTBS1                            24455       3968          184 24280.625  99.2870% .713%

    STRATEGY                            20480       3968            6      20478 99.9902% .0098%

    2. 查看SYSAUX表空间内各个分类项目占存储空间的比重。能够看到AWR快照占用了近20G左右的空间,统计信息为300M左右,同一时候数据库关闭了审计audit_trail,所以审计表aud$不占空间

    SQL> col Item For a30

    SQL> col "Space Used(GB)" For a10

    SQL> col Schema For a20

    SQL> col "MoveProcedure" For a200

    SQL>

    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;

     

    Item                           Space UsedSchema               Move Procedure

    ---------------------------------------- -------------------- ---------------------------------------

    SM/AWR                             19.103 SYS                  

    SM/OPTSTAT                          0.311 SYS                 

    SM/ADVISOR                          0.248 SYS                 

    XDB                                 0.124 XDB                 XDB.DBMS_XDB.MOVEXDB_TABLESPACE

    SDO                                 0.073MDSYS                MDSYS.MOVE_SDO

    EM                                  0.045SYSMAN              emd_maintenance.move_em_tblspc

    XSOQHIST                            0.037 SYS                  DBMS_XSOQ.OlapiMoveProc

    AO                                  0.037SYS                  DBMS_AW.MOVE_AWMETA

    ORDIM/ORDDATA                       0.013 ORDDATA             ordsys.ord_admin.move_ordim_tblspc

    LOGMNR                              0.013 SYSTEM               SYS.DBMS_LOGMNR_D.SET_TABLESPACE

    AUDIT_TABLES                            0 SYS                  DBMS_AUDIT_MGMT.move_dbaudit_tables

    3. 改动统计信息的保持时间。默觉得31天,这里改动为7天。过期的统计信息会自己主动被删除

    SQL> selectdbms_stats.get_stats_history_retention from dual;

     

    GET_STATS_HISTORY_RETENTION

    ---------------------------

                             31

     

    SQL> exec dbms_stats.alter_stats_history_retention(15);

     

    PL/SQL procedure successfullycompleted

     

    SQL> selectdbms_stats.get_stats_history_retention from dual;

     

    GET_STATS_HISTORY_RETENTION

    ---------------------------

                             15

                            

    4. 改动AWR快照的保存时间为7天(7*24*60),每小时收集一次,也能够通过EM界面查看和改动

    --检查当前系统的保留时间为8天,1小时採样一次

    SQL> select * fromdba_hist_wr_control;

     

          DBID SNAP_INTERVAL                           RETENTION                               TOPNSQL

    ------------------------------------------------- -------------------------------------------------

    1494575446 +0000001:00:00.0                       +0000800:00:00.0                       DEFAULT

     

     

    --

    SQL>

    begin

             dbms_workload_repository.modify_snapshot_settings(

                interval => 60,

                retention => 10080,--分钟

                topnsql => 100

              );

    end;

     

    ORA-13541: 系统移动窗体基线大小 (691200) 大于保留时间 (604800)

    ORA-06512: 在"SYS.DBMS_WORKLOAD_REPOSITORY", line 174

    ORA-06512: 在"SYS.DBMS_WORKLOAD_REPOSITORY", line 222

    ORA-06512: 在 line 2

    这里 691200(8*24*60*60)。604800(7*24*60*60)都是以秒为单位的。

    发现运行报错,由于当前系统移动窗体大于如今所设的时间窗体。

    --查看系统的当前的MOVING_WINDOW_SIZE。

    SQL> selectdbid,baseline_name,baseline_type,moving_window_size from dba_hist_baseline;

     

          DBID BASELINE_NAME                             BASELINE_TYPEMOVING_WINDOW_SIZE

    --------------------------------------------------- ------------- ------------------

    1494575446SYSTEM_MOVING_WINDOW                     MOVING_WINDOW                  8

    --改动其大小为7,即7天。

    SQL> execdbms_workload_repository.modify_baseline_window_size(7);

     

    PL/SQL procedure successfullycompleted

    --再次运行改动AWR快照的保存时间

    SQL> execDBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS(interval=>60,retention=> 7*24*60 );

     

    PL/SQL procedure successfullycompleted

    注:当然也可通过EM进行改动AWR设置

    5.删除AWR快照,再次查看SYSAUX表空间使用率。

    --查询最最小和最大快照ID

    SQL> selectmin(snap_id),max(snap_id) from dba_hist_snapshot;

     

    MIN(SNAP_ID) MAX(SNAP_ID)

    ------------ ------------

            8188         8397

           

    --删除最早的24个AWR快照,也就是最早的24小时的快照。

    SQL> execdbms_workload_repository.drop_snapshot_range(low_snap_id =>8188,high_snap_id => 8188+24);

    最后。再次查看表空间发现使用率已经减小。

  • 相关阅读:
    mysql/mariadb学习记录——查询2
    mysql/mariadb学习记录——查询
    touchSwipe 上下左右滑动,二指缩放 效果不好。
    c# 调用c++ 使用指针传递的时候
    c# 调用 matlab 引发初始化错误 异常
    创建非主键唯一约束
    sql 中 如果添加 时间戳 字段 timestamp
    JS frame 跨域 传值
    VS 附加进程调试
    Aspose.words 替换字符 操作
  • 原文地址:https://www.cnblogs.com/zsychanpin/p/7069332.html
Copyright © 2020-2023  润新知