Call now: 252-767-6166  
Oracle Training Oracle Support Development Oracle Apps

 E-mail Us
 Oracle Articles
New Oracle Articles

 Oracle Training
 Oracle Tips

 Oracle Forum
 Class Catalog

 Remote DBA
 Oracle Tuning
 Emergency 911
 RAC Support
 Apps Support
 Oracle Support

 SQL Tuning

 Oracle UNIX
 Oracle Linux
 Remote s
 Remote plans
 Application Server

 Oracle Forms
 Oracle Portal
 App Upgrades
 SQL Server
 Oracle Concepts
 Software Support

 Remote S


 Consulting Staff
 Consulting Prices
 Help Wanted!


 Oracle Posters
 Oracle Books

 Oracle Scripts

Don Burleson Blog 









Server Control Utility (SRVCTL)

Oracle RAC Cluster Tips by Burleson Consulting

This is an excerpt from the bestselling book Oracle Grid & Real Application Clusters.  To get immediate access to the code depot of working RAC scripts, buy it directly from the publisher and save more than 30%.

To manage the RAC environment, first build a configuration profile and optionally save it. The configuration can be built by commands such as add and setenv. It is a good practice to build configuration profiles and export them to ASCII files.

SRVCTL syntax has the following components:

> srvctl verb noun options


srvctl is the SRVCTL command.

verb is an action word such as start, stop, or remove.

noun is an object upon which SRVCTL performs the action verb, such as a database or instance. Alternatively, abbreviations can be used, which in this case are db and inst respectively.

options extends the use of preceding verb-noun combinations.

To see the online command syntax and options for each SRVCTL command, enter:

> srvctl verb noun -h

Table 8.9 shows the common SRVCTL verbs.




Add a database or instance.


Lists the configuration for the database or instance.


Lists the environment variables in the SRVM configuration.


Modifies the instance configuration.


Removes the database or instance.


Sets the environment variable in the SRVM configuration.


Starts the database or instance.


Status of the database or instance.


Stops the database or instance.


Sets the environment variable in the SRVM configuration to unspecified

Table 8.9: Common SRVCTL verbs

Table 8.10 shows the common srvctl nouns.






Operation refers to objects for the database.



To add, configure, enable, start, obtain the status of, stop, disable, and remove ASM instances.



Operation refers to objects for the instances.


no abbreviation

To add, configure, modify, manage environment variables for, start, obtain the status of, stop, and remove node applications.



To add, configure, modify, manage environment variables for, enable, start, obtain the status of, relocate, disable, stop, and remove services from your cluster database.

Table 8.10: Common SRVCTL nouns

Table 8.11 shows the common srvctl command options.




Database name


Print Usage


Comma-separated list of instance names


Node names or comma-separated node list

Table 8.11: Common SRVCTL command options

Some commonly used commands will be examined next.

srvctl add

This command adds configuration information for the database or for named instances.  Command specific actions for add command:




Node name that will support an instance.


$ORACLE_HOME to locate lsnrctl (node option) and oracle binaries (other options)




Database domain name, in the form ?

For example, to add a new database:

> srvctl add database -d racdb -o /app/oracle/product/920

To add named instances to a database:

> srvctl add instance -d racdb -i rac1 -n mynode1
> srvctl add instance -d racdb -i rac2 -n mynode2
> srvctl add instance -d racdb -i rac3 -n mynode3
srvctl config

This command displays a list of configured databases. The syntax is:

srvctl config database -d database_name

For example, to display configured databases:

> srvctl  config database -d RACDB

Gives the output:

mynode1 RACDB1 /app/oracle/product/dbms/920
mynode2 RACDB2 /app/oracle/product/dbms/920
srvctl getenv

This command displays values for the environment from the SRVM configuration file. The syntax is:

> srvctl getenv database -d database_name [-t name] 

> srvctl getenv instance -d database_name
  -i instance_name [-t name]

For example, to list all environment variables for a database:

> srvctl getenv database ?d racdb
srvctl setenv

This command sets values for the environment in the SRVM configuration file. The syntax is:

> srvctl setenv database -d database_name
  -t name=value [,name=value,?]

srvctl setenv instance -d database_name
   [-i instance_name] -t name=value [,name=value,?]

For example, to set list all environment variables for a database:

> srvctl setenv database -d mydb -t LANG=en
srvctl start

This command starts the database, all or named instances, and all listeners associated with the database. The syntax is:

> srvctl start database -d database_name
  [-o start_options]  [-c connect_string]

> srvctl start instance -d database_name -i instance_name
  [,insta_name-list] [-o start_options] [-c connect_string]

Command-Specific Options for srvctl start




Options passed directly to startup command in SQL*Plus including PFILE.


Connect string for connecting to the Oracle instance using SQL*Plus.

For example, to start the database and all enabled instances:

> srvctl start database -d mydb

To start specified instances:

> srvctl start instance -d racdb -i racdb1, racdb3
srvctl status

This command displays the status of the database and instance. The syntax is:

> srvctl status database -d database_name 

> srvctl status instance -d database_name
-i instance_name [,instance_name-list]

For example, to get the current status of two instances:

> srvctl  status instance -d RAC -i racdb1, racdb2

Gives the output:

  Instance RACDB1 is running on node mynode1
  Instance RACDB2 is not running on node mynode1
srvctl stop

This command stops the database and all or named instances. The syntax is:

> srvctl stop database -d database_name
  [-o stop_options] [-c connect_string] 

> srvctl stop instance -d database_name
  -i instance_name [,instance_name_list]
  [-o stop_options][-c connect_string]

For example, to stop the database all instances:

> srvctl stop database -d RACDB

To stop named instances:

> srvctl stop instance -d RACDB -i racdb1

Use the srvconfig command to export/import the SRVM configuration information. The following is an example of how to export the contents of the configuration information to the text file:

> srvconfig -exp file_name

To import the configuration information from the text file named to the configuration repository for the RAC, use the command:

> srvconfig -imp file_name


This is an excerpt from the bestselling book Oracle Grid & Real Application Clusters, Rampant TechPress, by Mike Ault and Madhu Tumma.

You can buy it direct from the publisher for 30%-off and get instant access to the code depot of Oracle tuning scripts.


Oracle Training at Sea
oracle dba poster

Follow us on Twitter 
Oracle performance tuning software 
Oracle Linux poster


Burleson is the American Team

Note: This Oracle documentation was created as a support and Oracle training reference for use by our DBA performance tuning consulting professionals.  Feel free to ask questions on our Oracle forum.

Verify experience! Anyone considering using the services of an Oracle support expert should independently investigate their credentials and experience, and not rely on advertisements and self-proclaimed expertise. All legitimate Oracle experts publish their Oracle qualifications.

Errata?  Oracle technology is changing and we strive to update our BC Oracle support information.  If you find an error or have a suggestion for improving our content, we would appreciate your feedback.  Just  e-mail:  

and include the URL for the page.


Burleson Consulting

The Oracle of Database Support

Oracle Performance Tuning

Remote DBA Services


Copyright © 1996 -  2017

All rights reserved by Burleson

Oracle ® is the registered trademark of Oracle Corporation.

Remote Emergency Support provided by Conversational