DBAtlas · Atlas d'exploitation des bases de données

Prendre un snapshot AWR et générer un rapport AWR entre deux snapshots

OraclePerformances

Commande

-- 1) Manual snapshot before and after the event (run in CDB root):
EXEC DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT;

-- 2) List snapshots:
SELECT snap_id,
       TO_CHAR(begin_interval_time,'YYYY-MM-DD HH24:MI') AS begin_time,
       TO_CHAR(end_interval_time,'YYYY-MM-DD HH24:MI')   AS end_time
FROM   dba_hist_snapshot
WHERE  dbid = (SELECT dbid FROM v$database)
ORDER  BY snap_id DESC
FETCH FIRST 24 ROWS ONLY;

-- 3a) Interactive report (prompts for HTML/TEXT and snapshot range):
-- @?/rdbms/admin/awrrpt.sql      (RAC: awrgrpt.sql, specific instance: awrrpti.sql)

-- 3b) TEXT report from a script:
SET LINESIZE 8000 PAGESIZE 0 TRIMSPOOL ON HEADING OFF FEEDBACK OFF
SPOOL /tmp/awr_<begin_snap>_<end_snap>.txt
SELECT output
FROM   TABLE(DBMS_WORKLOAD_REPOSITORY.AWR_REPORT_TEXT(
         l_dbid     => (SELECT dbid FROM v$database),
         l_inst_num => (SELECT instance_number FROM v$instance),
         l_bid      => <begin_snap>,
         l_eid      => <end_snap>));
SPOOL OFF
-- For HTML: DBMS_WORKLOAD_REPOSITORY.AWR_REPORT_HTML (same parameters)

Ce que fait la commande

Produit un rapport entre deux snapshots AWR couvrant la fenêtre du problème : profil de charge, principaux événements d'attente, principaux SQL et statistiques d'instance. La fonction table permet d'extraire le rapport depuis un script ou un job du scheduler.

Quand l'utiliser

Pour analyser un ralentissement sur une fenêtre de temps précise, comparer avant/après autour d'un test de charge ou d'un batch, et pour le reporting de capacité.

Attention

Exige la licence Diagnostics Pack (CONTROL_MANAGEMENT_PACK_ACCESS='DIAGNOSTIC' ou 'DIAGNOSTIC+TUNING') ; sans elle, mettez le paramètre à 'NONE' et utilisez Statspack. Un rapport ne peut pas couvrir un redémarrage d'instance. Les plages de plus d'une heure lissent les moyennes et masquent les pics courts ; gardez une fenêtre serrée.

Ouvrir dans DBAtlas →

Voir aussi