签到成功

知道了

CNDBA社区CNDBA社区

DM DW主备集群切换测试

2021-07-03 00:31 1876 0 原创 DM数据库
作者: shinelifes

DM DW主备集群切换测试

目        录 http://www.cndba.cn/shinelifes/article/4562

一、DW主备集群IP地址信息规划. 1

二、数据守护系统架构. 2

三、主备集群切换前的验证. 3

3.1 查看集群主备状态. 3

3.2 检查数据一致性. 3

3.3 主备集群切换注意事项. 4

四、进行主备库切换. 5

4.1 用SYSDBA进行主备库切换. 5

4.2 切换后查询主备集群状态

一、DW主备集群IP地址信息规划

(1)IP地址信息规划http://www.cndba.cn/shinelifes/article/4562

系统

节点

主机名

服务IPhttp://www.cndba.cn/shinelifes/article/4562

心跳IP

实例名

实例监听端口

DW主备集群

PRIMARY主库

dm3

192.168.2.13

192.168.0.13

DMOA1

5234

STANDBY备库

dm4

192.168.2.14

192.168.0.14

DMOA2

5234

(2)端口信息规划

      角色

项目

主库

备库

实例名称

DMOA1

DMOA2

主机名称

dm3

dm4

角色

PRIMARY

STANDBY

PORT_NUM

5234

5234

MAL_PORT

61141

61141

MAL_INST_PORT

5234

5234

MAL_DW_PORT

52141

52141

INST_OGUID

453331

453331

 

二、数据守护系统架构

数据守护系统结构图

(1)DM数据守护实现原理

DM数据守护(Data Watch)的实现原理非常简单:将主库(生产库)产生的Redo日志传输到备库,备库接收并重新应用Redo日志,从而实现备库与主库的数据同步。DM数据守护的核心思想是监控数据库状态,获取主、备库数据同步情况,为Redo日志传输与重演过程中出现的各种异常情况提供一系列的解决方案。

DM数据守护系统结构主要由主库、备库、Redo日志、Redo日志传输、Redo日志重演、守护进程(dmwatcher)、监视器(dmmonitor)组成。

三、主备集群切换前的验证

3.1 查看集群主备状态

通过dmmonitor管理界面查看集群状态,

命令是:show global info      --查看集群状态


(1)节点一(192.168.0.13)数据库角色是PRIMARY主库,INST_OK状态时OK,ISTATUS状态时OPEN。

(2)节点二(192.168.0.14)数据库角色是STANDBY备库,INST_OK状态时OK,ISTATUS状态时OPEN。

3.2 检查数据一致性

(1)在节点一dm3上查询永久魔数和CKPT_LSN,FILE_LSN,FLUSH_LSN,CUR_LSN四个值,在切换之前,这四个值在主备节点要分别保持一致。如果这四个值在主备节点分别是一致的,说明主备节点数据是一致的,可以进行主备库切换。

cd /home/dmdba/dmdbms/bin

./disql SYSDBA/cssWEB123@192.168.2.13:5234     --连接数据库

select permanent_magic;         --查看永久魔数http://www.cndba.cn/shinelifes/article/4562

select CKPT_LSN,FILE_LSN,FLUSH_LSN,CUR_LSN from v$rlog;      --查看数据库LSN值


如果不一致,可以手动切换日志或手动产生检查点。

checkpoint(100)              --手动刷新检查点

ALTER SYSTEM SWITCH LOGFILE;       --手动切换日志

(2)在节点二dm4查询永久魔数和CKPT_LSN,FILE_LSN,FLUSH_LSN,CUR_LSN四个值,这四个值在主备节点要分别保持一致。

cd /home/dmdba/dmdbms/bin

./disql SYSDBA/cssWEB123@192.168.2.14:5234

select permanent_magic;

select CKPT_LSN,FILE_LSN,FLUSH_LSN,CUR_LSN from v$rlog;


3.3 主备集群切换注意事项

(1)切换前一定要检查主备库数据是否一致,可以通过查询永久魔数和LSN值进行验证。

(2)生产系统的主备集群建议定期进行切换演练,验证主备集群的稳定性和可靠性,一般一年进行两次切换演练。

(3)主备集群切换演练时间,建议安排在业务低峰期间进行操作,减少对业务系统的影响。切换演练前,做好数据备份工作和切换演练方案的评审。

四、进行主备库切换

4.1 用SYSDBA进行主备库切换

(1)首先登录dmmonitor管理界面,用SYSDBA登录。执行choose switchover命令。

login

username:SYSDBA

password:******

[monitor]         2021-07-02 23:52:45: Login dmmonitor success!

choose switchover

Can choose one of the following instances to do switchover:

1: DMOA2

switchover

[monitor]         2021-07-02 23:54:02: Start to switchover instance DMOA2http://www.cndba.cn/shinelifes/article/4562

[monitor]         2021-07-02 23:54:02: Notify dmwatcher(DMOA1) switch to SWITCHOVER status

[monitor]         2021-07-02 23:54:03: Dmwatcher process DMOA1 status switching [OPEN-->SWITCHOVER]

[monitor]         2021-07-02 23:54:03: Switch dmwatcher DMOA1 to SWITCHOVER status success

[monitor]         2021-07-02 23:54:03: Notify dmwatcher(DMOA2) switch to SWITCHOVER status

[monitor]         2021-07-02 23:54:04: Dmwatcher process DMOA2 status switching [OPEN-->SWITCHOVER]

