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

  前几天和一个网友讨论了下SYSAUX表空间使用率过高的问题,今天有时间整理一下,正好我们的测试数据库也存在这个问题。本案例数据库版本为11.2.0.4.0。
  SYSAUX表空间被称为系统辅助表空间,是10g版本开始推出的新功能,主要的目的是为SYSTEM表空间减负,Oracle对SYSTEM表空间的维护有一套独立的体系,对SYSTEM表空间操作会占用额外的CPU资源,而且效率低下,详见我之前发表的文章为什么不要把用户表存储到SYSTEM表空间。在10g版本,增加了SYSAUX辅助表空间,将EM、AWR等组件的表从SYSTEM表空间挪到了SYSAUX表空间中,这样大大减少了SYSTEM表空间的消耗,也减少了Oracle对SYSTEM表空间维护的成本。
  但是有几个比较坑爹的组件需要的表并没有挪到SYSAUX表空间,比如常见的审计用到的AUD$表,很多DBA都可能遇到SYSTEM表空间使用率过高,查询发现是AUD$表很大导致的,我们的数据库正好打开了审计功能,正好可以拿来做实验。
  下面先查询下SYSTEM和SYSAUX表空间的使用率。

sys@IVLDB> SELECT * FROM ( SELECT D.TABLESPACE_NAME, SPACE || 'M' "SUM_SPACE(M)", BLOCKS "SUM_BLOCKS", SPACE - NVL (FREE_SPACE, 0) || 'M' "USED_SPACE(M)", ROUND ( (1 - NVL (FREE_SPACE, 0) / SPACE) * 100, 2) || '%' "USED_RATE(%)", FREE_SPACE || 'M' "FREE_SPACE(M)" FROM (  SELECT TABLESPACE_NAME, ROUND (SUM (BYTES) / (1024 * 1024), 2) SPACE, SUM (BLOCKS) BLOCKS FROM DBA_DATA_FILES GROUP BY TABLESPACE_NAME) D, (  SELECT TABLESPACE_NAME, ROUND (SUM (BYTES) / (1024 * 1024), 2) FREE_SPACE FROM DBA_FREE_SPACE GROUP BY TABLESPACE_NAME) F WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+) UNION ALL                                                           SELECT D.TABLESPACE_NAME, SPACE || 'M' "SUM_SPACE(M)", BLOCKS SUM_BLOCKS, USED_SPACE || 'M' "USED_SPACE(M)", ROUND (NVL (USED_SPACE, 0) / SPACE * 100, 2) || '%' "USED_RATE(%)", NVL (FREE_SPACE, 0) || 'M' "FREE_SPACE(M)" FROM (  SELECT TABLESPACE_NAME, ROUND (SUM (BYTES) / (1024 * 1024), 2) SPACE, SUM (BLOCKS) BLOCKS FROM DBA_TEMP_FILES GROUP BY TABLESPACE_NAME) D, (  SELECT TABLESPACE_NAME, ROUND (SUM (BYTES_USED) / (1024 * 1024), 2) USED_SPACE, ROUND (SUM (BYTES_FREE) / (1024 * 1024), 2) FREE_SPACE FROM V$TEMP_SPACE_HEADER GROUP BY TABLESPACE_NAME) F WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+) ORDER BY 1)  WHERE TABLESPACE_NAME IN ('SYSAUX','SYSTEM');
TABLESPACE_NAME   SUM_SPACE(M)   SUM_BLOCKS USED_SPACE(M)   USED_RATE(%)    FREE_SPACE(M)
----------------- -------------- ---------- --------------- --------------- ---------------
SYSAUX            22156M         2835968    21126.81M       95.35%          1029.19M
SYSTEM             8686M         1111808    8251.7M         94.99%            434.3M

  可见,SYSAUX表空间已经使用了21GB左右,SYSTEM表空间已经使用了8GB左右,下面查看下使用SYSTEM和SYSAUX表空间的比较大的表有哪些。

