Database and Listener startup checks

From Oracle FAQ
Jump to: navigation, search

The following procedure explains the process to check if your databases and listeners are up and running. It is important to have a procedure as DBA's frequently start the environment, just to later found that users were unable to work.

This procedure is applicable to all Unix and Linux Oracle installations, but can easily be modified for other platforms as well.

[edit] Steps

  • Find the databases that are supposed to be up and running from the /etc/oratab or /var/opt/oracle/oratab file. Look for entries that are suffixed by a "Y".
  • Check if the database background processes are up and running
$ ps -ef | grep smon
  • Change the environment and connect to each of these databases to ensure they are open
. oraenv
sqlplus username/password
  • Find all the listeners in the listener.ora file. This file is located in either /etc, /var/opt/oracle or $ORACLE HOME/network/admin directories
  • Make sure each of them is running (lsnrctl status LISTENER_NAME)
  • Connect to all databases via their listeners to ensure that the listeners are functioning (sqlplus username/passwprd@dbdescriptor). Connecting to the db via their listeners should be done from a node different than the one on which the listener is running to make 100% sure that there is remote connectivity.
  • Check the database alert log files: sometimes a database may be up and running, but the alert log reports critical errors.
  • Call users and get them to test the application.

[edit] Notes

  • Most machines only has one listener BUT, please do not accept that they all have only one listener. When in doubt please read the manuals or ask somebody.
  • It is also helpful to write some scripts to help you check that everything is up and running. Example scripts could be obtained from the scripts section of this web site.
  • Where applicable, other services like Web Servers, Names Servers, OID servers, and so forth must also be checked. If in doubt, get advice from an experienced DBA.