Thursday, November 19, 2015

Oracle ADRCI(Automatic Diagnostic Repository Command Interpreter)

9:27 PM Posted by Dilli Raj Maharjan No comments
 The ADR(Automatic Diagnostic Repository) is file based repository for database diagnostic data like trace files, alert log entries, incident and problem and more.
 ADRCI(Automatic Diagnostic Repository Command Interpreter) is a special command line utility to handle oracle errors and trace files. It is tool to manage diagnostic data collected. ADRCI was introduced from Oracle 11gR1. ADRCI can be used in interactive mode or within scripts. ADR data is secured at operating system level so does not requires any login.

 ADRCI has following features:

 1. View diagnostic data within the Automatic Diagnostic Repository (ADR)
 2. View Health Monitor reports.
 3. Package incident and problem information into a zip file for transmission to Oracle Support.

 Diagnostic data contains 

 1. Incident and problem descriptions
 2. Trace files
 3. Dumps
 4. Health monitor reports
 5. Alert log entries


ADR Home

An ADR Home is the root directory for all the diagnostic data.

ADR Base

ADR base is the directory that is set by oracle parameter DIAGNOSTIC_DEST.

Homepath

All ADRCI commands operate on diagnostic data in the "current" ADR homes.

Let create one incident.

Connect as user dilli, create table and find its object_id.


conn dilli

create table dlee (n number);

select object_id from user_objects where object_name='DLEE';



Now connect as user sys and update the number of column forcefully. Note: Never perform any DML on data dictionary.


connect / as sysdba

update tab$ set cols=2 where obj#=75782;

commit;

alter system flush shared_pool;



Now connect as user dilli and select the table. An error will be encountered and error ORA-03113: end-of-file on communication channel will be appeared.


conn dilli

select * from dlee;


Check alert log for the error.

adrci
show home
set home diag/rdbms/testdb/TESTDB
show alert -tail -f


CTRL+C to exit from the tail session. 

Now list the problems

show problem


List the incidents

show incident

Problem and Incident

An incident is occurrence of a problem. The same problem may have multiple incidents. 
Multiple occurrence of same problem creates multiple incident. If we execute any command 
against the corrupt table it will create multiple incident but the problem will remain same.




Get detail of particular Incident

show incident -mode detail -p "incident_id=10961"



Creation of Packages & ZIP files to send to Oracle Support

Now gather all the information using ips(Incident Packaging Service). First command below 
creates Logical Package to generate zip files execute second command.
ips create package problem 1 correlate all
ips generate package 1 in "/home/oracle" 




Now /home/oracle/ORA7445qc_20151119112533_COM_1.zip is ready to ship to oracle support.


List all the trace files and purge all trace files that are older than 2 days(2880 min)

show tracefile
purge -age 2880 -type trace





0 comments:

Post a Comment