sys@IVLDB> select * from (select segment_name,sum(bytes)/1024/1024 total_mb,tablespace_name from dba_segments where tablespace_name in
('SYSTEM','SYSAUX') group by segment_name,tablespace_name order by 2 desc)where rownum <=20;
SEGMENT_NAME                                        TOTAL_MB     TABLESPACE_NAME
-------------------------------------------------   ----------   --------------
AUD$                                                6680         SYSTEM
WRH$_ACTIVE_SESSION_HISTORY                         5248.0625    SYSAUX
WRH$_EVENT_HISTOGRAM_PK                             2499.0625    SYSAUX
WRH$_EVENT_HISTOGRAM                                1794.0625    SYSAUX
WRH$_LATCH_MISSES_SUMMARY_PK                        905.0625     SYSAUX
WRH$_SQLSTAT                                        816.0625     SYSAUX
WRH$_LATCH                                          800.0625     SYSAUX
C_OBJ#_INTCOL#                                      768          SYSTEM
WRH$_LATCH_MISSES_SUMMARY                           760.0625     SYSAUX
WRH$_ACTIVE_SESSION_HISTORY_PK                      712.0625     SYSAUX
WRH$_SYSSTAT_PK                                     672.0625     SYSAUX
WRH$_LATCH_PK                                       560.0625     SYSAUX
WRH$_SYSSTAT                                        504.0625     SYSAUX
I_WRI$_OPTSTAT_H_OBJ#_ICOL#_ST                      456          SYSAUX
WRH$_PARAMETER_PK                                   454.0625     SYSAUX
WRH$_SEG_STAT                                       408.0625     SYSAUX
WRH$_PARAMETER                                      384.0625     SYSAUX
WRH$_SYSTEM_EVENT                                   368.0625     SYSAUX
WRI$_OPTSTAT_HISTGRM_HISTORY                        312          SYSAUX
I_H_OBJ#_COL#                                       312          SYSTEM

  可见,大表大部分都是AUD$和WRH$开头的AWR基表,AUD$使用SYSTEM表空间,AWR的基表使用SYSAUX表空间,下面再查看下SYSAUX表空间的使用情况,可以通过v$sysaux_occupants视图查询到。

sys@IVLDB> SELECT occupant_name "Item", space_usage_kbytes / 1048576 "Space Used (GB)", schema_name "Schema", move_procedure "Move Procedure" FROM v$sysaux_occupants ORDER BY 1 ;
Item                           Space Used (GB) Schema               Move Procedure
------------------------------ --------------- -------------------- -----------------------------------
AO                                  .038391113 SYS                  DBMS_AW.MOVE_AWMETA
AUDIT_TABLES                                 0 SYS                  DBMS_AUDIT_MGMT.move_dbaudit_tables
AUTO_TASK                           .000366211 SYS
EM                                           0 SYSMAN               emd_maintenance.move_em_tblspc
EM_MONITORING_USER                  .001708984 DBSNMP
EXPRESSION_FILTER                   .003540039 EXFSYS
JOB_SCHEDULER                       .010498047 SYS
LOGMNR                              .013061523 SYSTEM               SYS.DBMS_LOGMNR_D.SET_TABLESPACE
LOGSTDBY                            .001342773 SYSTEM               SYS.DBMS_LOGSTDBY.SET_TABLESPACE
ORDIM                               .000427246 ORDSYS               ordsys.ord_admin.move_ordim_tblspc
ORDIM/ORDDATA                       .013244629 ORDDATA              ordsys.ord_admin.move_ordim_tblspc
ORDIM/ORDPLUGINS                             0 ORDPLUGINS           ordsys.ord_admin.move_ordim_tblspc
ORDIM/SI_INFORMTN_SCHEMA                     0 SI_INFORMTN_SCHEMA   ordsys.ord_admin.move_ordim_tblspc
PL/SCOPE                            .001525879 SYS
SDO                                 .064758301 MDSYS                MDSYS.MOVE_SDO
SM/ADVISOR                          .199707031 SYS
SM/AWR                              18.8637695 SYS
SM/OPTSTAT                          1.14306641 SYS
SM/OTHER                            .012268066 SYS
SMON_SCN_TIME                       .008178711 SYS
SQL_MANAGEMENT_BASE                 .001647949 SYS
STATSPACK                                    0 PERFSTAT
STREAMS                             .000976563 SYS
TEXT                                .003540039 CTXSYS               DRI_MOVE_CTXSYS
TSM                                          0 TSMSYS
ULTRASEARCH                                  0 WKSYS                MOVE_WK
ULTRASEARCH_DEMO_USER                        0 WK_TEST              MOVE_WK
WM                                  .003417969 WMSYS                DBMS_WM.move_proc
XDB                                 .123962402 XDB                  XDB.DBMS_XDB.MOVEXDB_TABLESPACE
XSAMD                               .005004883 OLAPSYS              DBMS_AMD.Move_OLAP_Catalog
XSOQHIST                            .038391113 SYS                  DBMS_XSOQ.OlapiMoveProc31 rows selected.

  可见SM/AWR组件就使用了将近19GB的SYSAUX表空间,也就是说审计和AWR占用了大量的SYSTEM和SYSAUX表空间,而这些数据是可以定期清理的,都没有必要保留太长的时间。
