In Oracle Restart, there are two confusing
commands for setting up restart
behavior: SRVCTL and CRSCTL.
Management policy for the database. If the management policy is set to AUTOMATIC (the default), the database is automatically restored to its previous running condition (started or stopped) upon restart of the database host computer. If the management policy is set to MANUAL, the database is never automatically restarted upon restart of the database host computer. A MANUAL setting does not prevent Oracle Restart from monitoring the database while it is running and restarting it if a failure occurs.
The following link lists SRVCTL options:
(The -unsupported syntax is needed for Oracle 12c.)
AUTO_START Indicates whether Oracle Clusterware automatically starts a resource after a cluster server restart.
Valid AUTO_START values are:
- always: Restarts the resource when the server restarts, regardless of the state of the resource when the server stopped.
- restore: Restores the resource to the same state that it was in when the server stopped. Oracle Clusterware attempts to restart the resource if the value of TARGET was ONLINE before the server stopped.
- never: Oracle Clusterware never restarts the resource, regardless of the state of the resource when the server stopped.
SRVCTL parameter for database: Management policy = AUTOMATIC is equivalent to CRSCTL parameter for resource: AUTO_START=restore
So, what happens when the database management policy is configured as AUTOMATIC, and the resource of the database parameter AUTO_START is configured as always?
Because the cluster is the first in the chain of commands, it overrides the database, and the cluster will restore its last state. For example: If we shut down the database and then reboot the operating system, the database will not automatically start.