10G RAC: srvctl
1. Grammar:
srvctl <command> <object> [<options]]
available <command>: enable/disable/start/stop/relocate/status/
add/remove/modify/getenv/setenv/unsetenv/config
avaliable <object>: database/instance/service/nodeapps/vip_range
show help: srvctl <command> <object> -h
2. Examples:
2.1 srvctl config
Available options: database|service|nodeapps|asm
Usage for backward compatibility
srvctl config: Display database name
srvctl config -V : Display the version of srvctl
# display the database info on the specfied node
srvctl config -p orcl -n rac1 :
Full usage:
# list all registered instance of the database
srvctl config database -d orcl
example output:
rac1 orcl1 /orabase/product/10.1.0/db_1
rac2 orcl2 /orabase/product/10.1.0/db_1
# show additional attributes
srvctl config database -d orcl -a
example output:
DB_NAME: orcl
ORACLE_HOME: /orabase/product/10.1.0/db_1
SPFILE: /oradata/orcl/spfileorcl.ora
DOMAIN: null
DB_ROLE: null
START_OPTIONS: null
# show tns entries
srvctl config database -d orcl -t
Example client-side TNS entry for service orcltest:
orcltest =
(description=
(address=(protocol=tcp)(host=db_vip)(port=dedicated_port))
(connect_data=
(service_name=orcltest)
(failover_mode=
(type=select)
(method=basic)
)
)
)
# Display help
srvctl config service -h
# Display service's information
srvctl config service -d orcl -s <service_name>
# display help
srvctl config nodeapps -h
# display node's information
srvctl config nodeapps -n rac1
example output:
rac1 orcl1 /orabase/product/10.1.0/db_1
# display VIP configuration
srvctl config nodeapps -n rac1 -a
# display GSD configuration
srvctl config nodeapps -n rac1 -g
# display OSD configuration
srvctl config nodeapps -n rac1 -s
# display Listener configuration
srvctl config nodeapps -n rac1 -l
2.2 srvctl status
Available options: database|instance|service|nodeapps|asm
# Display help for database level
srvctl status database -h
# Display instance's running status on each node
srvctl status database -d orcl
example output:
Instance orcl1 is(not) running on node rac1
Instance orcl2 is(not) running on node rac2
# include disabled applications
srvctl status database -d orcl -f
# verbos output
srvctl status database -d orcl -v
# Additional information for EM Console
srvctl status database -d orcl -S EM_AGENT_DEBUG
# Additional information for EM Console
srvctl status database -d orcl -i orcl1 -S EM_AGENT_DEBUG
# Display help for instance level
srvctl status instance -h
# display appointed instance's running status
srvctl status instance -d orcl -i orcl1
# Display help for node level
srvctl status nodeapps -h
# Display all app's status on the node xxx
srvctl status nodeapps -n <node_name>
Not finished, Continue...
2.3 srvctl start
I think maybe it's one of the most frequently used commands
as well as 'srvctl stop'.
Available options: database|instance|service|nodeapps|asm
# Start database
srvctl start database -d orcl -o nomount
srvctl start database -d orcl -o mount
srvctl start database -d orcl -o open
# Grammar for start instance
srvctl start instance -d [db_name] -i [instance_name]
-o [start_option] -c [connect_str] -q
# Start all instances on the all nodes
srvctl start instance -d orcl -i orcl1,orcl2,...
# Start ASM instance
srvctl start ASM -n [node_name] -i asm1 -o open
# Start all apps in one node
srvctl start nodeapps -n [node_name]
2.4 srvctl stop
I think maybe it's also one of the most frequently used
commands as well as 'srvctl start'.
Available options: database|instance|service|nodeapps|asm
# Stop database
srvctl stop database -d orcl -o normal
srvctl stop database -d orcl -o immediate
srvctl stop database -d orcl -o abort
# Grammar for stop instance
srvctl stop instance -d [db_name] -i [instance_name]
-o [start_option] -c [connect_str] -q
# Stop all instances on the all nodes
srvctl stop instance -d orcl -i orcl1,orcl2,...
# Stop ASM instance
srvctl stop ASM -n [node_name] -i asm1 -o [option]
# Stop all apps in one node
srvctl stop nodeapps -n [node_name]
2.5 srvctl add
Available options: database|instance|service|nodeapps|asm
Description:
Add a configuration to your cluster database configuration.
"srvctl add service" adds services to a database and
assigns them to instances. You can use "srvctl add service"
to configure the Transparent Application Failover (TAF)
policy for a service.
2.6 srvctl remove
Available options: database|instance|service|nodeapps|asm
Description: Removes the named object from the cluster
environment.
SRVCTL是ORACLEi RAC集群配置管理的工具。本文是对SRVCTL的所有命令进行详细说明的一篇参考文档。
SRVCTL Add
添加数据库或实例的配置信息。在增加实例中,与-i一起指定的名字应该与INSTANCE_NAME 和 ORACLE_SID参数匹配。
srvctl add database -d database_name [-m domain_name] -o oracle_home [-s spfile]
srvctl add instance -d database_name -i instance_name -n node_name
表- SRVCTL Add命令详细选项
命令 选项
-m 数据库域名 格式如"us.mydomain.com"
-m 选项指定的数据库域名必须匹配数据库INIT.ORA或者SPFILE中DB_DOMAIN 和DB_NAME参数。在增加数据库时,-d指定的数据库名必须与DB_NAME参数匹配
-n 实例节点名
-o $ORACLE_HOME(用来确定lsnrctl和Oracle等命令路径)
-s SPFILE 文件名
实例:添加一个新的数据库
srvctl add database -d mydb -o /ora/ora
实例:向数据库添加实例
srvctl add instance -d mydb -i mydb0 -n gm0
srvctl add instance -d mydb -i mydb0 -n gm0
srvctl add instance -d mydb -i mydb0 -n gm0
SRVCTL Config
显示保存在SRVM配置文件中的配置信息
srvctl config database
显示数据库配置列表
srvctl config database -d database_name
数据库配置信息显示的格式:
nodename instancename oraclehome
nodename instancename oraclehome
实例:显示数据库配置信息
srvctl config database -d mydb
SRVCTL Getenv
getenv操作用来从SRVM配置文件中获取与显示环境变量
srvctl getenv database -d database_name [-t name[,name,……]]
srvctl getenv instance -d database_name -i instance_name [-t name[,name,……]]
实例:列出数据库的所有环境变量
srvctl getenv database -d mydb
SRVCTL Modify
修改实例的节点配置信息。这些修改会在程序下次重新启动后生效。修改后的信息将永久保存。
srvctl modify instance -d database_name -i instance_name -n node_name
实例:修改实例到另一个节点
srvctl modify instance -d mydb -n my_new_node
SRVCTL Remove
这是用来删除SRVM库中配置信息的命令。对象相关的环境设置也同样删除。如果你未使用强制标志(-f),ORACLE将提示你确认是否删除。
使用强制选项(-f),删除操作将不进行提示
srvctl remove database -d database_name [-f]
srvctl remove instance -d database_name -i instance_name [-f]
SRVCTL Remove命令详细选项
-f 强制删除应用时不进行确认提示
实例:删除数据库
srvctl remove database -d mydb
实例:删除数据库实例
srvctl remove instance -d mydb -i mydb0
srvctl remove instance -d mydb -i mydb0
srvctl remove instance -d mydb -i mydb0
SRVCTL Setenv
设置SRVM配置文件中的环境变量值。
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,……]
实例:设置数据库环境变量
srvctl setenv database -d mydb -t LANG=en
SRVCTL Start
启动数据库,所有实例或指定的实例,及启动所有相关未启动的监听。
注:
对于start命令和其它一些可以使用连接字符串的操作,如果你不提供连接字符串,那么ORACLE会使用"/ as sysdba"在实例上执行相关的操作。另外,要执行类似的操作,你必须是OSDBA组的成员。关于更多的OSDBA组权限信息,请参考ORACLEi的 安装指南。
srvctl start database -d database_name [-o start_options] [-c connect_string]
srvctl start instance -d database_name -i instance_name [,instance_name-list] [-o start_options] [-c connect_string]
表- SRVCTL Start命令详细选项
命令 选项
-o 在SQL*Plus直接传递的startup命令选项,可以包括PFILE
-c 使用SQL*Plus连接数据库实例的连接字符串
实例:启动数据库及所有的实例
srvctl start database -d mydb
实例:启动指定的实例
srvctl start instance -d mydb -i mydb,mydb
SRVCTL Status
显示指定数据库的当前状态
srvctl status database -d database_name
srvctl status instance -d database_name -i instance_name [,instance_name-list]
实例:显示数据和所有实例状态
srvctl status database -d mydb
实例:显示指定实例的状态
srvctl status instance -d mydb -i mydb,mydb
SRVCTL Stop
停止数据库所有实例可者指定实例
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]
表- SRVCTL Stop命令详细选项
命令 选项
-c 使用SQL*Plus连接数据库实例的连接字符串
-o 在SQL*Plus直接传递的shutdown命令选项
实例:停止数据库所有的实例
srvctl stop database -d mydb
实例:停止指定实例
srvctl stop instance -d mydb -i mydb
SRVCTL Unsetenv
取消SRVM配置文件中环境变量定义值
srvctl unsetenv database -d database_name-t name[,name,……]
srvctl unsetenv instance -d database_name[-i instance_name] -t name[,name,……]
实例:取消环境变量,回到缺省值
srvctl unsetenv database -d mydb -t CLASSPATH
使用SRVCONFIG导入和导出RAW设备配置信息
你可使用SRVCONFIG导入和导出RAW设备配置信息,不管配置文件是在集群文件系统上还是在RAW设备上。你可以使用这种方法来备份与恢复SRVM配置信息。
例如:
下面的命令用来导出配置信息的内容到你指定文件名的文本文件中。
srvconfig -exp file_name
下面的命令用来从指定文本文件中导入配置信息到到你运行命令的RAC环境配置信息库。
srvconfig -imp file_name
核实 RAC 集群/数据库配置
来自: http://hi.baidu.com/wjdwei/blog/item/11233d8349ec8eaa0cf4d219.html