下面先清理审计的数据,如果要保留部分AUD$里面记录的审计数据,可以把想要的数据插入到一张临时表,然后直接truncate这张表就可以了,truncate操作会直接回收AUD$占用的空间。

sys@IVLDB> truncate table AUD$;

Table truncated.

sys@IVLDB> select bytes/1024/1024 from dba_segments where segment_name='AUD$';
BYTES/1024/1024
---------------5

  可见,truncate这张表之后,6680M的空间直接降为5M,释放了大量的SYSTEM表空间的空间。下面再来回收下SYSAUX表空间,这个相对比较麻烦,也比较耗时。
  如上文所示,通过查看v$sysaux_occupants视图,可以确定占用SYSAUX表空间过多的大部分都是AWR的基表,这样只要删除部分AWR数据理论上就可以回收一部分SYSAUX表空间,通常AWR的数据都会设置保留期限,10g版本默认保留7天,11g版本默认保留8天,可以通过dba_hist_wr_control视图来查看(注:并不是所有DBA开头的表都是数据字典,也有很多是视图,dba_hist_wr_control就是视图)。

sys@IVLDB> select * from dba_hist_wr_control;
  DBID   SNAP_INTERVAL         RETENTION            TOPNSQL
----------   -------------------   -------------------   ----------
1357933872   +00000 01:00:00.0     +00008 00:00:00.0     DEFAULT

  大家可能会有疑问了,AWR的数据既然只保留七八天,为什么还会占用这么多的SYSAUX表空间呢?这个问题我个人认为主要有以下两个原因,首先,AWR删除过期的数据是通过DELETE操作完成的,这样就会产生大量的碎片,特别是SYSAUX表空间存在自动扩展的数据文件,而且这个数据文件没有扩展到最大,还有扩展的空间情况下会很明显,其次就是ASH的数据有些情况下是不受AWR的保留策略影响的,这个从下面的SQL就可以看出。

sys@IVLDB> select count(*) from  WRH$_ACTIVE_SESSION_HISTORY;
COUNT(*)
----------
16918966
sys@IVLDB> select min(snap_id),max(snap_id) from  wrh$_active_session_history;
MIN(SNAP_ID)   MAX(SNAP_ID)
------------   ------------1        15533

  可以看到,ASH的数据从第一个快照开始一直都在保留,导致WRH$_ACTIVE_SESSION_HISTORY表很大,使用DBMS_WORKLOAD_REPOSITORY包清理过期或者不需要的AWR数据,可以回收这部分空间。

sys@IVLDB> exec DBMS_WORKLOAD_REPOSITORY.DROP_SNAPSHOT_RANGE (low_snap_id =>1,high_snap_id => 30000);

PL/SQL procedure successfully completed.
  清理了AWR数据之后,你会发现SYSAUX表空间的空间并没有被回收,使用率还和之前一样,这是因为清理AWR操作是通过DELETE操作实现的,表的水位线并没有下降导致的。

sys@IVLDB> SELECT occupant_name "Item", space_usage_kbytes / 1048576 "Space Used (GB)", schema_name "Schema", move_procedure "Move Procedure" FROM v$sysaux_occupants where occupant_name='SM/AWR';
Item             Space Used (GB)   Schema               Move Procedure
--------------   ---------------   -------------------- ------------------
SM/AWR           18.8638306        SYS

  AWR的数据还是使用将近19GB的空间,查询SYSTEM和SYSAUX表空间的使用率会发现SYSTEM表空间的使用率已经降低了很多,因为上文TRUNCATE了AUD$表,这张表使用的是SYSTEM表空间,上文删除了很多AWR的数据,AWR的数据使用SYSAUX表空间,并没有回收。

