…sau la ce poți folosi tool-ul Automatic Diagnostic Repository Command Interpreter. Pentru cei care nu au folosit acest tool, menționez ca a apărut o data cu versiunea 11g R1 cu scopul de a simplifica următoarele taskuri:
– vizualizarea alertlog-ului și incidentelor
– generarea pachetelor zip pentru a fi trimise către suportul Oracle
– managementul fișierelor trace
Prin acest articol doresc să fac un rezumat al comenzile esențiale, pe care un DBA trebuie să le știe, în scopul de a folosi adrci.
1. Vizualizarea alertlog-ului
Executabilul poate fi apelat din directorul $ORACLE_HOME\bin
>adrci ADRCI: Release 11.1.0.7.0 - Production on Tue Sep 18 11:20:34 2012 Copyright (c) 1982, 2007, Oracle. All rights reserved. ADR base = "f:\oracle" adrci>
In funcție de infrastructura, puteți avea mai multe adrese ADR Home.
adrci> show home ADR Homes: diag\clients\user_system\host_2488280724_11 diag\clients\user_unknown\host_2488280724_11 diag\clients\user_unknown\host_3642107604_11 diag\rdbms\prod\prod diag\tnslsnr\listener
Pentru a verifica alertlog-ul, setăm mai întâi home-ul bazei de date și folosim comanda show alert cu opțiunea -tail -f
adrci> set home diag\rdbms\prod\prod adrci> show alert -tail -f 2012-09-18 01:00:13.840000 +03:00 Current log# 3 seq# 18660 mem# 0: F:\ORACLE\ORADATA\PROD\REDO03A.LOG Current log# 3 seq# 18660 mem# 1: F:\ORACLE\ORADATA\PROD\REDO03B.LOG Thread 1 advanced to log sequence 18661 (LGWR switch) Current log# 4 seq# 18661 mem# 0: F:\ORACLE\ORADATA\PROD\REDO04A.LOG Current log# 4 seq# 18661 mem# 1: F:\ORACLE\ORADATA\PROD\REDO04B.LOG 2012-09-18 01:00:14.996000 +03:00 LNS: Standby redo logfile selected for thread 1 sequence 18661 for destination LOG_ARCHIVE_DEST_2 2012-09-18 02:00:00.099000 +03:00 Clearing Resource Manager plan via parameter 2012-09-18 05:00:14.157000 +03:00 Thread 1 advanced to log sequence 18662 (LGWR switch) Current log# 1 seq# 18662 mem# 0: F:\ORACLE\ORADATA\PROD\REDO01A.LOG Current log# 1 seq# 18662 mem# 1: F:\ORACLE\ORADATA\PROD\REDO01B.LOG LNS: Standby redo logfile selected for thread 1 sequence 18662 for destination LOG_ARCHIVE_DEST_2 2012-09-18 10:38:53.486000 +03:00 Thread 1 advanced to log sequence 18663 (LGWR switch) Current log# 2 seq# 18663 mem# 0: F:\ORACLE\ORADATA\PROD\REDO02A.LOG Current log# 2 seq# 18663 mem# 1: F:\ORACLE\ORADATA\PROD\REDO02B.LOG 2012-09-18 10:38:55.267000 +03:00 LNS: Standby redo logfile selected for thread 1 sequence 18663 for destination LOG_ARCHIVE_DEST_2
2. Legătura problemelor și a incidentelor
Un incident este apariția concretă a unei probleme dar o problema poate avea mai multe incidente.
Pentru a vizualiza legătura dintre probleme și incidente urmăriți exemplul de mai jos:
adrci> show problem ADR Home = f:\oracle\diag\rdbms\prod\prod: ************************************************************************* PROBLEM_ID PROBLEM_KEY LAST_INCIDENT -------------------- ----------------------------------------------------------- ---------------- 19 ORA 7445 [opiexe()+21950] 866138 adrci> show incident ADR Home = f:\oracle\diag\rdbms\prod\prod: ************************************************************************* INCIDENT_ID PROBLEM_KEY CREATE_TIME -------------------- ----------------------------------------------------------- ---------------- 866138 ORA 7445 [opiexe()+21950] 2012-08-07 12:30 adrci> show incident -mode detail -p "incident_id=866138" ADR Home = f:\oracle\diag\rdbms\prod\prod: ************************************************************************* ********************************************************** INCIDENT INFO RECORD 1 ********************************************************** INCIDENT_ID 866138 STATUS ready CREATE_TIME 2012-08-07 12:30:14.697000 +03:00 PROBLEM_ID 19 CLOSE_TIME FLOOD_CONTROLLED none ERROR_FACILITY ORA ERROR_NUMBER 7445 ERROR_ARG1 opiexe()+21950 ERROR_ARG2 ACCESS_VIOLATION ERROR_ARG3 ADDR:0x58 ERROR_ARG4 PC:0x2965A2C ERROR_ARG5 UNABLE_TO_READ ERROR_ARG6 ERROR_ARG7 ERROR_ARG8 SIGNALLING_COMPONENT SIGNALLING_SUBCOMPONENT SUSPECT_COMPONENT SUSPECT_SUBCOMPONENT ECID IMPACTS 0 PROBLEM_KEY ORA 7445 [opiexe()+21950] FIRST_INCIDENT 720831 FIRSTINC_TIME 2012-01-03 23:17:27.448000 +02:00 LAST_INCIDENT 866138 LASTINC_TIME 2012-08-07 12:30:14.697000 +03:00 IMPACT1 0 IMPACT2 0 IMPACT3 0 IMPACT4 0 KEY_NAME SID KEY_VALUE 1384.34804 KEY_NAME Client ProcId KEY_VALUE ORACLE.EXE.4036_6004 KEY_NAME ProcId KEY_VALUE 254.209 OWNER_ID 1 INCIDENT_FILE f:\oracle\diag\rdbms\prod\prod\trace\prod_ora_6004.trc OWNER_ID 1 INCIDENT_FILE f:\oracle\diag\rdbms\prod\prod\incident\incdir_866138\prod_ora_6004_i866138.trc 1 rows fetched adrci>
Daca vrem sa verificam fișierul trace:
adrci> show trace f:\oracle\diag\rdbms\prod\prod\incident\incdir_866138\prod_ora_6004_i866138.trc
3. Crearea fișierelor pachet pentru a fi trimise către Oracle Suport
Dacă nu putem să rezolve singuri o problema atunci o putem trimite către Oracle Suport. Pentru acest lucru adunam toate informațiile necesare cu o metoda numita „Incident Packaging Service” (IPS):
adrci> ips create package problem 19 correlate all Created package 4 based on problem id 19, correlation level all adrci> ips generate package 2 in "f:\oracle" Generated package 4 in file f:\oracle\ORA7445qc_20120918.zip, mode complete
4. Managementul Fișierelor trace
Probabil ca ați observat ca Oracle 11g generează o grămadă de fișiere trace, care trebuie curățate din când în când.
De fapt ele sunt curățate automat conform politicii implicite de curățare, dar dacă dorim sa modificam aceasta politica vom proceda în următorul mod
adrci> show tracefile -rt 23-JUN-12 10:21:34 diag\rdbms\prod\prod\incident\incdir_816660\prod_j002_4952_i816660.trc 23-JUN-12 06:36:25 diag\rdbms\prod\prod\incident\incdir_816836\prod_j004_4024_i816836.trc 20-JUN-12 22:21:05 diag\rdbms\prod\prod\incident\incdir_816740\prod_j002_2320_i816740.trc 20-JUN-12 14:05:26 diag\rdbms\prod\prod\incident\incdir_817892\prod_ora_4112_i817892.trc 20-JUN-12 13:55:40 diag\rdbms\prod\prod\incident\incdir_817924\prod_ora_2572_i817924.trc 20-JUN-12 12:11:37 diag\rdbms\prod\prod\incident\incdir_817684\prod_ora_880_i817684.trc 30-MAR-12 20:17:54 diag\rdbms\prod\prod\incident\incdir_768739\prod_ora_4812_i768739.trc 15-FEB-12 16:48:17 diag\rdbms\prod\prod\incident\incdir_739792\prod_ora_3640_i739792.trc 15-FEB-12 16:32:11 diag\rdbms\prod\prod\incident\incdir_737168\prod_ora_4792_i737168.trc 18-JAN-12 17:03:34 diag\rdbms\prod\prod\incident\incdir_737632\prod_ora_1680_i737632.trc 04-JAN-12 00:17:58 diag\rdbms\prod\prod\incident\incdir_720831\prod_ora_5032_i720831.trc 17-DEC-11 07:22:04 diag\rdbms\prod\prod\incident\incdir_704752\prod_j002_1812_i704752.trc 17-DEC-11 07:22:04 diag\rdbms\prod\prod\incident\incdir_704752\prod_m001_4880_i704752_a.tr 29-NOV-11 23:01:16 diag\rdbms\prod\prod\incident\incdir_704917\prod_j002_3476_i704917.trc 29-NOV-11 23:00:34 diag\rdbms\prod\prod\incident\incdir_704916\prod_j002_3476_i704916.trc 28-NOV-11 23:01:32 diag\rdbms\prod\prod\incident\incdir_704897\prod_j000_5640_i704897.trc 28-NOV-11 23:00:36 diag\rdbms\prod\prod\incident\incdir_704896\prod_j000_5640_i704896.trc 27-NOV-11 07:00:32 diag\rdbms\prod\prod\incident\incdir_704553\prod_j005_3708_i704553.trc 27-NOV-11 07:00:10 diag\rdbms\prod\prod\incident\incdir_704552\prod_j005_3708_i704552.trc adrci> show control ADR Home = f:\oracle\diag\rdbms\prod\prod: ************************************************************************* ADRID SHORTP_POLICY LONGP_POLICY LAST_MOD_TIME LAST_AUTOPRG_TIME LAST_MANUPRG_TIME ----------------- -------------------- -------------- ------------------------------- ------------------------------------ ----- 699077231 720 8760 2010-04-28 19:25:52.435000 +03:00 2012-09-15 03:11:57.485000 +03:00 1 rows fetched
In mod implicit fișierele trace se vor șterge după 30 de zile (720 de ore) iar incidentele după un an (8760 de ore). Vom modifica această politică după cum urmează:
adrci> set control (SHORTP_POLICY = 180) adrci> set control (LONGP_POLICY = 1460)
Dacă dorim să ștergem manual fisierele trace mai vechi de o zi (1440 de minute) atunci executam:
adrci> purge -age 1440 -type trace
Pentru mai multe informații despre acest tool consultați manualul:
http://docs.oracle.com/cd/B28359_01/server.111/b28319/adrci.htm