Configure your Oracle database with the Oracle Restart feature to automatically restart the database, the listener, and other Oracle components after a hardware or software failure or whenever your database host computer restarts.
This chapter contains:
This section contains:
Oracle Restart improves the availability of your Oracle database. When you install Oracle Restart, various Oracle components can be automatically restarted after a hardware or software failure or whenever your database host computer restarts. Table 4-1 lists these components.
Table 4-1 Oracle Components Automatically Restarted by Oracle Restart
Component | Notes |
---|---|
Database instance |
Oracle Restart can accommodate multiple databases on a single host computer. |
Oracle Net listener |
- |
Database services |
Does not include the default service created upon installation because it is automatically managed by Oracle Database, and does not include any default services created during database creation. |
Oracle Automatic Storage Management (Oracle ASM) instance |
- |
Oracle ASM disk groups |
Restarting a disk group means mounting it. |
Oracle Notification Services (ONS) |
In a standalone server environment, ONS can be used in Oracle Data Guard installations for automating failover of connections between primary and standby database through Fast Application Notification (FAN). ONS is a service for sending FAN events to integrated clients upon failover. |
Oracle Restart runs periodic check operations to monitor the health of these components. If a check operation fails for a component, the component is shut down and restarted.
Oracle Restart is used in standalone server (non-clustered) environments only. For Oracle Real Application Clusters (Oracle RAC) environments, the functionality to automatically restart components is provided by Oracle Clusterware.
Oracle Restart runs out of the Oracle Grid Infrastructure home, which you install separately from Oracle Database homes. See the Oracle Database Installation Guide for your platform for information about installing the Oracle Grid Infrastructure home.
See Also:
Oracle Automatic Storage Management Administrator's Guide for information about Oracle Automatic Storage Management
Oracle Restart ensures that Oracle components are started in the proper order, in accordance with component dependencies. For example, if database files are stored in Oracle ASM disk groups, then before starting the database instance, Oracle Restart ensures that the Oracle ASM instance is started and the required disk groups are mounted. Likewise, if a component must be shut down, Oracle Restart ensures that dependent components are cleanly shut down first.
Oracle Restart also manages the weak dependency between database instances and the Oracle Net listener (the listener): When a database instance is started, Oracle Restart attempts to start the listener. If the listener startup fails, then the database is still started. If the listener later fails, Oracle Restart does not shut down and restart any database instances.
Oracle Restart automatically restarts various Oracle components when required, and automatically stops Oracle components in an orderly fashion when you manually shut down your system. There may be times, however, when you want to manually start or stop individual Oracle components. Oracle Restart includes the Server Control (SRVCTL) utility that you use to manually start and stop Oracle Restart–managed components. When Oracle Restart is in use, Oracle strongly recommends that you use SRVCTL to manually start and stop components.
After you stop a component with SRVCTL, Oracle Restart does not automatically restart that component if a failure occurs. If you then start the component with SRVCTL, that component is again available for automatic restart.
Oracle utilities such as SQL*Plus, the Listener Control utility (LSNRCTL
), and ASMCMD
are integrated with Oracle Restart. If you shut down the database with SQL*Plus, Oracle Restart does not interpret this as a database failure and does not attempt to restart the database. Similarly, if you shut down the Oracle ASM instance with SQL*Plus or ASMCMD
, Oracle Restart does not attempt to restart it.
An important difference between starting a component with SRVCTL and starting it with SQL*Plus (or another utility) is the following:
When you start a component with SRVCTL, any components on which this component depends are automatically started first, and in the proper order.
When you start a component with SQL*Plus (or another utility), other components in the dependency chain are not automatically started; you must ensure that any components on which this component depends are started.
In addition, Oracle Restart enables you to start and stop all of the components managed by Oracle Restart in a specified Oracle home using a single command. The Oracle home can be an Oracle Database home or an Oracle Grid Infrastructure home. This capability is useful when you are installing a patch.
The CRSCTL utility starts and stops Oracle Restart. You can also use the CRSCTL utility to enable or disable Oracle high availability services. Oracle Restart uses Oracle high availability services to start and stop automatically the components managed by Oracle Restart. For example, Oracle high availability services daemons automatically start databases, listeners, and Oracle ASM instances. When Oracle high availability services are disabled, none of the components managed by Oracle Restart are started when a node is rebooted.
Typically, you use the CRSCTL utility when you must stop all of the running Oracle software in an Oracle installation. For example, you might need to stop Oracle Restart when you are installing a patch or performing operating system maintenance. When the maintenance is complete, you use the CRSCTL utility to start Oracle Restart.
See Also:
"Stopping and Restarting Oracle Restart for Maintenance Operations" for information about using the CRSCTL utilityOracle Restart maintains a list of all the Oracle components that it manages, and maintains configuration information for each component. All of this information is collectively known as the Oracle Restart configuration. When Oracle Restart starts a component, it starts the component according to the configuration information for that component. For example, the Oracle Restart configuration includes the location of the server parameter file (SPFILE) for databases, and the TCP port to listen on for listeners.
If you install Oracle Restart and then create your database with Database Configuration Assistant (DBCA), DBCA automatically adds the database to the Oracle Restart configuration. When DBCA then starts the database, the required dependencies between the database and other components (for example disk groups in which the database stores data) are established, and Oracle Restart begins to manage the database.
You can manually add and remove components from the Oracle Restart configuration with SRVCTL commands. For example, if you install Oracle Restart onto a host on which a database is already running, you can use SRVCTL to add that database to the Oracle Restart configuration. When you manually add a component to the Oracle Restart configuration and then start it with SRVCTL, Oracle Restart begins to manage the component, restarting it when required.
Note:
Adding a component to the Oracle Restart configuration is also referred to as "registering a component with Oracle Restart."Other SRVCTL commands enable you to view the status and configuration of Oracle Restart–managed components, temporarily disable and then reenable management for components, and more.
When Oracle Restart is installed, many operations that create Oracle components automatically add the components to the Oracle Restart configuration. Table 4-2 lists some create operations and whether the created component is automatically added.
Table 4-2 Create Operations and the Oracle Restart Configuration
Create Operation | Created Component Automatically Added to Oracle Restart Configuration? |
---|---|
Create a database with OUI or DBCA |
Yes |
Create a database with the |
No |
Create an Oracle ASM instance with OUI, DBCA, or ASMCA |
Yes |
Create a disk group (any method) |
Yes |
Add a listener with NETCA |
Yes |
Create a database service with SRVCTL |
Yes |
Create a database service by modifying the |
No |
Create a database service with |
No |
Create a standby database |
No |
Footnote 1 Not recommended when Oracle Restart is in use
Table 4-3 lists some delete/drop/remove operations and whether the deleted component is also automatically removed from the Oracle Restart configuration.
Table 4-3 Delete/Drop/Remove Operations and the Oracle Restart Configuration
Operation | Deleted Component Automatically Removed from Oracle Restart Configuration? |
---|---|
Delete a database with DBCA |
Yes |
Delete a database by removing database files with operating system commandsFoot 1 |
No |
Delete a listener with NETCA |
Yes |
Drop an Oracle ASM disk group (any method) |
Yes |
Delete a database service with SRVCTL |
Yes |
Delete a database service by any other means |
No |
Footnote 1 Not recommended
Oracle Restart is integrated with Oracle Data Guard (Data Guard) and the Oracle Data Guard Broker (the broker). When a database shutdown and restart is required in response to a role change request, Oracle Restart shuts down and restarts the database in an orderly fashion (taking dependencies into account), and according to the settings in the Oracle Restart configuration. Oracle Restart also ensures that, following a Data Guard role transition, all database services configured to run in the new database role are active and all services not configured to run in the new role are stopped.
In addition, the Oracle Restart configuration supports Data Guard–related configuration options for the following components:
Databases—When you add a database to the Oracle Restart configuration, you can specify the current Data Guard role for the database: PRIMARY
, PHYSICAL_STANDBY
, LOGICAL_STANDBY
, or SNAPSHOT_STANDBY
. If the role is later changed using the broker, Oracle Restart automatically updates the database configuration with the new role. If you change the database role without using the broker, you must manually modify the database's role in the Oracle Restart configuration to reflect the new role.
Database Services—When adding a database service to the Oracle Restart configuration, you can specify one or more Data Guard roles for the service. When this configuration option is present, upon database open Oracle Restart starts the service only if one of the service roles matches the current database role.
See Also:
In a standalone server environment, Oracle Restart uses Oracle Notification Services (ONS) and Oracle Advanced Queues to publish Fast Application Notification (FAN) high availability events. Integrated Oracle clients use FAN to provide fast notification to clients when the service or instance goes down. The client can automate the failover of database connections between a primary database and a standby database.
This section describes how ONS and FAN work with Oracle Restart. It contains the following topics:
FAN is a notification mechanism that Oracle Restart can use to notify other processes about configuration changes that include service status changes, such as UP
or DOWN
events. FAN provides the ability to immediately terminate inflight transaction when an instance or server fails. Integrated Oracle clients receive the events and respond. Applications can respond either by propagating the error to the user or by resubmitting the transactions and masking the error from the application user. When a DOWN
event occurs, integrated clients immediately clean up connections to the terminated database. When an UP
event occurs, the clients create new connections to the new primary database instance.
Oracle Restart publishes FAN events whenever a managed instance or service goes up or down. After a failover, the Oracle Data Guard Broker (broker) publishes FAN events. These FAN events can be used in the following ways:
Applications can use FAN with Oracle Restart without programmatic changes if they use one of these Oracle integrated database clients: Oracle Database JDBC, Universal Connection Pool for Java, Oracle Call Interface, and Oracle Database ODP.NET. These clients can be configured for Fast Connection Failover (FCF) to automatically connect to a new primary database after a failover.
FAN server-side callouts can be configured on the database tier.
For DOWN
events, such as a failed primary database, FAN provides immediate notification to the clients so that they can failover as fast as possible to the new primary database. The clients do not wait for a timeout. The clients are notified immediately, and they must be configured to failover when they are notified.
For UP
events, when services and instances are started, new connections can be created so that the application can immediately take advantage of the extra resources.
Through server-side callouts, you can also use FAN to:
Log status information
Page DBAs or open support tickets when resources fail to start
Automatically start dependent external applications that must be co-located with a service
FAN events are published using ONS and Oracle Streams Advanced Queuing queues. The queues are configured automatically when you configure a service. You must configure ONS manually using SRVCTL commands.
The Connection Manager (CMAN) and Oracle Net Services listeners are integrated with FAN events, enabling the CMAN and the listener to immediately de-register services provided by the failed instance and to avoid erroneously sending connection requests to a failed database.
See Also:
Oracle Data Guard Broker for information about FAN events in an Oracle Data Guard environment
The Maximum Availability Architecture (MAA) white paper about client failover:
http://www.oracle.com/technetwork/database/features/availability/maa-090890.html
Oracle Database focuses on maintaining service availability. With Oracle Restart, Oracle services are designed to be continuously available. Oracle Restart monitors the database and its services and, when configured, sends event notifications using FAN.
If Oracle Restart detects an outage, then it isolates the failed component and recovers the dependent components. If the failed component is the database instance, then after Oracle Data Guard fails over to the standby database, Oracle Restart on the new primary database starts any services defined with the current role.
FAN events are published by Oracle Restart and the Oracle Data Guard Broker through ONS and Advanced Queuing. You can also perform notifications using FAN callouts.
Note:
Oracle Restart does not run callouts with guaranteed ordering. Callouts are run asynchronously, and they are subject to scheduling variability.With Oracle Restart, restart and recovery are automatic, including the restarting of the subsystems, such as the listener and the Oracle Automatic Storage Management (Oracle ASM) processes, not just the database. You can use FAN callouts to report faults to your fault management system and to initiate repair jobs.
For repairs, upgrades, and changes that require you to shut down the primary database, Oracle Restart provides interfaces that disable and enable services to minimize service disruption to application users. Using Oracle Data Guard Broker with Oracle Restart allows a coordinated failover of the database service from the primary to the standby for the duration of the planned outage. Once you complete the operation, you can return the service to normal operation.
The management policy for a service controls whether the service starts automatically when the database is restarted. If the management policy for a service is set to AUTOMATIC
, then it restarts automatically. If the management policy for a service is set to MANUAL
, then it must be started manually.
Table 4-4 describes the FAN event record parameters and the event types, followed by name-value pairs for the event properties. The event type is always the first entry and the timestamp is always the last entry. In the following example, the name in the name-value pair is shown in Fan
event
type
(service_member
), and the value in the name-value pair is shown in Properties
:
FAN event type: service_member Properties: version=1.0 service=ERP database=FINPROD instance=FINPROD host=node1 status=up
Table 4-4 Event Record Parameters and Descriptions
Parameter | Description |
---|---|
|
Version of the event record. Used to identify release changes. |
|
|
|
The unique database supporting the service; matches the initialization parameter value for |
|
The name of the instance that supports the service; matches the |
|
The name of the node that supports the service or the node that has stopped; matches the node name known to Cluster Synchronization Services (CSS). |
|
The service name; matches the service in |
|
Values are |
|
|
|
The number of service members that are currently active; included in all |
|
The local time zone to use when ordering notification events. |
A FAN record matches the database signature of each session as shown in Table 4-5.
Table 4-5 FAN Parameters and Matching Database Signatures
FAN Parameter | Matching Oracle Database Signature |
---|---|
|
|
|
|
|
|
|
|
FAN callouts are server-side executables that Oracle Restart executes immediately when high availability events occur. You can use FAN callouts to automate the following activities when events occur, such as:
Opening fault tracking tickets
Sending messages to pagers
Sending e-mail
Starting and stopping server-side applications
Maintaining an uptime log by logging each event as it occurs
To use FAN callouts, place an executable in the directory grid_home/racg/usrco on both the primary and the standby database servers. If you are using scripts, then set the shell as the first line of the executable. The following is an example file for the grid_home/racg/usrco/callout.sh callout:
#! /bin/ksh FAN_LOGFILE= [your path name]/admin/log/`hostname`_uptime.log echo $* "reported="`date` >> $FAN_LOGFILE &
The following output is from the previous example:
NODE VERSION=1.0 host=sun880-2 status=nodedown reason= timestamp=08-Oct-2004 04:02:14 reported=Fri Oct 8 04:02:14 PDT 2004
A FAN record matches the database signature of each session, as shown in Table 4-5. Use this information to take actions on sessions that match the FAN event data.
See Also:
Table 4-4 for information about the callout and event detailsOracle has integrated FAN with many of the common Oracle client drivers that are used to connect to Oracle Restart databases. Therefore, the easiest way to use FAN is to use an integrated Oracle Client.
You can use the CMAN session pools, Oracle Call Interface, Universal Connection Pool for Java, JDBC simplefan API, and ODP.NET connection pools. The overall goal is to enable applications to consistently obtain connections to the available primary database at anytime.
If you install Oracle Restart by installing the Oracle Grid Infrastructure for a standalone server and then create your database, the database is automatically added to the Oracle Restart configuration, and is then automatically restarted when required. However, if you install Oracle Restart on a host computer on which a database already exists, you must manually add the database, the listener, the Oracle Automatic Storage Management (Oracle ASM) instance, and possibly other components to the Oracle Restart configuration.
After configuring Oracle Restart to manage your database, you may want to:
Add additional components to the Oracle Restart configuration.
Remove components from the Oracle Restart configuration.
Temporarily suspend Oracle Restart management for one or more components.
Modify the Oracle Restart configuration options for an individual component.
This section describes the SRVCTL commands that you use to accomplish these and other tasks. It contains the following topics:
Disabling and Enabling Oracle Restart Management for a Component
Managing Environment Variables in the Oracle Restart Configuration
Automating the Failover of Connections Between Primary and Standby Databases
See Also:
"About Oracle Restart"The tasks in the following sections require that you run the SRVCTL utility. You must ensure that you run SRVCTL from the correct Oracle home, and that you log in to the host computer with the correct user account. Table 4-6 lists the components that you can configure with SRVCTL, and for each component, lists the Oracle home from which you must run SRVCTL.
Table 4-6 Determining the Oracle Home from which to Start SRVCTL
Component Being Configured | Oracle Home from which to Start SRVCTL |
---|---|
Database, database service |
Database home |
Oracle ASM instance, disk group, listenerFoot 1 , ONS |
Oracle Grid Infrastructure home |
Footnote 1 Assumes the listener was started from the Oracle Grid Infrastructure home. If you installed Oracle Restart for an existing database, the listener may have been started from the database home, in which case you start SRVCTL from the database home.
To prepare to run SRVCTL:
Use Table 4-6 to determine the Oracle home from which you must run SRVCTL.
If you intend to run a SRVCTL command that modifies the Oracle Restart configuration (add
, remove
, enable
, disable
, and so on), then do one of the following:
On UNIX and Linux, log in to the database host computer as the user who installed the Oracle home that you determined in Step 1.
On Windows, log in as an Administrator.
Otherwise, log in to the host computer as any user.
Open the command window that you will use to enter the SRVCTL commands.
To enter commands, you might need to ensure that the SRVCTL program is in your PATH
environment variable. Otherwise, you can enter the absolute path to the program.
Online help is available for the SRVCTL utility.
To obtain help for SRVCTL:
Prepare to run SRVCTL as described in "Preparing to Run SRVCTL".
Enter the following command:
srvctl
For more detailed help, enter the following command:
srvctl -h
For detailed help on a particular command, enter:
srvctl command -h
For example, to obtain help for the add
command and the different options for each component type, enter:
srvctl add -h
For detailed help on a particular command for a particular component type, enter:
srvctl command object -h
For example, to obtain help about adding a database service, enter the following command:
srvctl add service -h
See Table 4-7 for a list of SRVCTL commands and Table 4-8 for a list of components.
In most cases, creating an Oracle component on a host that is running Oracle Restart automatically adds the component to the Oracle Restart configuration. (See Table 4-2.) The component is then automatically restarted when required.
The following are occasions when you must manually add components to the Oracle Restart configuration with SRVCTL:
You install Oracle Restart after creating the database.
You create an additional Oracle database on the same host computer using the CREATE
DATABASE
SQL statement.
You create a database service with DBMS_SERVICE.CREATE_SERVICE
package procedure. (The recommended way is to use SRVCTL.)
Note:
Adding a component to the Oracle Restart configuration is also referred to as "registering a component with Oracle Restart."Adding a component to the Oracle Restart configuration does not start that component. You must use a srvctl
start
command to start it.
You can also use Oracle Enterprise Manager Database Control (Database Control) to add a database or listener to the Oracle Restart configuration. Both the SRVCTL and Database Control methods are described in the following sections:
Note:
When you manually add a database to the Oracle Restart configuration, you must also add the Oracle grid infrastructure software owner as a member of the OSDBA group of that database. This is because the grid infrastructure components must be able to connect to the database asSYSDBA
to start and stop the database.
For example, if the host user who installed the grid infrastructure home is named grid
and the OSDBA group of the new database is named dba
, then user grid
must be a member of the dba
group.
When you add a component to the Oracle Restart configuration with SRVCTL, you can specify optional configuration settings for the component.
To add a component to the Oracle Restart configuration with SRVCTL:
Prepare to run SRVCTL as described in "Preparing to Run SRVCTL".
Enter the following command:
srvctl add object options
where object
is one of the components listed in Table 4-8. See the SRVCTL add command for available options for each component.
This example adds a database with a DB_UNIQUE_NAME
of dbcrm
. The mandatory -o
option specifies the Oracle home location. The -c
option specifies a single-instance database.
srvctl add database -d dbcrm -o /u01/app/oracle/product/11.2.0/dbhome_1 -c SINGLE
Example 4-2 Adding a Database Service
For the database with the DB_UNIQUE_NAME
of dbcrm
, this example both creates a new database service named crmbatch
and adds it to the Oracle Restart configuration.
srvctl add service -d dbcrm -s crmbatch
See "Creating and Deleting Database Services with SRVCTL" for more examples.
With Oracle Enterprise Manager Database Control (Database Control), you can add only database instances and listeners to the Oracle Restart configuration.
To add a database instance with Database Control:
Access the Database Home page for the desired database instance.
See "Accessing the Database Home Page" in Oracle Database 2 Day DBA for instructions.
In the High Availability section, next to the Oracle Restart label, click the Disabled link.
Note:
If the Oracle Restart label shows "Enabled," then the database is already being managed by Oracle Restart, and there is no need to continue.If prompted for host credentials, enter credentials for the user who installed the database Oracle home, and then click Login.
On the confirmation page, click Continue.
To add a listener with Database Control:
Access the Database Home page for the desired database instance.
See "Accessing the Database Home Page" in Oracle Database 2 Day DBA for instructions.
In the General section, click the link next to the Listener label.
in the High Availability section, next to the Oracle Restart label, click the Disabled link.
Note:
If the Oracle Restart label shows "Enabled," then the listener is already being managed by Oracle Restart and there is no need to continue.On the confirmation page, click Continue.
When you use an Oracle-recommended method to delete an Oracle component, the component is also automatically removed from the Oracle Restart configuration. For example, if you use Database Configuration Assistant (DBCA) to delete a database, DBCA removes the database from the Oracle Restart configuration. Likewise, if you use Oracle Net Configuration Assistant (NETCA) to delete a listener, NETCA removes the listener from the Oracle Restart configuration. See Table 4-3 for more examples. If you use a non-recommended or manual method to delete an Oracle component, you must first use SRVCTL to remove the component from the Oracle Restart configuration. Failing to do so could result in an error.
To remove a component from the Oracle Restart configuration:
Prepare to run SRVCTL as described in "Preparing to Run SRVCTL".
Enter the following command:
srvctl remove object [options]
where object
is one of the components listed in Table 4-8. See the SRVCTL remove command for available options for each component.
You can temporarily disable Oracle Restart management for a component. One reason to do this is when you are performing maintenance on the component. For example, if a component must be repaired, then you might not want it to be automatically restarted if it fails or if the host computer is restarted.
When maintenance is complete, you can reenable management for the component.
When you disable a component:
It is no longer automatically restarted.
It is no longer automatically started through a dependency.
It cannot be started with SRVCTL.
Any component dependent on this resource is no longer automatically started or restarted.
To disable or enable automatic restart for a component:
Prepare to run SRVCTL, as described in "Preparing to Run SRVCTL".
Do one of the following:
To disable a component, enter the following command:
srvctl disable object [options]
To enable a component, enter the following command:
srvctl enable object [options]
Replace object
with one of the components listed in Table 4-8. See the SRVCTL disable command and the enable command for available options for each component.
Example 4-5 Disabling Automatic Restart for a Database
This example disables automatic restart for a database with a DB_UNIQUE_NAME
of dbcrm
.
srvctl disable database -d dbcrm
Example 4-6 Disabling Automatic Restart for an Oracle ASM Disk Group
This example disables automatic restart for the Oracle ASM disk group named recovery
.
srvctl disable diskgroup -g recovery
You can use SRVCTL to view the running status (running or not running) for any component managed by Oracle Restart. For some components, additional information is also displayed.
To view component status:
Prepare to run SRVCTL as described in "Preparing to Run SRVCTL".
Enter the following command:
srvctl status object [options]
where object
is one of the components listed in Table 4-8. See the SRVCTL status command for available options for each component.
You can use SRVCTL to view the Oracle Restart configuration for any component. Oracle Restart maintains different configuration information for each component type. In one form of the SRVCTL command, you can obtain a list of components managed by Oracle Restart.
To view component configuration:
Prepare to run SRVCTL as described in "Preparing to Run SRVCTL".
Enter the following command:
srvctl config object options
where object
is one of the components listed in Table 4-8. See the SRVCTL config command for available options for each component.
Example 4-9 Viewing a List of All Databases Managed by Oracle Restart
srvctl config database dbcrm orcl
Example 4-10 Viewing the Configuration of a Particular Database
This example displays the configuration of the database with a DB_UNIQUE_NAME
of orcl
.
srvctl config database -d orcl Database unique name: orcl Database name: orcl Oracle home: /u01/app/oracle/product/11.2.0/dbhome_1 Oracle user: oracle Spfile: +DATA/orcl/spfileorcl.ora Domain: us.example.com Start options: open Stop options: immediate Database role: Management policy: automatic Disk Groups: DATA Services: mfg,sales
You can use SRVCTL to modify the Oracle Restart configuration of a component. For example, you can modify the port number that a listener listens on when Oracle Restart starts it, or the server parameter file (SPFILE) that Oracle Restart points to when it starts a database.
To modify the Oracle Restart configuration for a component:
Prepare to run SRVCTL as described in "Preparing to Run SRVCTL".
Enter the following command:
srvctl modify object options
where object
is one of the components listed in Table 4-8. See the SRVCTL modify command for available options for each component.
Example 4-11 Modifying the Oracle Restart Configuration for a Database
For the database with a DB_UNIQUE_NAME
of dbcrm
, the following command changes the management policy to MANUAL
and the start option to NOMOUNT
.
srvctl modify database -d dbcrm -y MANUAL -s NOMOUNT
With a MANUAL
management policy, the database is never automatically started when the database host computer is restarted. However, Oracle Restart continues to monitor the database and restarts it if a failure occurs.
The Oracle Restart configuration can store name/value pairs for environment variables. If you typically set environment variables (other than ORACLE_HOME
and ORACLE_SID
) prior to starting your Oracle database, you can set these environment variable values in the Oracle Restart configuration. You can store any number environment variables in the individual configurations of the following components:
Database instance
Listener
Oracle ASM instance
When Oracle Restart starts one of these components, it first sets environment variables for that component to the values stored in the component configuration. Although you can set environment variables that are used by Oracle components in this manner, this capability is primarily intended for operating system environment variables.
The following sections provide instructions for setting, unsetting, and viewing environment variables:
Note:
Do not use this facility to set standard environment variables likeORACLE_HOME
and ORACLE_SID
; these are set automatically by Oracle Restart.You use SRVCTL to set and unset environment variable values in the Oracle Restart configuration for a component.
To set or unset environment variables in the configuration:
Prepare to run SRVCTL as described in "Preparing to Run SRVCTL".
Do one of the following:
To set an environment variable in the configuration, enter the following command:
srvctl setenv {asm|database|listener} options
To remove an environment variable from the configuration, enter the following command:
srvctl unsetenv {asm|database|listener} options
See the SRVCTL setenv command and the unsetenv command for available options for each component.
Example 4-12 Setting Database Environment Variables
This example sets the NLS_LANG
and the AIX AIXTHREAD_SCOPE
environment variables in the Oracle Restart configuration for the database with a DB_UNIQUE_NAME
of dbcrm
:
srvctl setenv database -d dbcrm -t "NLS_LANG=AMERICAN_AMERICA.AL32UTF8, AIXTHREAD_SCOPE=S"
You use SRVCTL to view the values of environment variables in the Oracle Restart configuration for a component.
To view environment variable values in the configuration:
Prepare to run SRVCTL as described in "Preparing to Run SRVCTL".
Enter the following command:
srvctl getenv {database|listener|asm} options
See the SRVCTL getenv command for available options for each component.
Example 4-13 Viewing All Environment Variables for a Database
This example gets and displays the environment variables in the Oracle Restart configuration for the database with a DB_UNIQUE_NAME
of dbcrm
:
srvctl getenv database -d dbcrm dbcrm: NLS_LANG=AMERICAN_AMERICA AIXTHREAD_SCOPE=S GCONF_LOCAL_LOCKS=1
Example 4-14 Viewing Specific Environment Variables for a Database
This example gets and displays the NLS_LANG
and AIXTHREAD_SCOPE
environment variables from the Oracle Restart configuration for the same database:
srvctl getenv database -d dbcrm -t "NLS_LANG,AIXTHREAD_SCOPE" dbcrm: NLS_LANG=AMERICAN_AMERICA AIXTHREAD_SCOPE=S
When managing a database with Oracle Restart, Oracle recommends that you use SRVCTL to create and delete database services. When you use SRVCTL to add a database service, the service is automatically added to the Oracle Restart configuration and a dependency between the service and the database is established. Thus, if you start the service, Oracle Restart first starts the database if it is not started.
When you use SRVCTL to delete a database service, the service is also removed from the Oracle Restart configuration.
To create a database service with SRVCTL:
Prepare to run SRVCTL as described in "Preparing to Run SRVCTL".
Enter the following command:
srvctl add service -d db_unique_name -s service_name [options]
The database service is created and added to the Oracle Restart configuration. See the srvctl add service command for available options.
Example 4-15 Creating a Database Service
For the database with the DB_UNIQUE_NAME
of dbcrm
, this example creates a new database service named crmbatch
.
srvctl add service -d dbcrm -s crmbatch
Example 4-16 Creating a Role-Based Database Service
This example creates the crmbatch
database service and assigns it the Data Guard role of PHYSICAL_STANDBY
. The service is automatically started only if the current role of the dbcrm
database is physical standby.
srvctl add service -d dbcrm -s crmbatch -l PHYSICAL_STANDBY
To delete a database service with SRVCTL:
Prepare to run SRVCTL as described in "Preparing to Run SRVCTL".
Enter the following command:
srvctl remove service -d db_unique_name -s service_name [-f]
The database service is removed from the Oracle Restart configuration. If the -f
(force) flag is present, the service is removed even if it is still running. Without this flag, an error occurs if the service is running.
To enable Oracle Restart to publish Fast Application Notification (FAN) events, you must create an Oracle Notification Services (ONS) network that includes the Oracle Restart servers and the integrated clients. These clients can include Oracle Connection Manager (CMAN), Java Database Connectivity (JDBC), and Universal Connection Pool (UCP) clients. If you are using Oracle Call Interface or ODP.NET clients, then you must enable Oracle Advanced Queuing (AQ) HA notifications for your services. In addition, ONS must be running on the server.
To enable FAN events in an Oracle Restart environment:
Prepare to run SRVCTL as described in "Preparing to Run SRVCTL".
Add the database to the Oracle Restart Configuration if it is not already managed by Oracle Restart. See "Adding Components to the Oracle Restart Configuration".
Add ONS to the configuration:
srvctl add ons
ONS is disabled when it is added.
Enable ONS:
srvctl enable ons
Start ONS:
srvctl start ons
Add the service to the Oracle Restart Configuration.
For Oracle Call Interface and ODP.NET clients, ensure that the -q
option is set to TRUE
to enable the database queue.
Enable each client for fast connection failover. See "Enabling Clients for Fast Connection Failover".
In a configuration that uses Oracle Restart and Oracle Data Guard primary and standby databases, the database services fail over automatically from the primary to the standby during either a switchover or failover. You can use Oracle Notification Services (ONS) to immediately notify clients of the failover of services between the primary and standby databases. The Oracle Data Guard Broker uses Fast Application Notification (FAN) to send notifications to clients when a failover occurs. Integrated Oracle clients automatically failover connections and applications can mask the failure from end-users.
To automate connection failover, you must create an ONS network that includes the Oracle Restart servers and the integrated clients (CMAN, listener, JDBC, and UCP). If you are using Oracle Call Interface or ODP.NET clients, you must enable the Oracle Advanced Queuing queue. The database and the services must be managed by Oracle Restart and the Oracle Data Guard Broker to automate the failover of services.
To automate the failover of services between primary and standby databases:
Configure the primary and standby database with the Oracle Data Guard Broker. See Oracle Data Guard Broker.
Prepare to run SRVCTL as described in "Preparing to Run SRVCTL".
Add the primary database to the Oracle Restart configuration on the primary server if it has not been added. Ensure that you specify PRIMARY
for the database role. See "Adding Components to the Oracle Restart Configuration".
Add the standby database to the Oracle Restart configuration on the standby server if it has not been added. Ensure that you specify the appropriate standby database role.
Enable FAN events on both the primary database server and the standby database server. "Enabling FAN Events in an Oracle Restart Environment".
Add the services that clients will use to connect to the databases to the Oracle Restart configuration on the primary database and the standby database. When you add a service, ensure that:
The -l
option is set to the proper role for each service
The -q
option is set to TRUE
if you are using ODP.NET or Oracle Call Interface
Enable each client for fast connection failover. See "Enabling Clients for Fast Connection Failover".
In a configuration with a standby database, after you have added Oracle Notification Services (ONS) to your Oracle Restart configurations and enabled Oracle Advanced Queuing (AQ) HA notifications for your services, you can enable clients for fast connection failover. The clients receive Fast Application Notification (FAN) events and can relocate connections to the current primary database after an Oracle Data Guard failover. See "Automating the Failover of Connections Between Primary and Standby Databases" for information about adding ONS.
For databases with no standby database configured, you can still configure the client FAN events. When there is a failure, you can configure the client to retry the connection to the database. Since Oracle Restart will restart the failed database, the client can reconnect when the database restarts. Ensure that you program the appropriate delay and retries on the connection string, as illustrated in the examples in this section.
You can enable fast connection failover for the following types of clients in an Oracle Restart configuration:
Enabling FAN for the Oracle Universal Connection Pool enables Fast Connection Failover (FCF) for the client. Your application can use either thick or thin JDBC clients to use FCF.
To configure the JDBC client, set the FastConnectionFailoverEnabled
property before making the first getConnection()
request to a data source. When you enable Fast Connection Failover, the failover applies to every connection in the connection cache. If your application explicitly creates a connection cache using the Connection Cache Manager, then you must first set FastConnectionFailoverEnabled
.
This section describes how to enable FCF for JDBC with the Universal Connection Pool. For thick JDBC clients, if you enable Fast Connection Failover, do not enable Transparent Application Failover (TAF), either on the client or for the service. Enabling FCF with thin or thick JDBC clients enables the connection pool to receive and react to all FAN events.
To enable Fast Connection Failover for JDBC clients:
On a cache enabled DataSource, set the DataSource property FastConnectionFailoverEnabled
to true
as in the following example to enable FAN for the Oracle JDBC Implicit Connection Cache:
PoolDataSource pds = PoolDataSourceFactory.getPoolDataSource(); pds.setONSConfiguration("nodes=primaryhost:6200,standbyhost:6200"); pds.setFastConnectionFailoverEnabled(true); pds.setURL("jdbc:oracle:thin:@(DESCRIPTION= (LOAD_BALANCE=on) (ADDRESS=(PROTOCOL=TCP)(HOST=primaryhost)(PORT=1521)) (ADDRESS=(PROTOCOL=TCP)(HOST=standbyhost)(PORT=1521)) (CONNECT_DATA=(service_name=service_name)))"); ......
In this example, primaryhost
is the server for the primary database, and standbyhost
is the server for the standby database.
Applications must have both ucp.jar and ons.jar in their CLASSPATH
.
Note:
Use the following system property to enable FAN without making data source changes:-D
oracle.jdbc.FastConnectionFailover=true
.When you start the application, ensure that the ons.jar file is located on the application CLASSPATH
. The ons.jar file is part of the Oracle client installation.
See Also:
Oracle Database JDBC Developer's GuideOracle Call Interface clients can enable Fast Connection Failover (FCF) by registering to receive notifications about Oracle Restart high availability FAN events and respond when events occur. This improves the session failover response time in Oracle Call Interface and removes terminated connections from connection and session pools. This feature works on Oracle Call Interface applications, including those that use Transparent Application Failover (TAF), connection pools, or session pools.
First, you must enable a service for high availability events to automatically populate the Advanced Queuing ALERT_QUEUE
. If your application is using TAF, then enable the TAF settings for the service. Configure client applications to connect to an Oracle Restart database. Clients can register callbacks that are used whenever an event occurs. This reduces the time that it takes to detect a connection failure.
During DOWN
event processing, Oracle Call Interface:
Terminates affected connections at the client and returns an error
Removes connections from the Oracle Call Interface connection pool and the Oracle Call Interface session pool
The session pool maps each session to a physical connection in the connection pool, and there can be multiple sessions for each connection.
Fails over the connection if you have configured TAF
If TAF is not configured, then the client only receives an error.
Note:
Oracle Call Interface does not manageUP
events.To Enable Fast Connection Failover for an Oracle Call Interface client:
Ensure that the service that you are using has Advanced Queuing notifications enabled by setting the services' values using the SRVCTL modify
command. For example:
srvctl modify service -d proddb -s gl.us.example.com -q true -l primary -e select -m basic -z 5 -w 180 -j long
Enable OCI_EVENTS
at environment creation time on the client as follows:
( OCIEnvCreate(...) )
Link client applications with the client thread or operating system library.
Optionally, register a client EVENT
callback.
Ensure that the client uses an Oracle Net connect descriptor that includes all primary and standby hosts in the ADDRESS_LIST
. For example:
gl = (DESCRIPTION = (CONNECT_TIMEOUT=10)(RETRY_COUNT=3) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = BOSTON1)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = CHICAGO1)(PORT = 1521)) (LOAD_BALANCE = yes) ) (CONNECT_DATA= (SERVICE_NAME=gl.us.example.com)))
To see the alert information, query the views DBA_OUTSTANDING_ALERTS
and DBA_ALERT_HISTORY
.
See Also:
Oracle Database Net Services Administrator's Guide for information about configuring TAF
Oracle Data Provider for .NET (ODP.NET) connection pools can subscribe to notifications that indicate when services are down. After a DOWN
event, Oracle Database cleans up sessions in the connection pool that go to the instance that stops, and ODP.NET proactively disposes connections that are no longer valid.
To enable Fast Connection Failover for ODP.NET clients:
Enable Advanced Queuing notifications by using SRVCTL modify
service
command, as in the following example:
srvctl modify service –d dbname –s gl –q true, -j long
Execute the following for the users that will be connecting by way of the .Net Application, where user_name
is the user name:
execute DBMS_AQADM.GRANT_QUEUE_PRIVILEGE('DEQUEUE','SYS.SYS$SERVICE_METRICS', user_name);
Enable Fast Connection Failover for ODP.NET connection pools by subscribing to FAN high availability events. Set the HA
events connection string attribute to true at connection time. The pooling attribute must be set to true
, which is the default. The following example illustrates these settings, where user_name
is the name of the user and password
is the user password:
// C# using System; using Oracle.DataAccess.Client; class HAEventEnablingSample { static void Main() { OracleConnection con = new OracleConnection(); // Open a connection using ConnectionString attributes // Also, enable "load balancing" con.ConnectionString = "User Id=user_name;Password=password;Data Source=oracle;" + "Min Pool Size=10;Connection Lifetime=120;Connection Timeout=60;" + "HA Events=true;Incr Pool Size=5;Decr Pool Size=2"; con.Open(); // Create more connections and perform work against the database here. // Dispose OracleConnection object con.Dispose(); } }
Ensure that the client uses an Oracle Net connect descriptor that includes all primary and standby hosts in the ADDRESS_LIST
. For example:
gl = (DESCRIPTION = (CONNECT_TIMEOUT=10)(RETRY_COUNT=3) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = BOSTON1)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = CHICAGO1)(PORT = 1521)) (LOAD_BALANCE = yes) ) (CONNECT_DATA= (SERVICE_NAME=gl.us.example.com)))
See Also:
Oracle Data Provider for .NET Developer's Guide for information about ODP.NET
When Oracle Restart is in use, Oracle strongly recommends that you use the SRVCTL utility to start and stop components, for the following reasons:
When starting a component with SRVCTL, Oracle Restart can first start any components on which this component depends. When stopping a component with SRVCTL, Oracle Restart can stop any dependent components first.
SRVCTL always starts a component according to its Oracle Restart configuration. Starting a component by other means may not.
For example, if you specified a server parameter file (SPFILE) location when you added a database to the Oracle Restart configuration, and that location is not the default location for SPFILEs, if you start the database with SQL*Plus, the SPFILE specified in the configuration may not be used.
See the srvctl add database command for a table of configuration options for a database instance.
When you start a component with SRVCTL, environment variables stored in the Oracle Restart configuration for the component are set.
See "Managing Environment Variables in the Oracle Restart Configuration" for more information.
You can also use Oracle Enterprise Manager Database Control (Database Control) to start a database managed by Oracle Restart. Both the SRVCTL and Database Control methods are described in the following sections:
Starting and Stopping Components Managed by Oracle Restart with SRVCTL
Starting a Database Managed by Oracle Restart with Oracle Enterprise Manager
You can start and stop any component managed by Oracle Restart with SRVCTL.
To start or stop a component managed by Oracle Restart with SRVCTL:
Prepare to run SRVCTL as described in "Preparing to Run SRVCTL".
Do one of the following:
To start a component, enter the following command:
srvctl start object [options]
To stop a component, enter the following command:
srvctl stop object [options]
where object
is one of the components listed in Table 4-8. See the SRVCTL start command and the stop command for available options for each component.
Example 4-17 Starting a Database
This example starts the database with a DB_UNIQUE_NAME
of dbcrm:
srvctl start database -d dbcrm
Example 4-18 Starting a Database NOMOUNT
This example starts the database instance without mounting the database:
srvctl start database -d dbcrm -o nomount
Example 4-19 Starting the Default Listener
This example starts the default listener:
srvctl start listener
Example 4-20 Starting a Specified Listener
This example starts the listener named crmlistener
:
srvctl start listener -l crmlistener
Example 4-21 Starting Database Services
This example starts the database services bizdev
and support
for the database with a DB_UNIQUE_NAME
of dbcrm
. If the database is not started, Oracle Restart first starts the database.
srvctl start service -d dbcrm -s "bizdev,support"
Example 4-22 Starting (Mounting) Oracle ASM Disk Groups
This example starts (mounts) the Oracle ASM disk groups data
and recovery
. The user running this command must be a member of the OSASM group.
srvctl start diskgroup -g "data,recovery"
Example 4-23 Shutting Down a Database
This example stops (shuts down) the database with a DB_UNIQUE_NAME
of dbcrm
. Because a stop option (-o
) is not provided, the database shuts down according to the stop option in its Oracle Restart configuration. The default stop option is IMMEDIATE
.
srvctl stop database -d dbcrm
Example 4-24 Shutting Down a Database with the ABORT option
This example does a SHUTDOWN
ABORT
of the database with a DB_UNIQUE_NAME
of dbcrm
.
srvctl stop database -d dbcrm -o abort
See Also:
The SRVCTL start commandWith Oracle Enterprise Manager Database Control (Database Control), you can use Oracle Restart to start a database.
To start a database managed by Oracle Restart with Oracle Enterprise Manager:
Access the Database Home page for the desired database instance.
See "Accessing the Database Home Page" in Oracle Database 2 Day DBA for instructions.
Click Startup.
The Startup/Shutdown Credentials page appears.
Enter credentials as follows:
Enter the host computer credentials for the user who installed the database Oracle home.
Enter the database credentials consisting of the user name SYS
and the password that you assigned to SYS
during the installation.
In the Connect As list, choose the value SYSOPER
.
(Optional) Select the Save as Preferred Credential option if you want these credentials to be automatically filled in for you the next time that this page appears.
Click OK.
The Select Startup Type page appears.
To start the database with Oracle Restart, select Start database along with dependent resources.
This ensures that resources on which the database depends, such as the Oracle Automatic Storage Management instance, are successfully started before the database is started.
Click OK.
A confirmation page appears.
Click Yes.
The Startup/Shutdown: Activity Information page appears, indicating that the database is being started up. When startup is complete, the Login page appears.
Log in to the database (and to Database Control).
The Database Home page appears indicating that the database instance status is Up.
When several components in an Oracle home are managed by Oracle Restart, you can stop Oracle Restart and the components managed by Oracle Restart in the Oracle home. You can also disable Oracle Restart so that it is not restarted if the node reboots. You might need to do this when you are performing maintenance that includes the Oracle home, such as installing a patch. When the maintenance operation is complete, you can enable and restart Oracle Restart, and you can restart the components managed by Oracle Restart in the Oracle home.
Use both the SRVCTL utility and the CRSCTL utility for the stop and start operations:
The stop
home
SRVCTL command stops all of the components that are managed by Oracle Restart in the specified Oracle home. The start
home
SRVCTL command starts these components. The Oracle home can be an Oracle Database home or an Oracle Grid Infrastructure home.
When you use the home
object, a state file, specified in the -s
option, tracks the state of each component. The stop
and status
commands create the state file. The start
command uses the state file to identify the components to restart.
In addition, you can check the status of the components managed by Oracle Restart using the status
home
command.
The stop
CRSCTL command stops Oracle Restart, and the disable
CRSCTL command ensures that the components managed by Oracle Restart do not restart automatically. The enable
CRSCTL command enables automatic restart and the start
CRSCTL command restarts Oracle Restart.
To stop and start the components in an Oracle home while installing a patch:
Prepare to run SRVCTL as described in "Preparing to Run SRVCTL".
Use the SRVCTL utility to stop the components managed by Oracle Restart in an Oracle home:
srvctl stop home -o oracle_home -s state_file [-t stop_options] [-f]
where oracle_home
is the complete path of the Oracle home and state_file
is the complete path to the state file. State information for the Oracle home is recorded in the specified state file. Make a note of the state file location because it must be specified in Step 7.
Before stopping the components in an Oracle Grid Infrastructure home, ensure that you first stop the components in a dependent Oracle Database home.
If you are patching an Oracle Grid Infrastructure home, then disable and stop Oracle Restart. Otherwise, go to Step 4.
To disable and stop Oracle Restart, use the CRSCTL utility to run the following commands:
crsctl disable has crsctl stop has
Perform the maintenance operation.
Use the CRSCTL utility to enable automatic restart of the components managed by Oracle Restart:
crsctl enable has
Use the CRSCTL utility to start Oracle Restart:
crsctl start has
Use the SRVCTL utility to start the components that were stopped in Step 2:
srvctl start home -o oracle_home -s state_file
The state file must match the state file specified in Step 2.
Optionally, use the SRVCTL utility to check the status of the components managed by Oracle Restart in the Oracle home:
srvctl status home -o oracle_home -s state_file
Example 4-25 Stopping Components Managed by Oracle Restart in an Oracle Home
srvctl stop home -o /u01/app/oracle/product/11.2.0/dbhome_1 -s /usr1/or_state
Example 4-26 Starting Components Managed by Oracle Restart in an Oracle Home
srvctl start home -o /u01/app/oracle/product/11.2.0/dbhome_1 -s /usr1/or_state
Example 4-27 Displaying the Status of Components Managed by Oracle Restart in an Oracle Home
srvctl status home -o /u01/app/oracle/product/11.2.0/dbhome_1 -s /usr1/or_state
See Also:
The srvctl stop home command
The srvctl status home command
The srvctl start home command
This section provides details about the syntax and options for SRVCTL commands specific to Oracle Restart. See Oracle Real Application Clusters Administration and Deployment Guide for the full list of SRVCTL commands.
SRVCTL Command Syntax and Options Overview
SRVCTL expects the following command syntax:
srvctl command object options
where:
command
is a verb such as start
, stop
, or remove
. See Table 4-7 for a complete list.
object
is the component on which SRVCTL performs the command, such as database, listener, and so on. You can also use component abbreviations. See Table 4-8 for a complete list of components and their abbreviations.
options
extend the use of a preceding command combination to include additional parameters for the command. For example, the -d
option indicates that a database unique name follows, and the -s
option indicates that a comma-delimited list of database service names follows.
Note:
On the Windows platform, when specifying a comma-delimited list, you must enclose the list within double-quotes ("...,..."). You must also use double-quotes on the UNIX and Linux platforms if any list member contains shell metacharacters.Case Sensitivity SRVCTL commands and components are case insensitive. Options are case sensitive. Database and database service names are case insensitive and case preserving.
Table 4-7 Summary of SRVCTL Commands
Command | Description |
---|---|
Adds a component to the Oracle Restart configuration. |
|
Displays the Oracle Restart configuration for a component. |
|
Disables management by Oracle Restart for a component. |
|
Reenables management by Oracle Restart for a component. |
|
Displays environment variables in the Oracle Restart configuration for a database, Oracle ASM instance, or listener. |
|
Modifies the Oracle Restart configuration for a component. |
|
Removes a component from the Oracle Restart configuration. |
|
Sets environment variables in the Oracle Restart configuration for a database, Oracle ASM instance, or listener. |
|
Starts the specified component. |
|
Displays the running status of the specified component. |
|
Stops the specified component. |
|
Unsets environment variables in the Oracle Restart configuration for a database, Oracle ASM instance, or listener. |
Table 4-8 lists the keywords that can be used for the object
portion of SRVCTL commands. You can use either the full name or the abbreviation for each component keyword.
Table 4-8 Component Keywords and Abbreviations
Component | Abbreviation | Description |
---|---|---|
|
|
Oracle ASM instance |
|
|
Database instance |
|
|
Oracle ASM disk group |
|
|
Oracle ASM file system |
|
|
Oracle home or Oracle Clusterware home |
|
|
Oracle Net listener |
|
|
Database service |
|
|
Oracle Notification Services (ONS) |
The srvctl
add
command adds the specified component to the Oracle Restart configuration, and optionally sets Oracle Restart configuration parameters for the component. After a component is added, Oracle Restart begins to manage it, restarting it when required.
To perform srvctl
add
operations, you must be logged in to the database host computer with the proper user account. See "Preparing to Run SRVCTL" for more information.
Command | Description |
---|---|
Adds an Oracle ASM instance. |
|
Adds a database. |
|
Adds a listener. |
|
Adds an ONS (used by Oracle Data Guard configurations with Oracle Data Guard Broker). |
|
Adds a database service managed by Oracle Restart. |
Note:
There is nosrvctl
add
command for Oracle ASM disk groups. Disk groups are automatically added to the Oracle Restart configuration when they are first mounted. If you remove a disk group from the Oracle Restart configuration and later want to add it back, connect to the Oracle ASM instance with SQL*Plus and use an ALTER
DISKGROUP
... MOUNT
command.Adds an Oracle ASM instance to the Oracle Restart configuration.
Use the srvctl
add
asm
command with the following syntax:
srvctl add asm [-l listener_name [-p spfile] [-d asm_diskstring]]
Table 4-10 srvctl add asm Options
Option | Description |
---|---|
-l listener_name
|
Name of the listener with which Oracle ASM should register. A weak dependency is established with this listener. (Before starting the Oracle ASM instance, Oracle Restart attempts to start the listener. If the listener does not start, the Oracle ASM instance is still started. If the listener later fails, Oracle Restart does not restart Oracle ASM.) If omitted, defaults to the listener named |
-p spfile
|
The full path of the server parameter file for the database. If omitted, the default SPFILE is used. |
-d asm_diskstring
|
Oracle ASM disk group discovery string. An Oracle ASM discovery string is a comma-delimited list of strings that limits the set of disks that an Oracle ASM instance discovers. The discovery strings can include wildcard characters. Only disks that match one of the strings are discovered. |
An example of this command is:
srvctl add asm -l crmlistener
See Also:
Oracle Automatic Storage Management Administrator's Guide for more information about Oracle ASM disk group discovery stringsAdds a database to the Oracle Restart configuration.
After adding a database to the Oracle Restart configuration, if the database then accesses data in an Oracle ASM disk group, a dependency between the database that disk group is created. Oracle Restart then ensures that the disk group is mounted before attempting to start the database.
However, if the database and Oracle ASM instance are not running when you add the database to the Oracle Restart configuration, you must manually establish the dependency between the database and its disk groups by specifying the -a
option in the SRVCTL command. See the example later in this section.
Note:
When you manually add a database to the Oracle Restart configuration, you must also add the Oracle grid infrastructure software owner as a member of the OSDBA group of that database. This is because the grid infrastructure components must be able to connect to the database asSYSDBA
to start and stop the database.
For example, if the host user who installed the grid infrastructure home is named grid
and the OSDBA group of the new database is named dba
, then user grid
must be a member of the dba
group.
Use the srvctl
add
database
command with the following syntax:
srvctl add database -d db_unique_name -o oracle_home [-m domain_name] [-c {RACONENODE | RAC | SINGLE}] [-n db_name] [-i instance_name] [-p spfile] [-s start_options] [-t stop_options] [-r {PRIMARY | PHYSICAL_STANDBY | LOGICAL_STANDBY | SNAPSHOT_STANDBY}] [-y {automatic | manual}] [-a disk_group_list]
Table 4-11 srvctl add database Options
Option | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-o Oracle_home
|
The full path of Oracle home for the database. |
-m domain_name
|
The domain for the database. Must match the |
-c {RACONENODE | RAC | SINGLE} |
The type of database you are adding: Oracle RAC One Node, Oracle RAC, or single instance. The default is When adding a database to the Oracle Restart configuration, |
-n db_name
|
If provided, must match the |
-i instance_name
|
The instance name. You must include this option if the instance name is different from the unique name given by the Note: The |
-p spfile
|
The full path of the server parameter file for the database. If omitted, the default SPFILE is used. |
-s start_options
|
Startup options for the database ( |
-t stop_options
|
Shutdown options for the database ( |
-r {PRIMARY | PHYSICAL_STANDBY | LOGICAL_STANDBY | SNAPSHOT_STANDBY} |
The current role of the database ( |
-y {AUTOMATIC | MANUAL} |
Management policy for the database. If |
-a disk_group_list
|
List of disk groups upon which the database is dependent. When starting the database, Oracle Restart first ensures that these disk groups are mounted. This option is required only if the database instance and the Oracle ASM instance are not started when adding the database. Otherwise, the dependency is recorded automatically between the database and its disk groups. |
This example adds the database with the DB_UNIQUE_NAME
dbcrm
:
srvctl add database -d dbcrm -o /u01/app/oracle/product/11.2.0/dbhome_1
This example adds the same database and also establishes a dependency between the database and the disk groups DATA
and RECOVERY
.
srvctl add database -d dbcrm -o /u01/app/oracle/product/11.2.0/dbhome_1 -a "DATA,RECOVERY"
See Also:
Adds a listener to the Oracle Restart configuration.
Use the srvctl
add
listener
command with the following syntax:
srvctl add listener [-l listener_name] [-p endpoints] [-s] [-o Oracle_home]
Table 4-12 srvctl add listener Options
Option | Description |
---|---|
-l listener_name
|
Listener name. If omitted, defaults to |
-p endpoints
|
Comma separated TCP ports or listener endpoints. If omitted, defaults to TCP:1521. endpoints syntax is: "[TCP:]port[, ...] [/IPC:key] [/NMP:pipe_name] [/TCPS:s_port] [/SDP:port]" |
-s |
Skip checking for port conflicts with the supplied endpoints |
-o Oracle_home
|
Oracle home for the listener. If omitted, the Oracle Grid Infrastructure home is assumed. |
Adds an ONS to an Oracle Restart configuration.
ONS must be added to an Oracle Restart configuration to enable the sending of Fast Application Notification (FAN) events after an Oracle Data Guard failover.
When ONS is added to an Oracle Restart configuration, it is initially disabled. You can enable it with the srvctl
enable
ons
command.
See Also:
"srvctl enable ons"Use the srvctl
add
ons
command with the following syntax:
srvctl add ons [-e em_port] [-l ons_local_port] [-r ons_remote_port] [-t host[:port],[host[:port]...]] [-v]
Table 4-13 srvctl add ons Options
Option | Description |
---|---|
-e em_port
|
ONS listening port for Oracle Enterprise Manager. The default is 2016. |
-l ons_local_port
|
ONS listening port for local client connections. The default is 6100. |
-r ons_remote_port
|
ONS listening port for connections from remote hosts. The default is 6200. |
-t host[:port],[host[:port],... |
A list of Note: If |
-v |
Verbose output |
Adds a database service to the Oracle Restart configuration. Creates the database service if it does not exist. This method of creating a service is preferred over using the DBMS_SERVICE
PL/SQL package.
Use the srvctl
add
service
command with the following syntax:
srvctl add service -d db_unique_name -s service_name [-l [PRIMARY][,PHYSICAL_STANDBY][,LOGICAL_STANDBY][,SNAPSHOT_STANDBY]] [-y {AUTOMATIC | MANUAL}] [-e {NONE | SESSION | SELECT}] [-m {NONE | BASIC}] [-w integer] [-z integer] [-j {SHORT | LONG}] [-B {SERVICE_TIME | THROUGHPUT | NONE}] [-q {TRUE | FALSE}] -t edition_name
Table 4-14 srvctl add service Options
Option | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-s service_name
|
The database service name |
-l [PRIMARY][,PHYSICAL_STANDBY][,LOGICAL_STANDBY][,SNAPSHOT_STANDBY] |
A list of service roles. Applicable in Oracle Data Guard environments only. When this option is present, upon database open, the service is started only when one of its service roles matches the current database role. |
-y {AUTOMATIC | MANUAL} |
Management policy for the service. If |
-e {NONE |SESSION | SELECT} |
Failover type. For standalone servers, applicable in Oracle Data Guard environments only. |
-m {NONE | BASIC} |
Failover method. For standalone servers, applicable in Oracle Data Guard environments only. |
-w integer
|
Failover delay. For standalone servers, applicable in Oracle Data Guard environments only. |
-z integer
|
Failover retries. For standalone servers, applicable in Oracle Data Guard environments only. |
-j {SHORT | LONG} |
Connection load balancing goal |
-B {SERVICE_TIME | THROUGHPUT | NONE} |
Run-time load balancing goal |
-q {TRUE | FALSE} |
Send Oracle Advanced Queuing (AQ) HA notifications. For standalone servers, applicable in Oracle Data Guard environments only. |
-t edition_name
|
The initial session edition of the service When an edition is specified for a service, all subsequent connections that specify the service use this edition as the initial session edition. However, if a session connection specifies a different edition, then the edition specified in the session connection is used for the initial session edition. SRVCTL does not validate the specified edition name. During connection, the connect user must have |
This example adds the sales
service for the database with DB_UNIQUE_NAME
dbcrm
. The service is started only when dbcrm
is in PRIMARY
mode.
srvctl add service -d dbcrm -s sales -l PRIMARY
See Also:
The section in Oracle Database PL/SQL Packages and Types Reference on the DBMS_SERVICE
package for more information about the options for this command
The srvctl
config
command displays the Oracle Restart configuration of the specified component or set of components.
Table 4-15 srvctl config Summary
Command | Description |
---|---|
Displays the Oracle Restart configuration information for the Oracle ASM instance |
|
Displays the Oracle Restart configuration information for the specified database, or lists all databases managed by Oracle Restart |
|
Displays the Oracle Restart configuration information for all listeners or for the specified listener |
|
Displays the current configuration information for ONS. |
|
For the specified database, displays the Oracle Restart configuration information for the specified database service or for all database services |
Displays the Oracle Restart configuration information for the Oracle ASM instance.
Displays the Oracle Restart configuration information for the specified database, or lists all databases managed by Oracle Restart.
Use the srvctl
config
database
command with the following syntax:
srvctl config database [-d db_unique_name [-a]]
Table 4-17 srvctl config database Options
Option | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-a |
Display enabled/disabled status also |
An example of this command to list all Oracle Restart–managed databases is:
srvctl config database dbcrm orcl
An example of this command to display configuration and enabled/disabled status for the database with the DB_UNIQUE_ID
orcl
is:
srvctl config database -d orcl -a Database unique name: orcl Database name: orcl Oracle home: /u01/app/oracle/product/11.2.0/dbhome_1 Oracle user: oracle Spfile: +DATA/orcl/spfileorcl.ora Domain: us.example.com Start options: open Stop options: immediate Database role: Management policy: automatic Disk Groups: DATA Services: mfg,sales Database is enabled
Displays the Oracle Restart configuration information for all Oracle Restart–managed listeners or for the specified listener.
Use the srvctl
config
listener
command with the following syntax:
srvctl config listener [-l listener_name]
Table 4-18 srvctl config listener Options
Option | Description |
---|---|
-l listener_name
|
Listener name. If omitted, configuration information for all Oracle Restart–managed listeners is displayed. |
For the specified database, displays the Oracle Restart configuration information for the specified database service or for all Oracle Restart–managed database services.
Use the srvctl
config
service
command with the following syntax:
srvctl config service -d db_unique_name [-s service_name] [-a]
Table 4-19 srvctl config service Options
Option | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-s service_name
|
Database service name. If omitted, SRVCTL displays configuration information for all Oracle Restart–managed services for the database |
-a |
Display detailed configuration information |
An example of this command is:
srvctl config service -d dbcrm -s sales Service name: sales Service is enabled Cardinality: SINGLETON Disconnect: true Service role: PRIMARY Management policy: automatic DTP transaction: false AQ HA notifications: false Failover type: NONE Failover method: NONE TAF failover retries: 0 TAF failover delay: 0 Connection Load Balancing Goal: NONE Runtime Load Balancing Goal: NONE TAF policy specification: NONE Edition: e2
Disables a component, which suspends management of that component by Oracle Restart. The srvctl
disable
command is intended to be used when a component must be repaired or shut down for maintenance, and should not be restarted automatically. When you disable a component:
It is no longer automatically restarted.
It is no longer automatically started through a dependency.
It cannot be started with SRVCTL.
To perform srvctl
disable
operations, you must be logged in to the database host computer with the proper user account. See "Preparing to Run SRVCTL" for more information.
See Also:
The enable commandTable 4-20 srvctl disable Summary
Command | Description |
---|---|
Disables the Oracle ASM instance |
|
Disables a database |
|
Disables an Oracle ASM disk group |
|
Disables the specified listener or all listeners |
|
Disables ONS |
|
Disables one or more database services for the specified database |
Disables the specified database.
Use the srvctl
disable
database
command with the following syntax:
srvctl disable database -d db_unique_name
Table 4-21 srvctl disable database Options
Option | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
Disables an Oracle ASM disk group.
Disables the specified listener or all listeners.
Disables one or more database services.
Use the srvctl
disable
service
command with the following syntax:
srvctl disable service -d db_unique_name -s service_name_list
Table 4-25 srvctl disable service Options
Option | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-s service_name_list
|
Comma-delimited list of database service names |
The srvctl
enable
command reenables the specified disabled component so that:
Oracle Restart can automatically restart it.
It can be automatically started through a dependency.
You can start it manually with SRVCTL.
If the component is already enabled, then the command is ignored.
When you add a component to the Oracle Restart configuration, it is enabled by default.
To perform srvctl
enable
operations, you must be logged in to the database host computer with the proper user account. See "Preparing to Run SRVCTL" for more information.
Table 4-26 srvctl enable Summary
Command | Description |
---|---|
Enables an Oracle ASM instance. |
|
Enables a database. |
|
Enables an Oracle ASM disk group. |
|
Enables the specified listener or all listeners. |
|
Enables ONS. |
|
Enables one or more database services for the specified database. |
See Also:
The disable commandEnables the specified database.
Use the srvctl
enable
database
command with the following syntax:
srvctl enable database -d db_unique_name
Table 4-27 srvctl enable database Options
Option | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
Enables an Oracle ASM disk group.
Enables the specified listener or all listeners.
Enables one or more database services for the specified database.
Use the srvctl
enable
service
command with the following syntax:
srvctl enable service -d db_unique_name -s service_name_list
Table 4-31 srvctl enable service Options
Option | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-s service_name_list
|
Comma-delimited list of database service names |
Gets and displays environment variables and their values from the Oracle Restart configuration for a database, listener, or Oracle ASM instance.
Table 4-32 srvctl getenv Summary
Command | Description |
---|---|
Displays the configured environment variables for the Oracle ASM instance |
|
Displays the configured environment variables for the specified database instance |
|
Displays the configured environment variables for the specified listener |
See Also:
Displays the configured environment variables for the Oracle ASM instance.
Use the srvctl
getenv
asm
command with the following syntax:
srvctl getenv asm [-t name_list]
Table 4-33 srvctl getenv asm Options
Options | Description |
---|---|
-t name_list
|
Comma-delimited list of names of environment variables to display. If omitted, SRVCTL displays all configured environment variables for Oracle ASM. |
Displays the configured environment variables for the specified database.
Use the srvctl
getenv
database
command with the following syntax:
srvctl getenv database -d db_unique_name [-t name_list]
Table 4-34 srvctl getenv database Options
Options | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-t name_list
|
Comma-delimited list of names of environment variables to display. If omitted, SRVCTL displays all configured environment variables. |
Displays the configured environment variables for the specified listener.
Use the srvctl
getenv
listener
command with the following syntax:
srvctl getenv listener [-l listener_name] [-t name_list]
Table 4-35 srvctl getenv listener Options
Options | Description |
---|---|
-l listener_name
|
Listener name. If omitted, SRVCTL lists environment variables for all listeners. |
-t name_list
|
Comma-delimited list of names of environment variables to display. If omitted, SRVCTL displays all configured environment variables. |
Modifies the Oracle Restart configuration of a component. The change takes effect when the component is next restarted.
To perform srvctl
modify
operations, you must be logged in to the database host computer with the proper user account. See "Preparing to Run SRVCTL" for more information.
Table 4-36 srvctl modify Summary
Command | Description |
---|---|
Modifies the configuration for Oracle ASM |
|
Modifies the configuration for a database |
|
Modifies the configuration for the specified listener or all listeners |
|
Modifies ONS |
|
Modifies the configuration for a database service |
Modifies the Oracle Restart configuration for the Oracle ASM instance.
Use the srvctl
modify
asm
command with the following syntax:
srvctl modify asm [-l listener_name] [-p spfile] [-d asm_diskstring]
Table 4-37 srvctl modify asm Options
Option | Description |
---|---|
-l listener_name
|
Name of the listener with which Oracle ASM must register. A weak dependency is established with this listener. (Before Oracle ASM is started, Oracle Restart ensures that this listener is started.) |
-p spfile
|
The full path of the server parameter file for the database. If omitted, the default SPFILE is used. |
-d asm_diskstring
|
Oracle ASM disk group discovery string. An Oracle ASM discovery string is a comma-delimited list of strings that limits the set of disks that an Oracle ASM instance discovers. The discovery strings can include wildcard characters. Only disks that match one of the strings are discovered. |
An example of this command is:
srvctl modify asm -l crmlistener
See Also:
Oracle Automatic Storage Management Administrator's Guide for more information about Oracle ASM disk group discovery stringsModifies the Oracle Restart configuration for a database.
Use the srvctl
modify
database
command with the following syntax:
srvctl modify database -d db_unique_name [-o oracle_home] [-u oracle_user] [-m domain_name] [-n db_name] [-i instance_name] [-p spfile] [-s start_options] [-t stop_options] [-r {PRIMARY | PHYSICAL_STANDBY | LOGICAL_STANDBY | SNAPSHOT_STANDBY}] [-y {automatic | manual}] [-a disk_group_list] [-z]
Table 4-38 srvctl modify database Options
Option | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-u oracle_user
|
Name of the Oracle user who owns the Oracle home directory |
-z |
Remove the database's dependency on Oracle ASM disk groups |
(Other options) |
See Table 4-11 |
Modifies the Oracle Restart configuration for the specified listener or all listeners.
Use the srvctl
modify
listener
command with the following syntax:
srvctl modify listener [-l listener_name] [-p endpoints] [-o Oracle_home]
Table 4-39 srvctl modify listener Options
Option | Description |
---|---|
-l listener_name
|
Listener name. If omitted, all listener configurations are modified. |
-p endpoints
|
Comma separated TCP ports or listener endpoints. endpoints syntax is: "[TCP:]port[, ...] [/IPC:key] [/NMP:pipe_name] [/TCPS:s_port] [/SDP:port]" |
-o Oracle_home
|
New Oracle home for the listener |
Modifies ONS.
Use the srvctl
modify
ons
command with the following syntax:
srvctl modify ons [-e em_port] [-l ons_local_port] [-r ons_remote_port] [-t host[:port],[host[:port]...]] [-v]
Table 4-40 srvctl modify ons Options
Option | Description |
---|---|
-e em_port
|
ONS listening port for Oracle Enterprise Manager. The default is 2016. |
-l ons_local_port
|
ONS listening port for local client connections |
-r ons_remote_port
|
ONS listening port for connections from remote hosts |
-t host[:port],[host[:port],... |
A list of Note: If |
-v |
Verbose output |
Modifies the Oracle Restart configuration of a database service.
Note:
Oracle recommends that you limit configuration changes to the minimum requirement and that you not perform other service operations while the online service modification is in progress.Use the srvctl
modify
service
command with the following syntax:
srvctl modify service -d db_unique_name -s service_name] [-l [PRIMARY][,PHYSICAL_STANDBY][,LOGICAL_STANDBY][,SNAPSHOT_STANDBY]] [-y {AUTOMATIC | MANUAL}] [-e {NONE | SESSION | SELECT}] [-m {NONE | BASIC}] [-w integer] [-z integer] [-j {SHORT | LONG}] [-B {SERVICE_TIME | THROUGHPUT | NONE}] [-q {TRUE | FALSE}] -t edition_name
Table 4-41 srvctl modify service Options
Option | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-s service_name
|
Service name |
-t edition_name
|
The initial session edition of the service If this option is not specified, then the edition is not modified for the service. If this option is specified but When an edition is specified for a service, all subsequent connections that specify the service use this edition as the initial session edition. However, if a session connection specifies a different edition, then the edition specified in the session connection is used for the initial session edition. SRVCTL does not validate the specified edition name. During connection, the connect user must have |
(other options) |
See Table 4-14 |
Removes the specified component from the Oracle Restart configuration. Oracle Restart no longer manages the component. Any environment variable settings for the component are also removed.
Before you remove a component from the Oracle Restart configuration, you must use SRVCTL to stop it. Oracle recommends that you disable the component before removing it, but this is not required.
To perform srvctl
remove
operations, you must be logged in to the database host computer with the proper user account. See "Preparing to Run SRVCTL" for more information.
Table 4-42 srvctl remove Summary
Command | Description |
---|---|
Removes the Oracle ASM instance |
|
Removes a database |
|
Removes an Oracle ASM disk group |
|
Removes a listener |
|
Removes an ONS |
|
Removes one or more database services |
Removes an Oracle ASM instance.
Removes a database. Prompts for confirmation first.
Use the srvctl
remove
database
command with the following syntax:
srvctl remove database -d db_unique_name [-f] [-y] [-v]
Table 4-44 srvctl remove database Options
Options | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-f |
Force. Removes the database even if it is running. |
-y |
Suppresses the confirmation prompt and removes immediately |
-v |
Verbose output. A success or failure message is displayed. |
Removes an Oracle ASM disk group.
Removes the specified listener or all listeners.
Use the srvctl
remove
listener
command with the following syntax:
srvctl remove listener [-l listener_name] [-a] [-f]
Table 4-46 srvctl remove listener Options
Options | Description |
---|---|
-l listener_name
|
Name of the listener that you want to remove. If omitted, then the default is |
-a |
Remove all listeners |
-f |
Force. Removes the listener even if databases are using it. |
Removes the specified database service.
Use the srvctl
remove
service
command as follows:
srvctl remove service -d db_unique_name -s service_name]
Table 4-48 srvctl remove service Options
Options | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-s service_name
|
Service name |
The setenv
command sets values of environment variables in the Oracle Restart configuration for a database, a listener, or the Oracle ASM instance.
To perform srvctl
setenv
operations, you must be logged in to the database host computer with the proper user account. See "Preparing to Run SRVCTL" for more information.
Table 4-49 srvctl setenv and unsetenv Summary
Command | Description |
---|---|
Sets environment variables in the Oracle Restart configuration for an Oracle ASM instance |
|
Sets environment variables in the Oracle Restart configuration for a database instance |
|
Sets environment variables in the Oracle Restart configuration for the specified listener or all listeners |
See Also:
Sets the values of environment variables in the Oracle Restart configuration for the Oracle ASM instance. Before starting the instance, Oracle Restart sets environment variables to the values stored in the configuration.
Use the srvctl
setenv
asm
command with the following syntax:
srvctl setenv asm {-t name=val[,name=val,...] | -T name=val}
Table 4-50 srvctl setenv database Options
Options | Description |
---|---|
-t name=val[,name=val,...] |
Comma-delimited list of name/value pairs of environment variables |
-T name=val |
Enables single environment variable to be set to a value that contains commas or other special characters |
Sets the values of environment variables in the Oracle Restart configuration for a database instance. Before starting the instance, Oracle Restart sets environment variables to the values stored in the configuration.
Use the srvctl
setenv
database
command with the following syntax:
srvctl setenv database -d db_unique_name {-t name=val[,name=val,...] | -T name=val}
Table 4-51 srvctl setenv database Options
Options | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-t name=val[,name=val,...] |
Comma-delimited list of name/value pairs of environment variables |
-T name=val |
Enables single environment variable to be set to a value that contains commas or other special characters |
Sets the values of environment variables in the Oracle Restart configuration for a listener. Before starting the listener, Oracle Restart sets environment variables to the values stored in the configuration.
Use the srvctl
setenv
listener
command with the following syntax:
srvctl setenv listener [-l listener_name] {-t name=val[,name=val,...] | -T name=val}
Table 4-52 srvctl setenv listener Options
Options | Description |
---|---|
-l listener_name
|
Listener name. If omitted, sets the specified environment variables in all listener configurations. |
-t name=val[,name=val,...] |
Comma-delimited list of name/value pairs of environment variables |
-T name=val |
Enables single environment variable to be set to a value that contains commas or other special characters |
Starts the specified component or components.
Table 4-53 srvctl start Summary
Command | Description |
---|---|
Starts the Oracle ASM instance |
|
Starts the specified database |
|
Starts (mounts) the specified Oracle ASM disk group |
|
Starts all of the components managed by Oracle Restart in the specified Oracle home |
|
Starts the specified listener or all Oracle Restart–managed listeners |
|
Starts ONS |
|
Starts the specified database service or services |
Starts the Oracle ASM instance.
For this command, SRVCTL connects "/ as sysasm" to perform the operation. To run such operations, the owner of the executables in the Oracle Grid Infrastructure home must be a member of the OSASM group, and users running the commands must also be in the OSASM group.
Use the srvctl
start
asm
command with the following syntax:
srvctl start asm [-o start_options]
Table 4-54 srvctl start asm Option
Option | Description |
---|---|
-o start_options
|
Comma-delimited list of options for the startup command ( |
Starts the specified database instance.
For this command, SRVCTL connects "/ as sysdba" to perform the operation. To run such operations, the owner of the Oracle executables in the database Oracle home must be a member of the OSDBA group (for example, the dba
group on UNIX and Linux), and users running the commands must also be in the OSDBA group.
Use the srvctl
start
database
command with the following syntax:
srvctl start database -d db_unique_name [-o start_options]
Table 4-55 srvctl start database Options
Option | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-o start_options
|
Comma-delimited list of options for the startup command (for example: Notes:
|
Starts (mounts) an Oracle ASM disk group.
Starts all of the components that are managed by Oracle Restart in the specified Oracle home. The Oracle home can be an Oracle Database home or an Oracle Grid Infrastructure home.
This command starts the components that were stopped by a srvctl
stop
home
. This command uses the information in the specified state file to identify the components to start.
Note:
Use this command to restart components after you install a patch in an Oracle home.Use the srvctl
start
home
command with the following syntax:
srvctl start home -o oracle_home -s state_file
Table 4-57 srvctl start home Options
Option | Description |
---|---|
-o |
Complete path of the Oracle home |
-s |
Complete path of the state file. The state file contains the current state information for the components in the Oracle home and is created when the |
Starts the specified listener or all listeners.
Starts the specified database service or services.
Use the srvctl
start
service
command with the following syntax:
srvctl start service -d db_unique_name [-s service_name_list] [-o start_options]
Table 4-60 srvctl start service Options
Option | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-s service_name_list
|
Comma-delimited list of service names. The service name list is optional and if not provided, SRVCTL starts all of the database's services |
-o start_options
|
Options for database startup (for example: |
Displays the running status of the specified component or set of components.
Table 4-61 srvctl status Summary
Command | Description |
---|---|
Displays the running status of the Oracle ASM instance |
|
Displays the running status of a database |
|
Displays the running status of an Oracle ASM disk group |
|
Displays the running status of all of the components that are managed by Oracle Restart in the specified Oracle home |
|
Displays the running status of the specified listener or all Oracle Restart–managed listeners |
|
Displays the running status of ONS |
|
Displays the running status of one or more services |
Displays the running status of the Oracle ASM instance.
Displays the running status of the specified database.
Use the srvctl
status
database
command with the following syntax:
srvctl status database -d db_unique_name [-f] [-v]
Table 4-63 srvctl status database Options
Option | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-f |
Display a message if the database is disabled |
-v |
Verbose output. Lists the database services that are running. |
Displays the running status of an Oracle ASM disk group.
Displays the running status of all of the components that are managed by Oracle Restart in the specified Oracle home. The Oracle home can be an Oracle Database home or an Oracle Grid Infrastructure home.
This command writes the current status of the components to the specified state file.
Displays the running status of the specified listener or of all Oracle Restart–managed listeners.
Displays the running status of one or more database services.
Use the srvctl
status
service
command with the following syntax:
srvctl status service -d db_unique_name [-s service_name_list] [-f] [-v]
Table 4-67 srvctl status service Options
Option | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-s service_name_list
|
Comma-delimited list of service names. If omitted, status is listed for all database services for the designated database. |
-f |
Display a message if a service is disabled |
-v |
Verbose output |
Stops the specified component or components.
If you want a component to remain stopped after you issue a srvctl
stop
command, disable the component. See the disable command.
Note:
If a component is stopped and is not disabled, it could restart as a result of another planned operation. That is, although a stopped component will not restart as a result of a failure, it might be started if a dependent component is started with asrvctl
start
command.Table 4-68 srvctl stop Summary
Command | Description |
---|---|
Stops the Oracle ASM instance |
|
Stops the specified database instance |
|
Stops (dismounts) the specified Oracle ASM disk group |
|
Stops all of the components managed by Oracle Restart in the specified Oracle home |
|
Stops the specified listener or all listeners |
|
Stops ONS |
|
Stops the specified database service or services |
Stops the Oracle ASM instance.
Use the srvctl
stop
asm
command with the following syntax:
srvctl stop asm [-o stop_options] [-f]
Table 4-69 srvctl stop asm Option
Option | Description |
---|---|
-o stop_options
|
Options for the shutdown operation, for example, |
-f |
Force. Must be present if disk groups are currently started (mounted). This option enables SRVCTL to stop the disk groups before stopping Oracle ASM. Each dependent database instance is also stopped according to its stop options, or with the |
Stops a database.
Use the srvctl
stop
database
command with the following syntax:
srvctl stop database -d db_unique_name [-o stop_options] [-f]
Table 4-70 srvctl stop database Options
Option | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-o stop_options
|
|
-f |
Force. Stops the database, its services, and any resources that depend on those services. |
Stops (dismounts) an Oracle ASM disk group.
Use the srvctl
stop
diskgroup
command with the following syntax:
srvctl stop diskgroup -g diskgroup_name [-f]
Table 4-71 srvctl stop diskgroup Options
Option | Description |
---|---|
-g diskgroup_name
|
Disk group name |
-f |
Force. Dismount the disk group even if some files in the disk group are open. |
Stops all of the components that are managed by Oracle Restart in the specified Oracle home. The Oracle home can be an Oracle Database home or an Oracle Grid Infrastructure home.
This command identifies the components that it stopped in the specified state file.
Note:
Before stopping the components in an Oracle Grid Infrastructure home, stop the components in a dependent Oracle Database home.
Use this command to stop components before you install a patch in an Oracle home.
Use the srvctl
stop
home
command with the following syntax:
srvctl stop home -o oracle_home -s state_file [-t stop_options] [-f]
Table 4-72 srvctl stop home Options
Option | Description |
---|---|
-o |
Complete path of the Oracle home |
-s |
Complete path of the state file |
-t stop_options
|
|
-f |
Force stop each component |
Stops the designated listener or all Oracle Restart–managed listeners. Stopping a listener does not cause databases that are registered with the listener to be stopped.
Use the srvctl
stop
listener
command with the following syntax:
srvctl stop listener [-l listener_name] [-f]
Table 4-73 srvctl stop listener Options
Option | Description |
---|---|
-l listener_name
|
Listener name. If omitted, all Oracle Restart–managed listeners are stopped. |
-f |
Force. Passes the stop command with the |
Stops one or more database services.
Use the srvctl
stop
service
command with the following syntax:
srvctl stop service -d db_unique_name [-s service_name_list] [-f]
Table 4-75 srvctl stop service Options
Option | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-s service_name_list
|
Comma-delimited list of database service names. If you do not provide a service name list, then SRVCTL stops all services on the database |
-f |
Force. This option disconnects all of the stopped services' sessions immediately. Uncommitted transactions are rolled back. If this option is omitted, active sessions remain connected to the services, but no further connections to the services can be made. |
The unsetenv
command deletes one or more environment variables from the Oracle Restart configuration for a database, a listener, or an Oracle ASM instance.
To perform srvctl
unsetenv
operations, you must be logged in to the database host computer with the proper user account. See "Preparing to Run SRVCTL" for more information.
Table 4-76 srvctl unsetenv Command Summary
Command | Description |
---|---|
Removes the specified environment variables from the Oracle Restart configuration for the Oracle ASM instance |
|
Removes the specified environment variables from the Oracle Restart configuration for a database |
|
Removes the specified environment variables from the Oracle Restart configuration for a listener or all listeners |
See Also:
Removes the specified environment variables from the Oracle Restart configuration for the Oracle ASM instance.
Removes the specified environment variables from the Oracle Restart configuration for the specified database.
Use the srvctl
unsetenv
database
command as follows:
srvctl unsetenv database -d db_unique_name -t name_list
Table 4-78 srvctl unsetenv database Options
Options | Description |
---|---|
-d db_unique_name
|
Unique name for the database. Must match the |
-t name_list
|
Comma-delimited list of environment variables to remove |
Removes the specified environment variables from the Oracle Restart configuration for the specified listener or all listeners.
Use the srvctl
unsetenv
listener
command with the following syntax:
srvctl unsetenv listener [-l listener_name] -t name_list
Table 4-79 srvctl unsetenv listener Options
Options | Description |
---|---|
-l listener_name
|
Listener name. If omitted, the specified environment variables are removed from the configurations of all listeners. |
-t name_list
|
Comma-delimited list of environment variables to remove |
This section provides details about the syntax for the CRSCTL commands that are relevant for Oracle Restart.
Note:
You must be the root user or Oracle grid infrastructure software owner to run these CRSCTL commands.CRSCTL Command Syntax Overview
CRSCTL expects the following command syntax:
crsctl command has
where command
is a verb such as start
, stop
, or enable
. The has
object indicates Oracle high availability services. See Table 4-80 for a complete list of commands.
CRSCTL commands and components are case insensitive.
Table 4-80 Summary of CRSCTL Commands
Command | Description |
---|---|
Displays the Oracle Restart status. |
|
Displays the Oracle Restart configuration. |
|
Disables automatic restart of Oracle Restart. |
|
Enables automatic restart of Oracle Restart. |
|
Starts Oracle Restart. |
|
Stops Oracle Restart. |
Stops Oracle Restart.
crsctl stop has [-f]
Table 4-81 crsctl stop has Options
Options | Description |
---|---|
-f |
Force. If any resources that are managed by Oracle Restart are still running, then try to stop these resources gracefully. If a resource cannot be stopped gracefully, then try to force the resource to stop. For example, if an Oracle ASM instance is running, then When the |