sys@IVLDB> SELECT * FROM ( SELECT D.TABLESPACE_NAME, SPACE || 'M' "SUM_SPACE(M)", BLOCKS "SUM_BLOCKS", SPACE - NVL (FREE_SPACE, 0) || 'M' "USED_SPACE(M)", ROUND ( (1 - NVL (FREE_SPACE, 0) / SPACE) * 100, 2) || '%' "USED_RATE(%)", FREE_SPACE || 'M' "FREE_SPACE(M)" FROM (  SELECT TABLESPACE_NAME, ROUND (SUM (BYTES) / (1024 * 1024), 2) SPACE, SUM (BLOCKS) BLOCKS FROM DBA_DATA_FILES GROUP BY TABLESPACE_NAME) D, (  SELECT TABLESPACE_NAME, ROUND (SUM (BYTES) / (1024 * 1024), 2) FREE_SPACE FROM DBA_FREE_SPACE GROUP BY TABLESPACE_NAME) F WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+) UNION ALL                                                           SELECT D.TABLESPACE_NAME, SPACE || 'M' "SUM_SPACE(M)", BLOCKS SUM_BLOCKS, USED_SPACE || 'M' "USED_SPACE(M)", ROUND (NVL (USED_SPACE, 0) / SPACE * 100, 2) || '%' "USED_RATE(%)", NVL (FREE_SPACE, 0) || 'M' "FREE_SPACE(M)" FROM (  SELECT TABLESPACE_NAME, ROUND (SUM (BYTES) / (1024 * 1024), 2) SPACE, SUM (BLOCKS) BLOCKS FROM DBA_TEMP_FILES GROUP BY TABLESPACE_NAME) D, (  SELECT TABLESPACE_NAME, ROUND (SUM (BYTES_USED) / (1024 * 1024), 2) USED_SPACE, ROUND (SUM (BYTES_FREE) / (1024 * 1024), 2) FREE_SPACE FROM V$TEMP_SPACE_HEADER GROUP BY TABLESPACE_NAME) F WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+) ORDER BY 1)  WHERE TABLESPACE_NAME IN ('SYSAUX','SYSTEM');
TABLESPACE_NAME      SUM_SPACE(M)    SUM_BLOCKS USED_SPACE(M)   USED_RATE(%)  FREE_SPACE(M)
-------------------- --------------- ---------- --------------- ------------- --------------
SYSAUX               22156M             2835968 21126.81M       95.35%        1029.19M
SYSTEM               8686M              1111808 1990.25M        22.91%        6695.75M

  查询WRH$_ACTIVE_SESSION_HISTORY表会发现数据已经被删除了很多,从删除之前的16918966条记录变为删除后的4706条记录,但是表的大小没变,还是5GB多。

sys@IVLDB> select count(*) from WRH$_ACTIVE_SESSION_HISTORY;
COUNT(*)
----------4706

  下面通过MOVE操作回收这个表的水位线,来回收这部分被删除数据占用的空间。这个表是分区表,分区表不支持表级别的MOVE操作,直接对分区表进行MOVE操作会遇到ORA-14511错误。

sys@IVLDB> alter table WRH$_ACTIVE_SESSION_HISTORY move;
alter table WRH$_ACTIVE_SESSION_HISTORY move*
ERROR at line 1:
ORA-14511: cannot perform operation on a partitioned object

  查看这个表的分区信息,只有两个分区。

sys@IVLDB>  select segment_name,partition_name,bytes/1024/1024/1024 gb from dba_segments where segment_name='WRH$_ACTIVE_SESSION_HISTORY';
SEGMENT_NAME                   PARTITION_NAME                         GB
------------------------------ ------------------------------ ----------
WRH$_ACTIVE_SESSION_HISTORY    WRH$_ACTIVE_1357933872_0            5.125
WRH$_ACTIVE_SESSION_HISTORY    WRH$_ACTIVE_SES_MXDB_MXSN      .000061035

  下面按照分区进行MOVE操作,来回收空间。

