rac相关操作知识
岁月如梦 Lv4

CRS及相关服务的常用命令的演示

1、查看状态的命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# su-oracle --先切换到oracle用户
$ crs_stat -t --查看crs及所有的service的状态
$ crsctl check crs --用crsctl命令,检查crs相关服务的状态
$ srvctl config database --查看服务名称
$ srvctl config database -d rac -a # 检查数据库相关的信息
$ srvctl status database -d prod --使用srvctl查看数据库状态
--srvctl status instance -d prod -i rac1 # 检查指定实例的状态
$ srvctl config asm -a # ASM配置
$ srvctl status asm # ASM的状态
$ srvctl status asm -n rac1 (rac2) --使用srvctl查看asm状态

$ srvctl status nodeapps --使用srvctl查看所有节点上的服务是否正常
$ srvctl status nodeapps -n rac1 (rac2)

$ srvctl status vip -n rac1 (rac2) --VIP各个节点的状态以及配置
$ srvctl status scan --SCAN的状态
$ srvctl config scan --SCAN的配置
$ srvctl config database -d prod -a --数据库配置
$ srvctl status listener --TNS监听器状态以及配置

$ srvctl config nodeapps -a -g -s -l --节点应用程序配置(VIP、GSD、ONS、监听器)

2、启动和关闭相关服务的命令

1
2
3
4
5
6
7
8
9
10
11
12
# su - oracle$ crs_start-all --启动所有的crs服务
$ crs_stop-all --停止所有的crs服务
$ crsctl start crs --启动crs服务
$ crsctl stop crs --停止crs服务
$ srvctl start nodeapps -n rac1 (rac2) --启动某节点上所有的应用
$ srvctl stop nodeapps -n rac1 (rac2) --停止某节点上所有的应用
$ srvctl start listener -n rac1 (rac2) --启动某个节点的listener
$ srvctl stop listener -n rac1 (rac2) --停止某个节点的listener
$ srvctl start instance-d db-i rac1 (rac2) --启动某个instance
$ srvctl stop instance-d db-i rac1 (rac2) --停止某个instance
$ srvctl start database-d db --启动数据库
$ srvctl stop database-d db --停止数据库

3、修改VIP

1
srvctl modify nodeapps -n xxx1 -A 192.10.0.1/255.255.255.0

srvctl 命令

SRVCTL命令可以控制RAC数据库中的instance,listener以及services。
通常SRVCTL在ORACLE用户下执行。下面我们来介绍srvctl命令。

1、通过SRVCTL命令来start/stop/check所有的实例:

1
$ srvctl start|stop|status database -d <db_name>

2、start/stop指定的实例:

1
$ srvctl start|stop|status instance -d <db_name> -i <instance_name>

3、列出当前RAC下所有数据库

1
$ srvctl config database -d <db_name>

4、start/stop/check所有的nodeapps,

比如:VIP, GSD, listener, ONS:

1
$ srvctl start|stop|status nodeapps -n <node_name>

5、如果你使用ASM,srvctl也可以start/stop ASM实例:

1
$ srvctl start|stop asm -n <node_name> [-i <asm_inst_name>] [-o<oracle_home>]

6、可以获取所有的环境信息:

1
$ srvctl getenv database -d <db_name> [-i <instance_name>]

7、设置全局环境和变量:

1
$ srvctl setenv database -d <db_name> -t LANG=en

8、从OCR中删除已有的数据库:

1
$ srvctl remove database -d <db_name>

9、向OCR中添加一个数据库:

1
$ srvctl add database -d <db_name> -o <oracle_home>[-m <domain_name>] [-p<spfile>] [-A <name|ip>/netmask] [-r {PRIMARY | PHYSICAL_STANDBY |LOGICAL_STANDBY] [-s <start_options>]}

10、向OCR中添加一个数据库的实例:

1
$ srvctl add instance -d <db_name> -i <instance_name> -n <node1>$ srvctl add instance -d <db_name> -i <instance_name> -n <node2>

11、向OCR中添加一个ASM实例:

1
$ srvctl add asm -n <node_name> -i <asm_inst_name> -o <oracle_home>

12、添加一个service

1
$ srvctl add service -d <db_name> -s <service_name> -r <preferred_list>[-a <available_list>] [-P <TAF_policy>] [-u]

13、修改在其他节点上的service

1
$ srvctl modify service -d <db_name> -s <service_name> -I <orig_instance_name> -t <target_instance_name>

14、relocate某个节点的service到其他节点

1
srvctl relocate service -d <db_name> -s <service_name> -I
 请作者喝咖啡
 评论
评论插件加载失败
正在加载评论插件