2012年(11)
分类: Oracle
2012-01-19 20:25:47
实例:显示数据库配置信息
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 集群/数据库配置
应在集群的所有节点上执行以下 RAC 核实检查!对于本指南,我将只从 linux1 中执行这些检查。
本节提供了几个可用于验证 Oracle RAC 10g 配置的 srvctl 命令和 SQL 查询。
有五个为 SRVCTL 定义的节点级任务:
所有实例和服务的状态
$ srvctl status database -d orcl单个实例的状态
$ srvctl status instance -d orcl -i orcl2在数据库全局命名服务的状态
$ srvctl status service -d orcl -s orcltest特定节点上节点应用程序的状态
$ srvctl status nodeapps -n linux1ASM 实例的状态
$ srvctl status asm -n linux1列出配置的所有数据库
$ srvctl config database显示 RAC 数据库的配置
$ srvctl config database -d orcl显示指定集群数据库的所有服务
$ srvctl config service -d orcl显示节点应用程序的配置 -(VIP、GSD、ONS、监听器)
$ srvctl config nodeapps -n linux1 -a -g -s -l显示 ASM 实例的配置
$ srvctl config asm -n linux1集群中所有正在运行的实例
SELECT位于磁盘组中的所有数据文件
select name from v$datafile属于“ORCL_DATA1”磁盘组的所有 ASM 磁盘
SELECT path
26. 启动和停止集群
此时,我们已经完全安装并配置了 Oracle RAC 10g 并拥有了一个功能完善的集群化数据库。
至此完成所有工作后,您可能会问“那我又怎样启动和停止服务呢?”如果您遵循了本指南中的说明,则所有服务(包括 CRS、所有 Oracle 实例、企业管理器数据库控制台等)应在 Linux 节点每次重新引导时自动启动。
但有时您可能想要关闭某个节点,然后手动重新启动它。或者,您可能发现企业管理器没有而需要启动它。本节提供了启动和停止集群环境的命令(使用 SRVCTL)。
确保您是以 oracle UNIX 用户登录的。我们将从 linux1 运行本节中的所有命令:
# su - oracle停止 Oracle RAC 10g 环境
第一步是停止 Oracle 实例。当此实例(和相关服务)关闭后,关闭 ASM 实例。最后,关闭节点应用程序(虚拟 IP、GSD、TNS 监听器和 ONS)。
$ export ORACLE_SID=orcl1启动 Oracle RAC 10g 环境
第一步是启动节点应用程序(虚拟 IP、GSD、TNS 监听器和 ONS)。当成功启动节点应用程序后,启动 ASM 实例。最后,启动 Oracle 实例(和相关服务)以及企业管理器数据库控制台。
$ export ORACLE_SID=orcl1使用 SRVCTL 启动/停止所有实例
启动/停止所有实例及其启用的服务。我只是觉得有意思就把此步骤作为关闭所有实例的一种方法加进来了!
$ srvctl start database -d orcl