sys@IVLDB> alter table WRH$_ACTIVE_SESSION_HISTORY move partition WRH$_ACTIVE_1357933872_0;

Table altered.

sys@IVLDB> alter table WRH$_ACTIVE_SESSION_HISTORY move partition WRH$_ACTIVE_SES_MXDB_MXSN;

Table altered.
  对分区表进行MOVE之后,需要重建索引,查看这个表的索引信息。

sys@IVLDB> select index_name from dba_indexes where table_name='WRH$_ACTIVE_SESSION_HISTORY';
INDEX_NAME
------------------------------
WRH$_ACTIVE_SESSION_HISTORY_PK

  这个表只有一个主键,而且是分区索引,也不能对分区索引直接进行REBUILD操作,否则会遇到ORA-14086错误。

sys@IVLDB> alter index WRH$_ACTIVE_SESSION_HISTORY_PK rebuild;
alter index WRH$_ACTIVE_SESSION_HISTORY_PK rebuild*
ERROR at line 1:
ORA-14086: a partitioned index may not be rebuilt as a whole

  下面查看下这个索引的分区信息。

sys@IVLDB> select partition_name from dba_ind_partitions where index_name='WRH$_ACTIVE_SESSION_HISTORY_PK';
PARTITION_NAME
------------------------------
WRH$_ACTIVE_1357933872_0
WRH$_ACTIVE_SES_MXDB_MXSN

  然后按照分区进行重建索引。

sys@IVLDB> alter index WRH$_ACTIVE_SESSION_HISTORY_PK rebuild partition WRH$_ACTIVE_1357933872_0;

Index altered.

sys@IVLDB> alter index WRH$_ACTIVE_SESSION_HISTORY_PK rebuild partition WRH$_ACTIVE_SES_MXDB_MXSN;

Index altered.
  再次查看,WRH$_ACTIVE_SESSION_HISTORY的空间已经回收。

sys@IVLDB> select sum(bytes)/1024/1024 from dba_segments where segment_name='WRH$_ACTIVE_SESSION_HISTORY';
SUM(BYTES)/1024/1024
--------------------2.0625
sys@IVLDB> select sum(bytes)/1024/1024 from dba_segments where segment_name='WRH$_ACTIVE_SESSION_HISTORY_PK';
SUM(BYTES)/1024/1024
--------------------.3125

  可见,这个表大小由之前的5248.0625MB将为2.0625MB,重建索引后,索引的大小也由之前的712.0625MB降为了0.3125MB,这一张表就回收了6GB左右的空间。

sys@IVLDB> SELECT occupant_name "Item", space_usage_kbytes / 1048576 "Space Used (GB)", schema_name "Schema", move_procedure "Move Procedure" FROM v$sysaux_occupants where occupant_name='SM/AWR';
Item             Space Used (GB)   Schema               Move Procedure
--------------   ---------------   -------------------- ------------------
SM/AWR           13.0436401        SYS

  通过v$sysaux_occupants视图,可以查询到AWR占用空间由之前的将近19GB降为了不到13GB。按照同样的方法,回收下WRH$_EVENT_HISTOGRAM表的空间,这也是分区表表1794MB,只有一个索引(是主键)2499MB。

sys@IVLDB> select partition_name from dba_tab_partitions where table_name='WRH$_EVENT_HISTOGRAM';
PARTITION_NAME
------------------------------
WRH$_EVENT_HISTO_MXDB_MXSN
WRH$_EVENT__1357933872_0
sys@IVLDB> alter table WRH$_EVENT_HISTOGRAM move partition WRH$_EVENT_HISTO_MXDB_MXSN;

Table altered.

sys@IVLDB> alter table WRH$_EVENT_HISTOGRAM move partition WRH$_EVENT__1357933872_0;

Table altered.

sys@IVLDB> select index_name from dba_indexes where table_name='WRH$_EVENT_HISTOGRAM';
INDEX_NAME
------------------------------
WRH$_EVENT_HISTOGRAM_PK
sys@IVLDB> select partition_name from dba_ind_partitions where index_name='WRH$_EVENT_HISTOGRAM_PK';
PARTITION_NAME
------------------------------
WRH$_EVENT_HISTO_MXDB_MXSN
WRH$_EVENT__1357933872_0
sys@IVLDB> alter index WRH$_EVENT_HISTOGRAM_PK rebuild partition WRH$_EVENT_HISTO_MXDB_MXSN;

