Oerr is an Oracle utility that extracts error messages with suggested actions from the standard Oracle message files. This utility is very useful as it can extract OS-specific errors that are not in the generic Error Messages and Codes Manual.
Many Oracle products on UNIX have a utility called
OERR that can be used to aid error investigation. The
OERR utility is not documented so many new to Oracle on UNIX may not be aware of its existence.
OERR utility is a shell script that is located in the
OERR requires the
ORACLE_HOME to be set and two parameters when called: the facility which is the three to four letter code to the left of dash and the error number.
[oracle@prod ~]$ oerr Usage: oerr facility error Facility is identified by the prefix string in the error message. For example, if you get ORA-7300, "ora" is the facility and "7300" is the error. So you should type "oerr ora 7300". If you get LCD-111, type "oerr lcd 111", and so on. [oracle@prod ~]$
OERR will extract the error description, possible cause and action steps the message text files. Below are some examples.
[oracle@prod ~]$ oerr ora 3113 03113, 00000, "end-of-file on communication channel" // *Cause: The connection between Client and Server process was broken. // *Action: There was a communication error that requires further investigation. // First, check for network problems and review the SQL*Net setup. // Also, look in the alert.log file for any errors. Finally, test to // see whether the server process is dead and whether a trace file // was generated at failure time. [oracle@prod ~]$ [oracle@prod ~]$ oerr tns 03505 03505, 00000, "Failed to resolve name" // *Cause: The service name you provided could not be found in TNSNAMES.ORA, // an Oracle Names server, or a native naming service. // *Action: Verify that you entered the service name correctly. You may need // to ensure that the name was entered correctly into the network // configuration. [oracle@prod ~]$
In many cases the information provided by
OERR can set you down the correct path to problem resolution. Sometimes
OERR may not provide cause or action information.
[oracle@prod mesg]$ oerr ora 00576 00576, 00000, "in-band break protocol error" // *Cause: // *Action: [oracle@prod mesg]$
If you are unfamiliar with the error
OERR can provide a quick coming up to speed on identifying the problem to assist in resolution.