AWR Objects |
Source |
{ORACLE_HOME}/rdbms/admin/dbmsawr.sql |
First Availability |
10.1 |
Background Process |
MMON - Automatic data purging every 7 days by default |
Constants |
Name |
Retention |
Data Type |
Value |
MAX_INTERVAL |
100 years |
NUMBER |
52560000 |
MIN_INTERVAL |
10 minutes |
NUMBER |
10 |
MAX_RETENTION |
100 years |
NUMBER |
52560000 |
MIN_RETENTION |
1 day |
NUMBER |
1440 |
|
Data Types |
AWRRPT_TEXT_TYPE AWRRPT_HTML_TYPE AWRRPT_TEXT_TYPE_TABLE AWRRPT_HTML_TYPE_TABLE SYS AWRRPT_ROW_TYPE |
Dependencies |
dba_hist_baseline |
dba_hist_snapshot |
- |
- |
awrrpt_html_type |
plitblm |
awrrpt_html_type_table |
wrm$_baseline |
awrrpt_text_type |
wrm$_snapshot |
awrrpt_type_table |
wrm$_snap_error |
dbms_swrf_lib |
wrm$_wr_control |
dbms_swrf_report_internal |
|
|
File that create the AWR schema |
{ORACLE_HOME}/rdbms/admin/catawr.sql {ORACLE_HOME}/rdbms/admin/catawrpd.sql {ORACLE_HOME}/rdbms/admin/catawrtb.sql {ORACLE_HOME}/rdbms/admin/catawrwv.sql -- must be run as SYSDBA |
|
ADD_COLORED_SQL (new 11g) |
Routine to add a colored SQL ID. If an SQL ID is colored, it will always be captured in every snapshot, independent of its level of activities (i.e. does not have to be a TOP SQL). Capturing will occur if the SQL is found in the cursor cache at snapshot time. |
dbms_workload_repository.add_colored_sql( sql_id IN VARCHAR2, dbid IN NUMBER DEFAULT NULL); |
desc wrm$_colored_sql SELECT * FROM wrm$_colored_sql; SELECT dbid FROM gv$database; SELECT sql_id FROM gv$sql WHERE rownum < 101; exec dbms_workload_repository.add_colored_sql('5rygsj4dbw6jt', 1692970157); SELECT * FROM wrm$_colored_sql; |
|
ASH_REPORT_HTML (new 11g) |
Display the ASH report in HTML |
dbms_workload_repository.ash_report_html( l_dbid IN NUMBER, l_inst_num IN NUMBER, l_btime IN DATE, l_etime IN DATE, l_options IN NUMBER DEFAULT 0, l_slot_width IN NUMBER DEFAULT 0, l_sid IN NUMBER DEFAULT NULL, l_sql_id IN VARCHAR2 DEFAULT NULL, l_wait_class IN VARCHAR2 DEFAULT NULL, l_service_hash IN NUMBER DEFAULT NULL, l_module IN VARCHAR2 DEFAULT NULL, l_action IN VARCHAR2 DEFAULT NULL, l_client_id IN VARCHAR2 DEFAULT NULL, l_plsql_entry IN VARCHAR2 DEFAULT NULL) RETURN awrrpt_html_type_table PIPELINED; |
SELECT dbid FROM gv$database; SELECT inst_id FROM gv$instance; SELECT sample_time FROM gv$active_session_history ORDER BY 1; set pagesize 0 set linesize 121 spool c:\temp\ash_rpt.html SELECT * FROM TABLE(dbms_workload_repository.ash_report_html(1692970157, 1, SYSDATE-30/1440, SYSDATE-1/1440)); spool off |
Alternative ASH HTML Report |
define report_type = 'html'; define begin_time = '-30' define duration = ''; define report_name = 'c:\temp\ashrpt.html'; @?/rdbms/admin/ashrpt |
Alternative ASH HTML Report |
define report_type = 'html'; define begin_time = '-30' define duration = ''; define report_name = 'c:\temp\ashrpt.html'; @?/rdbms/admin/ashrpti |
|
ASH_REPORT_TEXT (new 11g) |
Display the ASH report in TEXT |
dbms_workload_repository.ash_report_text( l_dbid IN NUMBER, l_inst_num IN NUMBER, l_btime IN DATE, l_etime IN DATE, l_options IN NUMBER DEFAULT 0, l_slot_width IN NUMBER DEFAULT 0, l_sid IN NUMBER DEFAULT NULL, l_sql_id IN VARCHAR2 DEFAULT NULL, l_wait_class IN VARCHAR2 DEFAULT NULL, l_service_hash IN NUMBER DEFAULT NULL, l_module IN VARCHAR2 DEFAULT NULL, l_action IN VARCHAR2 DEFAULT NULL, l_client_id IN VARCHAR2 DEFAULT NULL, l_plsql_entry IN VARCHAR2 DEFAULT NULL) RETURN awrrpt_text_type_table PIPELINED; |
SELECT dbid FROM gv$database; SELECT inst_id FROM gv$instance; SELECT sample_time FROM gv$active_session_history ORDER BY 1; set pagesize 0 set linesize 121 spool c:\temp\ash_rpt.html SELECT * FROM TABLE(dbms_workload_repository.ash_report_text(1692970157, 1, SYSDATE-30/1440, SYSDATE-1/1440)); spool off |
Alternative ASH Text Report |
define report_type = 'text'; define begin_time = '-30' define duration = ''; define report_name = 'c:\temp\ashrpt.txt'; @?/rdbms/admin/ashrpt |
Alternative ASH Text Report |
define report_type = 'text'; define begin_time = '-30' define duration = ''; define report_name = 'c:\temp\ashrpt.txt'; @?/rdbms/admin/ashrpti |
|
AWR_DIFF_REPORT_HTML (new 11g) |
This table function displays the AWR Compare Periods Report in HTML format. The output is one column of VARCHAR2(5000). |
dbms_workload_repository.awr_diff_report_html( dbid1 IN NUMBER, inst_num1 IN NUMBER, bid1 IN NUMBER, eid1 IN NUMBER, dbid2 IN NUMBER, inst_num2 IN NUMBER, bid2 IN NUMBER, eid2 IN NUMBER) RETURN awrrpt_html_type_table PIPELINED; |
TBD |
|
AWR_DIFF_REPORT_TEXT (new 11g) |
This table function displays the AWR Compare Periods Report in TEXT format. The output is one column of VARCHAR2(240). |
dbms_workload_repository.awr_diff_report_text( awr_diff_report_text(dbid1 IN NUMBER, inst_num1 IN NUMBER, bid1 IN NUMBER, eid1 IN NUMBER, dbid2 IN NUMBER, inst_num2 IN NUMBER, bid2 IN NUMBER, eid2 IN NUMBER) RETURN awrdrpt_text_type_table PIPELINED; |
TBD |
|
AWR_REPORT_HTML |
Display the AWR report in HTML |
dbms_workload_repository.awr_report_html( l_dbid IN NUMBER, l_inst_num IN NUMBER, l_bid IN NUMBER, l_eid IN NUMBER, l_options IN NUMBER DEFAULT 0) RETURN awrrpt_text_type_table PIPELINED; awrrpt_text_type_table is VARCHAR2(150) |
See AWR Report demo linked at the bottom of the page |
|
AWR_REPORT_TEXT |
Display the AWR report in ASCII text |
dbms_workload_repository.awr_report_text( l_dbid IN NUMBER, l_inst_num IN NUMBER, l_bid IN NUMBER, l_eid IN NUMBER, l_options IN NUMBER DEFAULT 0) RETURN awrrpt_text_type_table PIPELINED; awrrpt_text_type_table is VARCHAR2(80) |
See AWR Report demo linked at the bottom of the page |
|
AWR_SQL_REPORT_HTML (new 11g) |
Display the AWR SQL report in HTML |
dbms_workload_repository.awr_sql_report_html( l_dbid IN NUMBER, l_inst_num IN NUMBER, l_bid IN NUMBER, l_eid IN NUMBER, l_sqlid IN VARCHAR2, l_options IN NUMBER DEFAULT 0) RETURN awrrpt_html_type_table PIPELINED; |
SELECT dbid FROM gv$database; SELECT inst_id FROM gv$instance; set pagesize 0 set linesize 121 col instart_fmt noprint; col inst_name format a12 heading 'Instance'; col db_name format a12 heading 'DB Name'; col snap_id format 99999990 heading 'Snap Id'; col snapdat format a18 heading 'Snap Started' just c; col lvl format 99 heading 'Snap|Level'; set heading on; break on inst_name on db_name on host on instart_fmt skip 1; ttitle off; SELECT TO_CHAR(s.startup_time,' DD MON "at" HH24:MI:SS') INSTART_FMT, di.instance_name INST_NAME, di.db_name DB_NAME, s.snap_id SNAP_ID, TO_CHAR(s.end_interval_time,'DD MON YYYY HH24:MI') SNAPDAT, s.snap_level LVL FROM dba_hist_snapshot s, dba_hist_database_instance di WHERE di.dbid = s.dbid AND di.instance_number = s.instance_number AND di.startup_time = s.startup_time ORDER BY snap_id; SELECT sql_id FROM gv$active_session_history WHERE TRUNC(sql_exec_start) = TRUNC(SYSDATE); spool c:\temp\awr_sql_rpt.html SELECT * FROM TABLE(dbms_workload_repository.awr_sql_report_html(1692970157, 1, 1230, 1231, 'a01hp0psv0rrh')); spool off |
|
AWR_SQL_REPORT_TEXT (new 11g) |
Display the AWR SQL report in TEXT |
dbms_workload_repository.awr_sql_report_text( l_dbid IN NUMBER, l_inst_num IN NUMBER, l_bid IN NUMBER, l_eid IN NUMBER, l_sqlid IN VARCHAR2, l_options IN NUMBER DEFAULT 0) RETURN awrsqrpt_text_type_table PIPELINED; |
SELECT dbid FROM gv$database; SELECT inst_id FROM gv$instance; set pagesize 0 set linesize 121 col instart_fmt noprint; col inst_name format a12 heading 'Instance'; col db_name format a12 heading 'DB Name'; col snap_id format 99999990 heading 'Snap Id'; col snapdat format a18 heading 'Snap Started' just c; col lvl format 99 heading 'Snap|Level'; set heading on; break on inst_name on db_name on host on instart_fmt skip 1; ttitle off; SELECT TO_CHAR(s.startup_time,' DD MON "at" HH24:MI:SS') INSTART_FMT, di.instance_name INST_NAME, di.db_name DB_NAME, s.snap_id SNAP_ID, TO_CHAR(s.end_interval_time,'DD MON YYYY HH24:MI') SNAPDAT, s.snap_level LVL FROM dba_hist_snapshot s, dba_hist_database_instance di WHERE di.dbid = s.dbid AND di.instance_number = s.instance_number AND di.startup_time = s.startup_time ORDER BY snap_id; SELECT sql_id FROM gv$active_session_history WHERE TRUNC(sql_exec_start) = TRUNC(SYSDATE); spool c:\temp\awr_sql_rpt.txt SELECT * FROM TABLE(dbms_workload_repository.awr_sql_report_text(1692970157, 1, 1230, 1231, 'a01hp0psv0rrh')); spool off |
|
CREATE_BASELINE (new 11g parameter) |
Creates a baseline returns the baseline_id Overload 1 |
dbms_workload_repository.create_baseline( start_snap_id IN NUMBER, end_snap_id IN NUMBER, baseline_name IN VARCHAR2, dbid IN NUMBER DEFAULT NULL, expiration IN NUMBER DEFAULT NULL) RETURN NUMBER; |
SELECT dbid FROM gv$database; set linesize 121 col startup_time format a40 SELECT snap_id, startup_time FROM dba_hist_snapshot ORDER BY 1,2; SELECT baseline_name, dbid FROM dba_hist_baseline; set serveroutput on DECLARE i dba_hist_baseline.baseline_id%TYPE; BEGIN i := dbms_workload_repository.create_baseline(1199, 1207, 'UW_BASE', 1692970157); dbms_output.put_line(TO_CHAR(i)); END; / SELECT baseline_id, baseline_name FROM dba_hist_baseline; |
Overload 2 |
dbms_workload_repository.create_baseline( start_snap_id IN NUMBER, end_snap_id IN NUMBER, baseline_name IN VARCHAR2, dbid IN NUMBER DEFAULT NULL expiration IN NUMBER DEFAULT NULL); |
SELECT dbid FROM gv$database; SELECT snap_id, startup_time FROM dba_hist_snapshot ORDER BY 1,2; SELECT baseline_name, dbid FROM dba_hist_baseline; exec dbms_workload_repository.create_baseline(1199, 1207, 'UW_BASE', 1692970157); SELECT baseline_name, dbid FROM dba_hist_baseline; |
|
CREATE_BASELINE_TEMPLATE (new 11g) |
Creates a Baseline Template for a single time period. There will be a MMON task that will use these inputs to create a Baseline for the time period when the time comes. Overload 1 |
dbms_workload_repository.create_baseline_template( start_time IN DATE, end_time IN DATE, baseline_name IN VARCHAR2, template_name IN VARCHAR2, expiration IN NUMBER DEFAULT NULL, dbid IN NUMBER DEFAULT NULL); |
desc dba_hist_baseline_template SELECT dbid, template_id, template_name, template_type FROM dba_hist_baseline_template; SELECT baseline_name, dbid FROM dba_hist_baseline; exec dbms_workload_repository.create_baseline_template(SYSDATE+1/1440, SYSDATE+5/1440, 'UW_BASE2', 'UW_TEMPLATE', 1); SELECT dbid, template_id, template_name, template_type FROM dba_hist_baseline_template; |
Overload 2 |
dbms_workload_repository.create_baseline_template( day_of_week IN VARCHAR2, hour_in_day IN NUMBER, duration IN NUMBER, start_time IN DATE, end_time IN DATE, baseline_name_prefix IN VARCHAR2, template_name IN VARCHAR2, expiration IN NUMBER DEFAULT 35, dbid IN NUMBER DEFAULT NULL); |
TBD |
|
CREATE_SNAPSHOT |
Create snapshot and return snapshot ID Overload 1 |
dbms_workload_repository.create_snapshot( flush_level IN VARCHAR2 DEFAULT 'TYPICAL') RETURN NUMBER;
|
set linesize 121 col begin_interval_time format a30 col end_interval_time format a30 SELECT snap_id, startup_time, begin_interval_time, end_interval_time FROM dba_hist_snapshot ORDER BY 1,2; set serveroutput on DECLARE i dba_hist_snapshot.snap_id%TYPE; BEGIN i := dbms_workload_repository.create_snapshot; dbms_output.put_line(TO_CHAR(i)); END; / SELECT snap_id, startup_time, begin_interval_time, end_interval_time FROM dba_hist_snapshot ORDER BY 1,2; |
Overload 2 |
dbms_workload_repository.create_snapshot( flush_level IN VARCHAR2 DEFAULT 'TYPICAL');
|
set linesize 121 col begin_interval_time format a30 col end_interval_time format a30 SELECT snap_id, startup_time, begin_interval_time, end_interval_time FROM dba_hist_snapshot ORDER BY 1,2; exec dbms_workload_repository.create_snapshot; SELECT snap_id, startup_time, begin_interval_time, end_interval_time FROM dba_hist_snapshot ORDER BY 1,2; |
|
DROP_BASELINE |
Drop a baseline |
dbms_workload_repository.drop_baseline( baseline_name IN VARCHAR2, cascade IN BOOLEAN DEFAULT FALSE, dbid IN NUMBER DEFAULT NULL);
Cascade |
False |
Drop baseline but not snapshots |
True |
Drops baseline and snapshots |
|
SELECT baseline_name, dbid FROM dba_hist_baseline; exec dbms_workload_repository.drop_baseline('UW_BASE', FALSE, 1692970157); SELECT baseline_name, dbid FROM dba_hist_baseline; |
|
DROP_BASELINE_TEMPLATE (new 11g) |
Drops a Baseline Template |
dbms_workload_repository.drop_baseline_template( template_name IN VARCHAR2, dbid IN NUMBER DEFAULT NULL); |
SELECT dbid, template_id, template_name, template_type FROM dba_hist_baseline_template; exec dbms_workload_repository.drop_baseline_template('UW_TEMPLATE'); SELECT dbid, template_id, template_name, template_type FROM dba_hist_baseline_template; |
|
DROP_SNAPSHOT_RANGE |
Drop a range of snapshots |
dbms_workload_repository.drop_snapshot_Range( low_snap_id IN NUMBER, high_snap_id IN NUMBER dbid IN NUMBER DEFAULT NULL); |
set linesize 121 col startup_time format a40 SELECT snap_id, startup_time FROM dba_hist_snapshot ORDER BY 1,2; exec dbms_workload_repository.drop_snapshot_range(1105, 1199); SELECT snap_id, startup_time FROM dba_hist_snapshot ORDER BY 1,2; |
|
MODIFY_BASELINE_WINDOW_SIZE (new 11g) |
Modifies the window size for the default moving window baseline Installation default is 8 days |
dbms_workload_repository.modify_baseline_window_size( window_size IN NUMBER, dbid IN NUMBER DEFAULT NULL ); |
set linesize 121 col baseline_name format a30 SELECT dbid, baseline_name, baseline_type, moving_window_size FROM dba_hist_baseline; exec dbms_workload_repository.modify_baseline_window_size(5); SELECT dbid, baseline_name, baseline_type, moving_window_size FROM dba_hist_baseline; exec dbms_workload_repository.modify_baseline_window_size(8); |
|
MODIFY_SNAPSHOT_SETTINGS |
Modifies the interval between snapshots and/or the retention of snapshots in the repository Overload 1 |
dbms_workload_repository.modify_snapshot_settings( retention IN NUMBER DEFAULT NULL, interval IN NUMBER DEFAULT NULL, topnsql IN NUMBER DEFAULT NULL, dbid IN NUMBER DEFAULT NULL);
Defaults |
Retention |
7 days = 10080 minutes |
Interval |
60 minutes * |
* Reset to 15-30 min. maximum between snapshots
|
set linesize 121 col retention format a20 col snap_interval format a20 SELECT retention, snap_interval, topnsql FROM wrm$_wr_control; SELECT dbid FROM gv$database; exec dbms_workload_repository.modify_snapshot_settings(14400, 20, 1000, 1692970157); SELECT retention, snap_interval, topnsql FROM wrm$_wr_control; |
Overload 2 |
dbms_workload_repository.modify_snapshot_settings( retention IN NUMBER DEFAULT NULL, interval IN NUMBER DEFAULT NULL, topnsql IN VARCHAR2 DEFAULT NULL, dbid IN NUMBER DEFAULT NULL);
Defaults |
Retention |
7 days = 10080 minutes |
Interval |
60 minutes * |
* Reset to 15-30 min. maximum between snapshots
|
set linesize 121 col retention format a20 col snap_interval format a20 SELECT retention, snap_interval, topnsql FROM wrm$_wr_control; SELECT dbid FROM gv$database; exec dbms_workload_repository.modify_snapshot_settings(14400, 20, '1001', 1692970157); SELECT retention, snap_interval, topnsql FROM wrm$_wr_control; |
|
REMOVE_COLORED_SQL (new 11g) |
Routine to remove a colored SQL ID. If an SQL ID is colored, it will always be captured in every snapshot, independent of its level of activities (i.e. does not have to be a TOP SQL). |
dbms_workload_repository.remove_colored_sql( sql_id IN VARCHAR2, dbid IN NUMBER DEFAULT NULL ); |
desc wrm$_colored_sql SELECT * FROM wrm$_colored_sql; exec dbms_workload_repository.remove_colored_sql('5rygsj4dbw6jt', 1692970157); SELECT * FROM wrm$_colored_sql; |
|
RENAME_BASELINE (new 11g) |
Rename a baseline |
dbms_workload_repository.rename_baseline( old_baseline_name IN VARCHAR2, new_baseline_name IN VARCHAR2, dbid IN NUMBER DEFAULT NULL); |
SELECT dbid, baseline_name, baseline_type FROM dba_hist_baseline; exec dbms_workload_repository.rename_baseline('UW_BASE', 'UW_BASE2'); SELECT dbid, baseline_name, baseline_type FROM dba_hist_baseline; exec dbms_workload_repository.rename_baseline('UW_BASE', 'UW_BASE'); |
|
SELECT_BASELINE_DETAILS (new 11g) |
Display baseline statistics |
dbms_workload_repository.select_baseline_metrics( l_baseline_id IN NUMBER, l_beg_snap IN NUMBER DEFAULT NULL, l_end_snap IN NUMBER DEFAULT NULL, l_dbid IN NUMBER DEFAULT NULL) RETURN awrbl_details_type_table PIPELINED; |
SELECT dbid, baseline_id, baseline_name, baseline_type FROM dba_hist_baseline; set linesize 121 col start_snap_time format a30 col end_snap_time format a30 SELECT * FROM TABLE(dbms_workload_repository.select_baseline_details(1)); |
|
SELECT_BASELINE_METRIC (new 11g) |
Display metric stats for a baseline |
dbms_workload_repository.select_baseline_metric( l_baseline_name IN VARCHAR2, l_dbid IN NUMBER DEFAULT NULL, l_instance_num IN NUMBER DEFAULT NULL) RETURN awrbl_metric_type_table PIPELINED; |
SELECT dbid, baseline_id, baseline_name, baseline_type FROM dba_hist_baseline; set pagesize 0 set linesize 121 SELECT * FROM TABLE(dbms_workload_repository.select_baseline_metric(0)); |