ITPub博客

首页 > 数据库 > Oracle > Oracle VCS切换及常规操作

Oracle VCS切换及常规操作

原创 Oracle 作者:chenoracle 时间:2024-06-27 21:14:35 0 删除 编辑

说明 :

VCS(Veritas Cluster Server)是Symantec(赛门铁克)公司的一款集群管理软件,
Oracle+VCS可以实现故障发现、故障切换等功能,本文主要介绍Oracle VCS的一些简单操作,仅供参考。

一 :通过 VCS客户端进行切换

1. 登录 VCS 管理软件

 

2. 选择待切换的服务器

 

 

3. 解冻资源

检查资源状态,如果是冻结状态,需要先解冻

 

备注:

取消冻结资源组后,即可对该资源组执行联机或脱机操作。

通过 Cluster Explorer 取消冻结资源组

1、在配置树的 Service Groups 选项卡中,右键单击资源组。或单击配置树中的集群,再单击 Service Groups 选项卡,然后右键单击视图面板中的资源组图标。
2、单击 Unfreeze。

4. 切换

选择   switch to --remote switch

 

观察资源状态

观察另一台资源状态,直到所有资源都启动完毕。

5. 验证数据库状态

登录切换后的数据库服务器

su - oracle
Sqlplus / as sysdba
Select name,open_mode from v$database;
Select username,count(*) from v$session where username is not null group by username;

6. 执行冻结操作

资源没有问题的情况下,两台服务器都执行冻结操作,点击 freeze- 》 Persistent

备注:

冻结资源组可以防止它故障切换到另一个系统。该冻结过程将停止资源组上的所有联机和脱机过程。

通过 Cluster Explorer 冻结资源组

1、在配置树的 Service Groups 选项卡中,右键单击资源组。或单击配置树中的集群,再单击 Service Groups 选项卡,然后右键单击视图面板中的资源组图标。
2、单击 Freeze,然后在菜单中单击 Temporary 或 Persistent。如果选择了 persistent 选项后将其保存到配置中,则系统在重新引导后仍保持冻结状态。

二:通过 VCS 命令切换

主库:192.168.0.101
从库:192.168.0.102
VIP:  192.168.0.103

目的:

通过VCS ,将 Oracle 实例,从 192.168.0.101 切换到 192.168.0.102

操作如下:

1. 检查VCS 资源

查看资源组状态

root@ CJC-DB-01 :/opt/VRTS/bin#./hagrp -state

 

通过查询可知:

资源组名称为: XX_CJC_DBS

节点名称:

192.168.0.101 VCS节点名称是CJC-DB-01_vcs。
192.168.0.102 VCS节点名称是CJC-DB-02_vcs。

查看资源状态

root@CJC-DB-01:/opt/VRTS/bin#./hares -state

通过查询可知:

资源在节点1 CJC-DB-01 _vcs 上在线。

2. 检查资源组是否冻结

root@CJC-DB-01:/opt/VRTSvcs/bin#./hagrp -display | grep Frozen


  两节点都是未冻结状态。

如果冻结状态,会显示如下:

临时冻结

 

永 久冻结

 

主要查看最后两行:

最后一行value值为0时,表示资源未冻结,为1时表示资源冻结。
倒数第二行vales值为0时,表示资源未冻结,为1时表示资源冻结。
TFrozen表示临时冻结,重启后恢复默认值。
Frozen表示永 久冻结,重启后值不变。

如果是冻结状态下,无法执行VCS 切换,需要先解冻

root@CJC-DB-01:/opt/VRTS/bin#./hagrp -switch XX_CJC_DBS -to CJC-DB-02_vcs
VCS WARNING V-16-1-10154 Group XX_CJC_DBS is frozen

执行 VCS 切换前,需要确保两个节点资源都是未冻结状态,切换完成后,需要将资源改成冻结状态,避免数据库自动切换。

资源冻结状态查看、修改冻结状态语句如下:

查看冻结状态

cd /opt/VRTSvcs/bin
./hagrp -display | grep Frozen

手动设置为资源冻结( 两个节点分别执行)

./hagrp -freeze XX_CJC_DBS

手动设置为资源 永 久 冻结( 两个节点分别执行)

先 将 VCS 配置的属性设置为可写。

# haconf -makerw

持久冻结每个服务组。

# hagrp -freeze XX_CJC_DBS -persistent

