SRVCTL,服务控制实用工具(Service Control Utility),可用于对Oracle Restart和Oracle RAC的配置和管理,本篇主要介绍SRVCTL命令在Oracle Restart中的应用,其中,详细介绍config、status命令,并列出其它命令的用法。
1 srvctl命令语法
Usage: srvctl <command> <object> [<options>]
commands: enable|disable|start|stop|status|add|remove|modify|update|getenv|setenv|unsetenv|config|upgrade|downgrade
objects: database|service|asm|diskgroup|listener|home|ons
2 config命令
srvctl config命令可以展示特定组件或一组组件的Oracle Restart配置信息。
2.1 srvctl config asm
展示asm实例的Oracle Restart配置信息。
1)语法结构
Usage: srvctl config asm [-all]
2)示例
[grid@sz ~]$ srvctl config asm
ASM home: <CRS home>
Password file: +DATA/orapwasm
ASM listener: LISTENER
Spfile: +DATA/ASM/ASMPARAMETERFILE/registry.253.1037659875
ASM diskgroup discovery string: /dev/oracleasm/disks/*
2.2 srvctl config database
展示数据库相关信息。
1)语法结构
Usage: srvctl config database [-db <db_unique_name> [-all]] [-verbose]
2)示例
[grid@sz ~]$ srvctl config database -db orcl -all
Database unique name: orcl
Database name: orcl
Oracle home: /u01/app/oracle/product/12.1.0/dbhome_1
Oracle user: oracle
Spfile: +DATA/ORCL/PARAMETERFILE/spfile.267.1037831659
Password file:
Domain:
Start options: open
Stop options: immediate
Database role: PRIMARY
Management policy: AUTOMATIC
Disk Groups: FRA,DATA
Services:
Database is enabled
OSDBA group:
OSOPER group:
Database instance: orcl
2.3 srvctl config listener
展示监听器相关信息。
1)语法结构
Usage: srvctl config listener [-listener <lsnr_name>]
2)示例
[grid@sz ~]$ srvctl config listener
Name: LISTENER
Type: Database Listener
Home: /u01/app/grid/product/12.1.0/grid
End points: TCP:1521
Listener is enabled.
2.4 srvctl config ons
展示Oracle通知服务信息。
1)语法结构
Usage: srvctl config ons
2)示例
[grid@sz ~]$ srvctl config ons
ONS exists: Local port 6100, remote port 6200, EM port 2016, Uses SSL: false
2.5 srvctl config service
展示服务信息。
1)语法结构
Usage: srvctl config service -db <db_unique_name> [-service <service_name>] [-verbose]
2)示例
[grid@sz ~]$ srvctl config service -db orcl
3 status命令
srvctl status命令用于展示组件对应的运行状态信息。
3.1 srvctl status asm
1)语法结构
Usage: srvctl status asm [-all] [-verbose]
2)示例
[grid@sz ~]$ srvctl status asm -detail
ASM is running on sz
ASM is enabled.
3.2 srvctl status database
1)语法结构
Usage: srvctl status database {-db <db_unique_name> | -thisversion | -thishome} [-force] [-verbose]
2)示例
[grid@sz ~]$ srvctl status database -db orcl -verbose
Database orcl is running. Instance status: Open.
3.3 srvctl status diskgroup
1)语法结构
Usage: srvctl status diskgroup -diskgroup <dg_name> [-all] [-verbose]
2)示例
[grid@sz ~]$ srvctl status diskgroup -diskgroup DATA -detail
Disk Group DATA is running on sz
Disk Group DATA is enabled
3.4 srvctl status home
展示特定的ORACLE HOME下的所有组件的运行状态。
1)语法结构
Usage: srvctl status home -oraclehome <oracle_home> -statefile <state_file>
2)示例
[grid@sz ~]$ srvctl status home -oraclehome /u01/app/grid/product/12.1.0/grid -statefile /home/grid/grid.txt
Disk Group ora.DATA.dg is running on sz
Disk Group ora.FRA.dg is running on sz
ASM is running on sz
Listener LISTENER is running on node sz
[grid@sz ~]$ cat grid.txt
diskgroup-ora.DATA.dg
diskgroup-ora.FRA.dg
asm-ora.asm
lsnr-LISTENER
3.5 srvctl status listener
1)语法结构
Usage: srvctl status listener [-listener <lsnr_name>] [-verbose]
2)示例
[grid@sz ~]$ srvctl status listener
Listener LISTENER is enabled
Listener LISTENER is running on node(s): sz
3.6 srvctl status ons
1)语法结构
Usage: srvctl status ons [-verbose]
2)示例
[grid@sz ~]$ srvctl status ons
ONS is disabled
ONS daemon is not running
3.7 srvctl status service
1)语法结构
Usage: srvctl status service -db <db_unique_name> [-service "<service_name_list>"] [-force] [-verbose]
2)示例
[grid@sz ~]$ srvctl status service -db orcl
4 stop命令
srvctl stop用于停止特定的组件或组件集。
[grid@sz ~]$ srvctl stop -help
The SRVCTL stop command stops, Oracle Restart enabled, starting or running objects.
Usage: srvctl stop database -db <db_unique_name> [-stopoption <stop_options>] [-force]
Usage: srvctl stop service -db <db_unique_name> [-service "<service_name_list>"] [-global_override] [-force] [-verbose]
Usage: srvctl stop asm [-stopoption <stop_options>] [-force]
Usage: srvctl stop listener [-listener <lsnr_name>] [-force]
Usage: srvctl stop diskgroup -diskgroup <dg_name> [-force]
Usage: srvctl stop ons [-verbose]
Usage: srvctl stop home -oraclehome <oracle_home> -statefile <state_file> [-stopoption <stop_options>] [-force]
For detailed help on each command and object and its options use:
srvctl <command> <object> -help [-compatible]
5 start命令
srvctl start用于启动组件及其服务。
[grid@sz ~]$ srvctl start -help
The SRVCTL start command starts, Oracle Restart enabled, non-running objects.
Usage: srvctl start database -db <db_unique_name> [-startoption <start_options>]
Usage: srvctl start service -db <db_unique_name> [-service "<service_name_list>"] [-startoption <start_options>] [-global_override] [-verbose]
Usage: srvctl start asm [-startoption <start_options>]
Usage: srvctl start listener [-listener <lsnr_name>]
Usage: srvctl start diskgroup -diskgroup <dg_name>
Usage: srvctl start ons [-verbose]
Usage: srvctl start home -oraclehome <oracle_home> -statefile <state_file>
For detailed help on each command and object and its options use:
srvctl <command> <object> -help [-compatible]
6 remove命令
[grid@sz ~]$ srvctl remove -help
The SRVCTL remove command removes the configuration, for the object from the Oracle Restart. Environment settings for the object are also removed.
Usage: srvctl remove database -db <db_unique_name> [-force] [-noprompt] [-verbose]
Usage: srvctl remove service -db <db_unique_name> -service <service_name> [-global_override] [-force]
Usage: srvctl remove asm [-force]
Usage: srvctl remove listener [-listener <lsnr_name> | -all] [-force]
Usage: srvctl remove diskgroup -diskgroup <dg_name> [-force]
Usage: srvctl remove ons [-force] [-verbose]
For detailed help on each command and object and its options use:
srvctl <command> <object> -help [-compatible]
7 add命令
[grid@sz ~]$ srvctl add -help
The SRVCTL add command adds the configuration and the Oracle Restart application to the OCR for the cluster database, named instances, named services, or for the named nodes.
Usage: srvctl add database -db <db_unique_name> -oraclehome <oracle_home> [-domain <domain_name>] [-spfile <spfile>] [-pwfile <password_file_path>] [-role {PRIMARY | PHYSICAL_STANDBY | LOGICAL_STANDBY | SNAPSHOT_STANDBY | FAR_SYNC}] [-startoption <start_options>] [-stopoption <stop_options>] [-dbname <db_name>] [-instance <inst_name>] [-policy {AUTOMATIC | MANUAL | NORESTART}] [-diskgroup "<diskgroup_list>"]
Usage: srvctl add service -db <db_unique_name> -service <service_name> [-role [PRIMARY][,PHYSICAL_STANDBY][,LOGICAL_STANDBY][,SNAPSHOT_STANDBY]] [-policy {AUTOMATIC | MANUAL}][-notification {TRUE|FALSE}] [-clbgoal {SHORT|LONG}] [-rlbgoal {NONE|SERVICE_TIME|THROUGHPUT}][-failovertype {NONE|SESSION|SELECT|TRANSACTION}] [-failovermethod {NONE|BASIC}][-failoverretry <failover_retries>] [-failoverdelay <failover_delay>] [-edition <edition>] [-pdb <pluggable_database>] [-global <TRUE|FALSE>] [-maxlag <max_lag_time>] [-sql_translation_profile <sql_translation_profile>] [-commit_outcome {TRUE|FALSE}] [-retention <retention>] [replay_init_time <replay_initiation_time>] [-session_state {STATIC|DYNAMIC}] [-force]
Usage: srvctl add asm [-listener <lsnr_name>] [-spfile <spfile>] [-pwfile <password_file_path>] [-diskstring <asm_diskstring>]
Usage: srvctl add listener [-listener <lsnr_name>] [-skip] [-endpoints "[TCP:]<port>[, ...][/IPC:<key>][/NMP:<pipe_name>][/TCPS:<s_port>] [/SDP:<port>]"] [-oraclehome <path>]
Usage: srvctl add ons [-emport <em_port>] [-onslocalport <ons_local_port>] [-onsremoteport <ons_remote_port>] [-remoteservers <host>[:<port>][,<host>[:<port>]...]] [-verbose]
For detailed help on each command and object and its options use:
srvctl <command> <object> -help [-compatible]
8 modify命令
[grid@sz ~]$ srvctl modify -help
The SRVCTL modify command enables user to modify configuration of the object without removing and adding Oracle Restart resources. The changes takes effect when the application is restarted.
Usage: srvctl modify database -db <db_unique_name> [-dbname <db_name>] [-instance <inst_name>] [-oraclehome <oracle_home>] [-user <oracle_user>] [-domain <domain>] [-spfile <spfile>] [-pwfile <password_file_path>] [-role {PRIMARY | PHYSICAL_STANDBY | LOGICAL_STANDBY | SNAPSHOT_STANDBY}] [-startoption <start_options>] [-stopoption <stop_options>] [-policy {AUTOMATIC | MANUAL | NORESTART}] [-diskgroup "<diskgroup_list>"|-nodiskgroup] [-force]
Usage: srvctl modify service -db <db_unique_name> -service <service_name> [-role [PRIMARY][,PHYSICAL_STANDBY][,LOGICAL_STANDBY][,SNAPSHOT_STANDBY]] [-policy {AUTOMATIC | MANUAL}][-notification {TRUE|FALSE}] [-clbgoal {SHORT|LONG}] [-rlbgoal {NONE|SERVICE_TIME|THROUGHPUT}] [-failovertype {NONE|SESSION|SELECT|TRANSACTION}] [-failovermethod {NONE|BASIC}] [-failoverretry <integer>] [-failoverdelay <integer>] [-edition <edition>] [-pdb <pluggable_database>] [-sql_translation_profile <sql_translation_profile>] [-commit_outcome {TRUE|FALSE}] [-retention <retention>] [replay_init_time <replay_initiation_time>] [-session_state {STATIC|DYNAMIC}] [-global_override]
Usage: srvctl modify asm [-listener <lsnr_name>] [-spfile <spfile>] [-pwfile <password_file_path>] [-diskstring <asm_diskstring>]
Usage: srvctl modify listener [-listener <lsnr_name>] [-oraclehome <path>] [-endpoints "[TCP:]<port>[, ...][/IPC:<key>][/NMP:<pipe_name>][/TCPS:<s_port>] [/SDP:<port>]"]
Usage: srvctl modify ons [-emport <em_port>] [-onslocalport <ons_local_port>] [-onsremoteport <ons_remote_port>] [-remoteservers <host>[:<port>][,<host>[:<port>]...]] [-verbose]
For detailed help on each command and object and its options use:
srvctl <command> <object> -help [-compatible]
9 disable命令
[grid@sz ~]$ srvctl disable -help
The SRVCTL disable command disables the named object so that it is unavailable to run under Oracle Restart for automatic startup, failover, or restart.
Usage: srvctl disable database -db <db_unique_name>
Usage: srvctl disable service -db <db_unique_name> -service "<service_name_list>" [-global_override]
Usage: srvctl disable asm
Usage: srvctl disable listener [-listener <lsnr_name>]
Usage: srvctl disable diskgroup -diskgroup <dg_name>
Usage: srvctl disable ons [-verbose]
For detailed help on each command and object and its options use:
srvctl <command> <object> -help [-compatible]
10 enable命令
[grid@sz ~]$ srvctl enable -help
The SRVCTL enable command enables the named object so that it can run under Oracle Restart for automatic startup, failover, or restart.
Usage: srvctl enable database -db <db_unique_name>
Usage: srvctl enable service -db <db_unique_name> -service "<service_name_list>" [-global_override]
Usage: srvctl enable asm
Usage: srvctl enable listener [-listener <lsnr_name>]
Usage: srvctl enable diskgroup -diskgroup <dg_name>
Usage: srvctl enable ons [-verbose]
For detailed help on each command and object and its options use:
srvctl <command> <object> -help [-compatible]
11 getenv命令
[grid@sz ~]$ srvctl getenv -help
The SRVCTL getenv command Gets and displays values for the environment from the configuration file. It allows users to administer environment configuration for the objects.
Usage: srvctl getenv database -db <db_unique_name> [-envs "<name>[,...]"]
Usage: srvctl getenv asm [-envs "<name>[,...]"]
Usage: srvctl getenv listener [-listener <lsnr_name>] [-envs "<name>[,...]"]
For detailed help on each command and object and its options use:
srvctl <command> <object> -help [-compatible]
12 setenv命令
[grid@sz ~]$ srvctl setenv -help
The SRVCTL setenv command sets values for the environment in the configuration file. It allows users to administer environment configuration for the objects.
Usage: srvctl setenv database -db <db_unique_name> {-envs "<name>=<val>[,...]" | -env "<name>=<val>"}
Usage: srvctl setenv asm {-envs "<name>=<val>[,...]" | -env "<name>=<value>"}
Usage: srvctl setenv listener [-listener <lsnr_name>] -envs "<name>=<val>[,...]" | -env "<name>=<value>"
For detailed help on each command and object and its options use:
srvctl <command> <object> -help [-compatible]
13 update命令
[grid@sz ~]$ srvctl update -help
The SRVCTL update command requests specified running object to use the new configuration information stored in the OCR.
Usage: srvctl update database -db <db_unique_name> -startoption <start_options>
For detailed help on each command and object and its options use:
srvctl <command> <object> -help [-compatible]
14 upgrade命令
[grid@sz ~]$ srvctl upgrade -help
Upgrades the resources types and resources from an older version to a newer version.
Usage: srvctl upgrade database -db <db_unique_name> -oraclehome <oracle_home>
srvctl <command> <object> -help [-compatible]
15 downgrade命令
[grid@sz ~]$ srvctl downgrade -help
The SRVCTL downgrade command enables the user to downgrade resources from their current software version to an older version.
Usage: srvctl downgrade database -db <db_unique_name> -oraclehome <oracle_home> -targetversion <to_version>
srvctl <command> <object> -help [-compatible]