[monitor]         2021-07-02 23:54:05: Switch dmwatcher DMOA2 to SWITCHOVER status success

[monitor]         2021-07-02 23:54:05: Instance DMOA1 start to execute sql SP_SET_GLOBAL_DW_STATUS(0, 6)

[monitor]         2021-07-02 23:54:05: Instance DMOA1 execute sql SP_SET_GLOBAL_DW_STATUS(0, 6) success

[monitor]         2021-07-02 23:54:05: Instance DMOA2 start to execute sql SP_SET_GLOBAL_DW_STATUS(0, 6)

[monitor]         2021-07-02 23:54:05: Instance DMOA2 execute sql SP_SET_GLOBAL_DW_STATUS(0, 6) success

[monitor]         2021-07-02 23:54:05: Instance DMOA1 start to execute sql ALTER DATABASE MOUNT

[monitor]         2021-07-02 23:54:07: Instance DMOA1 execute sql ALTER DATABASE MOUNT success

[monitor]         2021-07-02 23:54:07: Instance DMOA2 start to execute sql SP_APPLY_KEEP_PKG()

[monitor]         2021-07-02 23:54:07: Instance DMOA2 execute sql SP_APPLY_KEEP_PKG() success

[monitor]         2021-07-02 23:54:07: Instance DMOA2 start to execute sql ALTER DATABASE MOUNT

[monitor]         2021-07-02 23:54:09: Instance DMOA2 execute sql ALTER DATABASE MOUNT success

[monitor]         2021-07-02 23:54:09: Instance DMOA1 start to execute sql ALTER DATABASE STANDBY

[monitor]         2021-07-02 23:54:09: Instance DMOA1 execute sql ALTER DATABASE STANDBY success

[monitor]         2021-07-02 23:54:09: Instance DMOA2 start to execute sql ALTER DATABASE PRIMARY

[monitor]         2021-07-02 23:54:09: Instance DMOA2 execute sql ALTER DATABASE PRIMARY success

[monitor]         2021-07-02 23:54:09: Notify instance DMOA2 to change all arch status to be invalid

[monitor]         2021-07-02 23:54:09: Succeed to change all instances arch status to be invalid

[monitor]         2021-07-02 23:54:09: Instance DMOA1 start to execute sql ALTER DATABASE OPEN FORCEhttp://www.cndba.cn/shinelifes/article/4562

[monitor]         2021-07-02 23:54:09: Instance DMOA1 execute sql ALTER DATABASE OPEN FORCE success

[monitor]         2021-07-02 23:54:09: Instance DMOA2 start to execute sql ALTER DATABASE OPEN FORCE

[monitor]         2021-07-02 23:54:11: Instance DMOA2 execute sql ALTER DATABASE OPEN FORCE success

[monitor]         2021-07-02 23:54:11: Instance DMOA1 start to execute sql SP_SET_GLOBAL_DW_STATUS(6, 0)

[monitor]         2021-07-02 23:54:13: Instance DMOA1 execute sql SP_SET_GLOBAL_DW_STATUS(6, 0) success

[monitor]         2021-07-02 23:54:13: Instance DMOA2 start to execute sql SP_SET_GLOBAL_DW_STATUS(6, 0)

http://www.cndba.cn/shinelifes/article/4562

[monitor]         2021-07-02 23:54:13: Instance DMOA2 execute sql SP_SET_GLOBAL_DW_STATUS(6, 0) success

[monitor]         2021-07-02 23:54:13: Notify dmwatcher(DMOA1) switch to OPEN status

[monitor]         2021-07-02 23:54:13: Dmwatcher process DMOA1 status switching [SWITCHOVER-->OPEN]

http://www.cndba.cn/shinelifes/article/4562
http://www.cndba.cn/shinelifes/article/4562

[monitor]         2021-07-02 23:54:14: Switch dmwatcher DMOA1 to OPEN status success

[monitor]         2021-07-02 23:54:14: Notify dmwatcher(DMOA2) switch to OPEN status

[monitor]         2021-07-02 23:54:14: Dmwatcher process DMOA2 status switching [SWITCHOVER-->OPEN]

[monitor]         2021-07-02 23:54:15: Switch dmwatcher DMOA2 to OPEN status success

[monitor]         2021-07-02 23:54:15: Notify group(DMOA)'s dmwatcher to do clear

[monitor]         2021-07-02 23:54:15: Clean request of dmwatcher processer DMOA1 success

2021-07-02 23:54:15

#================================================================================#

GROUP            OGUID       MON_CONFIRM     MODE            MPP_FLAG 

DMOA             453331      TRUE            AUTO            FALSE

4.2 切换后查询主备集群状态

通过dmmonitor管理界面查看集群状态,

命令是:show global info      --查看集群状态

http://www.cndba.cn/shinelifes/article/4562


(1)节点一(192.168.0.13)角色是STANDBY主库,INST_OK状态时OK,ISTATUS状态时OPEN。

(2)节点二(192.168.0.14)角色是PRIMARY备库,INST_OK状态时OK,ISTATUS状态时OPEN。

版权声明:本文为博主原创文章,未经博主允许不得转载。

https://www.dameng.com/

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
shinelifes

shinelifes

关注
  • 29
    原创
  • 0
    翻译
  • 0
    转载
  • 0
    评论
  • 访问:52671次
  • 积分:102
  • 等级:初级会员
  • 排名:第29名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