将配置的属性设置为只读。

# haconf -dump -makero

手动设置为资源未冻结( 两个节点分别执行)

./hagrp -unfreeze XX_CJC_DBS

3. 数据库切换

192.168.0.101   切换到 192.168.0.102

192.168.0.101 上执行:

切换前检查

检查nfs 挂载

df -h /ora*

检查VIP

ip a

正式切换

su - root
cd /opt/VRTSvcs/bin
./hagrp -switch XX_CJC_DBS -to CJC-DB-02_vcs

切换过程大致如下:

执行VCS 切换命令后

(1).原主库192.168.0.101上Oracle数据库自动执行shutdown immediate关库操作。
(2).原主库192.168.0.101自动删除VIP 192.168.0.103。
(3).原主库192.168.0.101自动umount /oradata和/oraarch的NFS存储。
(4).新主库192.168.0.102自动mount /oradata和/oraarch的NFS存储。
(5).新主库192.168.0.101自动添加VIP 192.168.0.103。
(6).新主库192.168.0.101自动执行arping广播。
(7).新主库192.168.0.101自动启动实例。

4. 验证

本地节点登录验证

sqlplus / as sysdba

验证实例状态、数据库连接、会话、等待事件、归档切换等

5. 数据库回切

192.168.0.102 主库节点操作

检查NFS 挂载情况

root@ CJC-DB-02 :/opt/VRTS/bin#df -h /ora*

检查VIP

root@ CJC-DB-02 :/opt/VRTS/bin#ip a

开始回切

su - root
cd /opt/VRTSvcs/bin
./hagrp -switch XX_CJC_DBS -to CJC-DB-01_vcs

验证

sqlplus / as sysdba

验证实例状态、数据库连接、会话、等待事件、归档切换等

三:手动切换

适用场景:

当 VCS 切换失败,或 VCS 服务异常时,无法通过 VCS 进行 Oracle 实例切换,可以使用手动切换 Oracle 实例。

手动切换

目的:

通过手动方式,将 Oracle 实例,从 192.168.0.101 切换到 192.168.0.102 。

1. 停监听

主库 192.168.0.101

oracle@CJC-DB-01:/home/oracle$lsnrctl stop

2. 停实例

SQL> shutdown immediate

3. 卸载 VIP

ifconfig
ip a  
ifconfig ensxxx:0 192.168.0.103 down

4.卸载 NFS

df -h /ora*
mount |grep ora

开始 umount

###umount /oradata
###umount /oraarch

5.新增 VIP

从库 192.168.0.102

ifconfig ens xxx :0 192.168.0.103 /24 up

6. 挂载 NFS

mount -t nfs -o rw,bg,hard,nointr,nolock,rsize=65536,wsize=65536,tcp,vers=3,timeo=600 XXX.XXX.XXX.XXX:/cjc_db_oradata_nfsA2  /oradata
mount -t nfs -o rw,bg,hard,nointr,nolock,rsize=65536,wsize=65536,tcp,vers=3,timeo=600 XXX.XXX.XXX.XXX:/cjc_db_oraarch_nfsA2  /oraarch

检查

df -h /ora*

7. 启动数据库

SQL> startup

8. 启动监听

oracle@CJC-DB-02:/home/oracle$lsnrctl start

9. 执行 arping 命令

需要在 192.168.0.102 主库上执行 arping 命令。

arping -c 5 -U -I ens192 192.168.0.103
ARPING 192.168.0.103 from 192.168.0.103 ensxxx
Sent 5 probes (5 broadcast(s))
Received 0 response(s)

注意 :

如果不执行 arping 命令,远程连接数据库会出现超时连接失败问题,需要等 arp 缓存更新后才能连接。

例如 :

ORA-12170: TNS: Connect timeout occurred

10.验证

远程连接 测试

sqlplus / as sysdba

验证实例状态、数据库连接、会话、等待事件、归档切换等

经测试,在VCS 资源解冻或冻结状态下,均可以正常手动进行切换 Oracle 。

###chenjuchao 20240627###

欢迎关注我的公众号《 IT 小 Chen 》

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29785807/viewspace-3020452/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
Oracle ACE、OCMU 用户组成员、Oracle 11g OCM、微信公众号"IT小Chen"

注册时间:2014-08-05

  • 博文量
    853
  • 访问量
    2727098