** SRVCTL ** ** 命令详细说明文档(译) ** **
**
简介:
SRVCTL 是 ORACLE9i RAC 集群配置管理的工具。本文是对 SRVCTL 的所有命令进行详细说明的一篇参考文档。
读者对象: ORACLE9i RAC 数据库集群管理员。
注:
R AC: Real Application Clusters
SRVM : Server Management
-------------------------------------------------------------------------------
l ** 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
表 4-5 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/ora9
实例:向数据库添加实例
srvctl add instance -d mydb -i mydb01 -n gm01
srvctl add instance -d mydb -i mydb02 -n gm02
srvctl add instance -d mydb -i mydb03 -n gm03
l ** SRVCTL Config
**
显示保存在 SRVM 配置文件中的配置信息
srvctl config database
显示数据库配置列表
srvctl config database -d database_name
数据库配置信息显示的格式:
nodename1 instancename1 oraclehome
nodename2 instancename2 oraclehome
实例:显示数据库配置信息
srvctl config database -d mydb
l ** 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
l ** SRVCTL Modify
**
修改实例的节点配置信息。这些修改会在程序下次重新启动后生效。修改后的信息将永久保存。
srvctl modify instance -d database_name -i instance_name -n node_name
实例:修改实例到另一个节点
srvctl modify instance -d mydb -n my_new_node
l ** 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 mydb01
srvctl remove instance -d mydb -i mydb02
srvctl remove instance -d mydb -i mydb03
l ** 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
l ** SRVCTL Start
**
启动数据库,所有实例或指定的实例,及启动所有相关未启动的监听。
-------------------------------------------------------------------------------
注:
对于 start 命令和其它一些可以使用连接字符串的操作,如果你不提供连接字符串,那么 ORACLE 会使用 "/ as sysdba" 在实例上执行相关的操作。另外,要执行类似的操作,你必须是 OSDBA 组的成员。关于更多的 OSDBA 组权限信息,请参考 ORACLE9i 的安装指南。
-------------------------------------------------------------------------------
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]
表 4-6 SRVCTL Start 命令详细选项
-------------------------------------------------------------------------------
命令 选项
-------------------------------------------------------------------------------
-o 在 SQL*Plus 直接传递的 startup 命令选项,可以包括 PFILE
-c 使用 SQL*Plus 连接数据库实例的连接字符串
-------------------------------------------------------------------------------
实例:启动数据库及所有的实例
srvctl start database -d mydb
实例:启动指定的实例
srvctl start instance -d mydb -i mydb1,mydb4
l ** 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 mydb1,mydb2
l ** 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]
表 4-7 SRVCTL Stop 命令详细选项
-------------------------------------------------------------------------------
命令 选项
-------------------------------------------------------------------------------
-c 使用 SQL*Plus 连接数据库实例的连接字符串
-o 在 SQL*Plus 直接传递的 shutdown 命令选项
-------------------------------------------------------------------------------
实例:停止数据库所有的实例
srvctl stop database -d mydb
实例:停止指定实例
srvctl stop instance -d mydb -i mydb1
l ** 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
l 使用 SRVCONFIG 导入和导出 RAW 设备配置信息
你可使用 SRVCONFIG 导入和导出 RAW 设备配置信息,不管配置文件是在集群文件系统上还是在 RAW 设备上。你可以使用这种方法来备份与恢复 SRVM 配置信息。
例如:
下面的命令用来导出配置信息的内容到你指定文件名的文本文件中。
srvconfig -exp file_name
下面的命令用来从指定文本文件中导入配置信息到到你运行命令的 RAC 环境配置信息库。
srvconfig -imp file_name
叶正盛 ( 译 )
2005-04-03