RAC集群启停的总结

方法一:srvctl操作rac集群启停的用法


一、RAC集群的分步关闭

rac集群的关闭顺序:

关闭数据库实例>关闭asm实例>关闭集群服务


1.关闭数据库实例

#su - grid

$srvctl status database -d 数据库名(database_name)

$srvctl stop database -d 数据库名(database_name)[-o start_options] [-c connect_string]

或依次关闭每个实例

$srvctl stop instance -d database_name -i instance_name [,instance_name --list] [-o start_options] [-c connect_string]

2.关闭各节点的asm

#su - grid

$srvctl stop asm -n 节点实例名 (⚠️在一个节点上分别执行要停止的节点)

3.关闭各节点的集群服务(包括:listener 、gsd 、ons 、 VIP )

扫描二维码关注公众号,回复: 475016 查看本文章

#su - gird

$srvctl stop nodeapps -n 节点实例名

另:

关闭监听

#su - grid

#srvctl stop listener -n  节点主机名 [-l  listener_name] 

⚠️如果使用srvctl关闭监听后,在用lsnrctl start开启监听后,用srvclt关闭操作无效,因为srvctl只记录自己操作后的状态,而不去检查listener真正的状态。

二、RAC集群的分步开启

rac集群开启顺序:

开启集群服务>开启asm实例>开启数据库实例

1.开启集群服务

#su - grid

$srvctl start nodeapps -n 节点实例名    (⚠️在一个节点上更换要开启的节点主机名即可)

2.开启asm

#su - grid

$srvctl start asm -n 节点实例名   (⚠️在一个节点上更换要开启的节点主机名即可)

3.开启节点实例

$srvctl start instance -d database_name -i instance_name [,instance_name --list] [-o start_options] [-c connect_string]


参数说明:

-o:在sql*plus直接传递的startup命令选项,可以接包括pfile,nomount\mount\open\immediate等有关启停参数

-c:使用sql*plus连接数据库实例的连接字符串

例:关闭某一节点

#su - grid

$srvctl stop instance -d database_name -i 节点实例名 -o immediate

$srvctl stop asm -n 节点实例名

$srvclt stop nodeapps  -n 节点实例名


方法二:rac启停

一、关闭集群操作步骤

1.关闭数据库实例

#su - oracle

$sqlplus / as sysdba

$shutdown immediate                    ( ⚠️登录要停的每个节点执行 )

2.关闭HAS服务 ( ⚠️必须以root用户执行 )

#su - root  

#cd $GRID_HOME/bin

#./crsctl stop has -f

3.关闭集群服务 ( ⚠️必须以root用户执行 )

#su - root

#cd $GRID_HOME/bin

#./crsctl stop cluster                          --停止当前执行节点的

或  #./crsctl stop cluster  -all               --停止所有节点的

或  #./crsctl stop cluster -n 节点实例名1,节点实例名2,节点实例名n


二、开启集群操作步骤

11g R2的RAC默认服务器开机自启动模式,但如需手动启动时,按照启动:cluster>has>database的顺序启动即可

1.启动集群服务

#su - root

$./crsctl start cluster -all       --所有节点同时启动

或控制节点启动 $./crsctl start cluster -n 实例1 实例2 实例n

2.启动HAS(high availability services)

#su - root   (⚠️必须以root用户在每个节点执行)

$./crsctl start has 

3.启动数据库

#su - grid

$srvctl start database -d 数据库名

或以oracle身份登录每个实例节点执行startup


猜你喜欢

转载自blog.csdn.net/fc_barceiona/article/details/79227794
今日推荐