Index altered.

sys@IVLDB> alter index WRH$_EVENT_HISTOGRAM_PK rebuild partition WRH$_EVENT__1357933872_0;

Index altered.
  清理WRH$_ACTIVE_SESSION_HISTORY和WRH$_EVENT_HISTOGRAM两张表,SYSAUX表空间就释放出10GB的空间,其他占用SYSAUX空间比较大的表也可以安装这样的方法去释放空间,这里就不一一演示了。
  可能有人会问了,既然已经删除了数据,那么如果不回收这部分空间,ORACLE就不会再使用这部分空间了吗?为什么非要回收呢?这个高水位线的问题主要影响以下几个方面,不只是使用SYSAUX表空间的表,对所有碎片较多的表都适用。
  1.影响查询速度,因为这样的表本身比较大,索引也会很大,查询会很慢。
  2.消耗资源,因为表和索引都很大,查询时会消耗很多I/O资源。
  3.空间占用,虽然大部分数据被DELETE掉了,但是这部分空间仍旧是这个段(SEGMENT)的区(EXTENT),即使可以再利用也只能是这个表的新增数据才可以使用,而且还得是所在表空间无法自动扩展或者没有足够的扩展空间的情况下,如果表空间可以自动扩展或者有足够的扩展空间,那么还是不会使用这部分空间的,这就导致表和索引会越来越大,占用的空间越来越大,而一旦将可扩展的空间用尽,那么其他表将无法扩展,DELETE掉的数据空间,其他对象是无法使用的。
  除了AWR的保留策略会影响SYSAUX表空间的使用率外,AWR收集数据的级别也对SYSAUX表空间的使用率影响很大,AWR收集数据的级别由statistics_level参数控制,这个参数有三个值,BASIC、TYPICAL、ALL,BASIC表示关闭统计信息收集,TYPICAL表示普通收集级别,只收集够日常用的统计信息,ALL是最给力的,凡是ORACLE能收集的所有信息都要收集,所以生成数据量会很大,相对来说,对性能和占用空间的影响也是最大的,通常TYPICAL就已经够用了。
  不同的版本statistics_level参数的默认值不同,有的版本默认值为ALL,有的版本默认值为TYPICAL,具体哪些版本使用ALL为默认值,我记不清了,如果您的数据库设置statistics_level参数的值为ALL,建议调整为TYPICAL。

sys@IVLDB> show parameter statistics_level
NAME                                 TYPE        VALUE
------------------------------------ ----------- ---------
statistics_level                     string      TYPICAL

  如果您的数据库也遇到了SYSAUX表空间很大的情况,建议在清理AWR数据时,回收这部分空间,对SYSAUX表空间的对象操作,基本不会影响数据库的正常使用,SYSAUX表空间存放的对象都是数据库运行非必须的对象,技术这个表空间损坏或者丢失,数据库一样可以正常运行

另外一种方式:
如果sysaux表空间使用率90%了,如何维护???
SYSAUX表空间做为SYSTEM表空间的辅助表空间,主要存放EM相关的内容以及表统计信息,AWR快照,审计信息等
23.1.修改统计信息的保持时间,默认为31天,这里修改为7天,过期的统计信息会自动被删除

SQL> select dbms_stats.get_stats_history_retention from dual;
     GET_STATS_HISTORY_RETENTION --------------------------- 31
SQL> exec dbms_stats.alter_stats_history_retention(7);
PL/SQL procedure successfully completed.
SQL> select dbms_stats.get_stats_history_retention from dual;
 GET_STATS_HISTORY_RETENTION --------------------------- 7

23.2.修改AWR快照的保存时间为7天(72460),每小时收集一次

SQL>
begin dbms_workload_repository.modify_snapshot_settings ( interval => 60, retention => 10080, topnsql => 100 );
end;
/
23.3.删除AWR快照,再次查看SYSAUX表空间使用率,表空间使用率降低

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

