As you know, AWR snapshots are stored in the SYSAUX tablespace by default, and until version 19c, it was not possible to store them in a separate tablespace. This capability was introduced in version 19c with the addition of the TABLESPACE_NAME parameter to the procedure dbms_workload_repository.modify_snapshot_settings.
Details of the modify_snapshot_settings procedure in 19c:
Connected to Oracle Database 19c Enterprise Edition Release 19.0.0.0.0
SQL> desc dbms_workload_repository.modify_snapshot_settings
Parameter Type Mode Default?
--------------- -------- ---- --------
RETENTION NUMBER IN Y
INTERVAL NUMBER IN Y
TOPNSQL NUMBER IN Y
DBID NUMBER IN Y
TABLESPACE_NAME VARCHAR2 IN Y
RETENTION NUMBER IN Y
INTERVAL NUMBER IN Y
TOPNSQL VARCHAR2 IN
DBID NUMBER IN Y
TABLESPACE_NAME VARCHAR2 IN Y
Viewing the AWR control view in 21c:
In Oracle 21c, the column TABLESPACE_NAME was added to the view awr_pdb_wr_control, which allows us to identify the current tablespace used by AWR snapshots:
SQL*Plus: Release 21.0.0.0.0 - Production on Thu Apr 4 11:55:04 2024
SQL> desc awr_pdb_wr_control
Name Null? Type
----------------------------------------- -------- ----------------------------
DBID NOT NULL NUMBER
SNAP_INTERVAL NOT NULL INTERVAL DAY(5) TO SECOND(1)
RETENTION NOT NULL INTERVAL DAY(5) TO SECOND(1)
TOPNSQL VARCHAR2(10)
CON_ID NUMBER
SRC_DBID NUMBER
SRC_DBNAME VARCHAR2(128)
TABLESPACE_NAME VARCHAR2(128)
SQL> select TABLESPACE_NAME from awr_pdb_wr_control;
TABLESPACE_NAME
----------------------
SYSAUX
Creating a new tablespace and setting it for AWR snapshots:
SQL> create tablespace awrtbs;
Tablespace created.
SQL> exec dbms_workload_repository.modify_snapshot_settings(tablespace_name => 'AWRTBS');
PL/SQL procedure successfully completed.
After creating a snapshot, you will see many segments created in the new tablespace:
SQL> exec dbms_workload_repository.create_snapshot();
PL/SQL procedure successfully completed.
SQL> select count(*) from dba_segments where tablespace_name='AWRTBS';
COUNT(*)
----------
118
select segment_name from dba_segments where tablespace_name='AWRTBS';
WRH$_SHARED_POOL_ADVICE
WRH$_SQL_WORKAREA_HISTOGRAM
WRH$_PGA_TARGET_ADVICE
WRH$_INSTANCE_RECOVERY
WRH$_SYSSTAT
WRH$_UNDOSTAT
WRH$_PROCESS_MEMORY_SUMMARY
…
Top comments (0)
Some comments may only be visible to logged-in visitors. Sign in to view all comments.