Database-Course

SRVCTL (Server Control utility) commands in Oracle

srvctl commands – 12c

  • To manage Oracle ASM on Oracle Database 12c installations, use SRVCTL in the Oracle Grid Infrastructure home for a cluster (Grid home). If you have Oracle RAC or Oracle Database installed, then you cannot use SRVCTL in the database home to manage Oracle ASM.
  • You cannot use this command when OCR is stored in Oracle ASM because it will not stop Oracle ASM. To stop Oracle ASM you must shut down Oracle Clusterware.

srvctl commands at database level

Adding database

srvctl add database -d db_name -o ORACLE_HOME [-m domain_name][-p spfile] [-A name|ip/netmask][-r {PRIMARY|PHYSICAL_STANDBY|LOGICAL_STANDBY|SNAPSHOT_STANDBY}][-s start_options] [-n db_name] [-y {AUTOMATIC|MANUAL}]srvctl add database -d prod -o /u01/oracle/product/102/prod

Removing database

srvctl remove database -d db_name [-f]srvctl remove database -d prod

Starting database

srvctl start database -d db_name [-o start_options] [-c connect_str|-q]
srvctl start database -d db_name [-o open]
srvctl start database -d db_name -o nomount
srvctl start database -d db_name -o mount
srvctl start db -d prod
srvctl start database -d apps -o open

Stopping database

srvctl stop database -d db_name [-o stop_options] [-c connect_str|-q]
srvctl stop database -d db_name [-o normal]
srvctl stop database -d db_name -o transactional
srvctl stop database -d db_name -o immediate
srvctl stop database -d db_name -o abort
srvctl stop db -d crm -o immediate

Checking status of database

srvctl status database -d db_name [-f] [-v] [-S level]
srvctl status database -d db_name -v service_name
srvctl status database -d hrms

Enable database

srvctl enable database -d db_name
srvctl enable database -d vis

Disable database

srvctl disable database -d db_name
srvctl disable db -d vis

Configuring database

srvctl config database
srvctl config database -d db_name [-a] [-t]
srvctl config database
srvctl config database -d HYD -a

Modifying database

srvctl modify database -d db_name [-n db_name] [-o ORACLE_HOME] [-m domain_name] [-p spfile]
[-r {PRIMARY|PHYSICAL_STANDBY|LOGICAL_STANDBY|SNAPSHOT_STANDBY}] [-s start_options] [-y {AUTOMATIC|MANUAL}]
srvctl modify database -d hrms -r physical_standby
srvctl modify db -d RAC -p /u03/oradata/RAC/spfileRAC.ora -- moves p file
srvctl modify database –d HYD –o /u01/app/oracle/product/11.1/db –s open

Getting environment

srvctl getenv database -d db_name [-t name_list]
srvctl getenv database -d prod

Setting environment

srvctl setenv database -d db_name {-t name=val[,name=val,...]|-T name=val}
srvctl setenv database –d HYD –t “TNS_ADMIN=/u01/app/oracle/product/11.1/asm/network/admin”
srvctl setenv db -d prod -t LANG=en

Unsetting environment

srvctl unsetenv database -d db_name [-t name_list]
srvctl unsetenv database -d prod -t CLASSPATH

srvctl commands at instance level

Adding instance

srvctl add instance –d db_name –i inst_name -n node_name
Example - 
srvctl add instance -d prod -i prod01 -n linux01

Removing instance

srvctl remove instance –d db_name –i inst_name [-f]
Example - 
srvctl remove instance -d prod -i prod01

Starting instance

srvctl start instance -d db_name -i inst_names [-o start_options] [-c connect_str|-q]
srvctl start instance –d db_name –i inst_names [-o open]
srvctl start instance –d db_name –i inst_names -o nomount
srvctl start instance –d db_name –i inst_names -o mount
Example - 
srvctl start instance –d dev -i dev2

Stopping instance

srvctl stop instance -d db_name -i inst_names [-o stop_options] [-c connect_str|-q]
srvctl stop instance –d db_name –i inst_names [-o normal]
srvctl stop instance –d db_name –i inst_names -o transactional
srvctl stop instance –d db_name –i inst_names -o immediate
srvctl stop instance –d db_name –i inst_names -o abort
Example - 
srvctl stop inst –d vis -i vis

Checking instance status

srvctl status instance –d db_name –i inst_names [-f] [-v] [-S level]
Example - 
srvctl status inst –d racdb -i racdb2

Enable instance

srvctl enable instance –d db_name –i inst_names
Example - 
srvctl enable instance -d prod -i "prod1,prod2"

Disable instance

srvctl disable instance –d db_name –i inst_names
Example - 
srvctl disable inst -d prod -i "prod1,prod3"

Modifying instance

srvctl modify instance -d db_name -i inst_name {-s asm_inst_name|-r} -- set dependency of instance to ASM
srvctl modify instance -d db_name -i inst_name -n node_name -- move the instance
srvctl modify instance -d db_name -i inst_name -r -- remove the instance

Getting/Setting/Unsetting environment

srvctl getenv instance –d db_name –i inst_name [-t name_list]
srvctl setenv instance –d db_name [–i inst_name] {-t "name=val[,name=val,...]" | -T "name=val"}
srvctl unsetenv instance –d db_name [–i inst_name] [-t name_list]

Leave a comment