select min(snap_id),max(snap_id) from dba_hist_snapshot;

查看数据库的DBID:

SQL> select dbid from v$database;DBID
----------
1632800928

通过最小、最大快照ID和DBID,删除AWR快照:

begin dbms_workload_repository.drop_snapshot_range( low_snap_id => 9, high_snap_id => 215, dbid => 1632800928);
end;
/

oracle system和sysaux表空间清理和回收相关推荐

  1. sysaux表空间清理

    Sysaux表空间是system表空间的辅助表空间,他主要存放awr快照,审计信息等信息,默认情况下,sysaux表空间在日常使用的过程中会越来越大使用量,那么怎么才能安全有效的清理sysaux表空间 ...

  2. oracle数据库sysaux表空间,如何管理oracle数据库的SYSAUX表空间

    关闭不必要的审计,aud$. 移动到别的表空间,一些审计登录审计可以关闭,我个人建立登录审计,仅仅审计不成功的登录. 我以前笔记: NOAUDIT CREATE SESSION WHENEVER SU ...

  3. 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 ...

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

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

  5. oracle sysaux扩大,oracle 10g SYSAUX表空间快速增长之WRH$_SQL_PLAN篇

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

  6. Oracle bigfile 大文件表空间会影响rman等备份效率

    Database 是由一个或多个被称为表空间(tablespace)的逻辑存储单位构成.表空间内的逻辑存储单位为段(segment),段又可以继续划分为数据扩展(extent).而数据扩展是由一组连续 ...

  7. oracle测试环境表空间清理

    测试场景下,使用的oralce遇到表空间的占用超大,可以采用如下的方式进行空间的清理 首先使用sqlplus连接数据库 sqlplus sys/password@orcl as sysdba 之类进行 ...

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

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

  9. oracle之 SYSAUX表空间维护

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

最新文章

  1. 谷歌官方TensorFlow开发者认证来了,吴恩达:学我的课,报名费五折
  2. python 使用yield进行数据的流式处理
  3. Python 面向对象 —— super 的使用(Python 2.x vs Python 3.x)
  4. 认证模式之Basic模式
  5. 开发工作和测试工作不能由同一部分人来完成。如果开发人员对程序的功能要求理解错了,就很容易按照错误的思路来设计测试用例。如果开发人员同时完成测试工作,那么测试工作就很难取得成功。
  6. mysql ddl dql_mysql DDL、DML、DCL、DQL区分
  7. javascript数组扁平化处理
  8. mysql error1045 yes,MySQLERROR1045(28000)错误的解决办法
  9. 外媒:苹果明年上半年推出iPhone SE 3 支持5G搭载A14处理器
  10. zabbix_server执行window脚本出现中文乱码如何解决
  11. centos7 安装git_在PHP7.4里配置,源码安装swoole4.x,把swoole用起来
  12. 组成原理说明------地址对齐
  13. 学术论文海报模板_推荐 | 绘制学术论文中的图表一般有哪些专业的软件?
  14. 【数值计算之二】数值积分之牛顿——科斯特公式:梯形、辛普森、辛普森3/8和布尔 高斯积分公式:勒让德、切比雪夫、拉盖尔和埃尔米特
  15. 随机抽样、分层抽样、整群抽样、系统抽样的区别
  16. 自然语言处理系列之:中文分词技术
  17. 达梦常见故障模拟与恢复
  18. SitePoint播客#87:MeltSheep和FireRock
  19. 利用Cloudflare Workers部署臭鼬在线接头霸王项目实例
  20. C++课程设计快递业务管理系统实验报告

热门文章

  1. 查看tomcat启动日志
  2. 自动挡车辆起步停车,档位操作技巧,实录详解
  3. 旧笔记本改造数码相框
  4. 引气管理计算机失效,A320飞机解码排故应用之发动机引气失效
  5. 地理空间距离计算及优化(根据两个点经纬度计算距离)
  6. python exe程序注册为window系统服务
  7. 2023泰迪杯数据挖掘赛B题完整成品讲解
  8. 进程地址空间 - 地址空间布局
  9. 阿里CEO逍遥子:学会“用人做事”,而不是“做事用人”
  10. GBASE 8s 安装指导