注册
主备集群-脱机升级
技术分享/ 文章详情 /

主备集群-脱机升级

Wml 2022/09/21 1972 1 0

主备升级测试:
主库192.168.2.4 5236
备库192.168.2.3 5236
一、前期准备:
安装新版本软件到其他目录下, ./DMInstall.bin -i,安装目录为 /data/dmdbms1
检验新版本:
SQL> SELECT ID_CODE FROM DUAL

行号 ID_CODE


1 --03134283914-20220909-169171-20009 Pack1

       1-2-138-2022.09.09-169171-20009-ENT

二、检查主备集群状态是否正常

检查当前版本:
SQL> select id_code from dual;

行号 ID_CODE


1 1-1-144-20.11.06-129436-ENT Pack1

二、联机备份(开启DMAP服务)
SQL> backup database backupset ‘/data/full0915’;
image.png
三、顺序停止服务
停止确认监视器
[dmdba@dm8dsc2 bin]$ ./DmMonitorServiceDMSERVER stop
Stopping DmMonitorServiceDMSERVER: [ OK ]

备watcher-主watcher-主server-备server
1、[dmdba@dm8dsc2 bin]$ ./DmWatcherServiceDMSERVER stop
Stopping DmWatcherServiceDMSERVER: [ OK ]

2、[dmdba@dm8dsc1 bin]$ ./DmWatcherServiceDMSERVER stop
Stopping DmWatcherServiceDMSERVER: [ OK ]

3、[dmdba@dm8dsc1 bin]$ ./DmServiceDMSERVER stop
Stopping DmServiceDMSERVER:
[ OK ]
4、[dmdba@dm8dsc2 bin]$ ./DmServiceDMSERVER stop
Stopping DmServiceDMSERVER: [ OK ]

停止DMAP服务以及其他数据相关的进程
ps -ef |grep dmser/dmwat/dmmo --确保所有服务正常停止

四、备份原bin目录
[dmdba@dm8dsc1 dmdbms]$ mv bin bin_bak
[dmdba@dm8dsc2 dmdbms]$ mv bin bin_bak
五、将新版本替换bin
[dmdba@dm8dsc2 bin]$ cd /data/dmdbms1/
[dmdba@dm8dsc1 dmdbms1]$ cp -r bin/ /data/dmdbms/
[dmdba@dm8dsc1 dmdbms1]$ cp -r bin/ /data/dmdbms/
可以touch文件来区分新旧执行码
六、复制原版的启动脚本
[dmdba@dm8dsc1 bin_bak]$ cp DmServiceDMSERVER DmWatcherServiceDMSERVER …/bin
[dmdba@dm8dsc2 bin_bak]$ cp DmServiceDMSERVER DmWatcherServiceDMSERVER …/bin

[dmdba@dm8dsc2 bin_bak]$ cp DmMonitorServiceDMSERVER dmmonitor.ini …/bin
七、如下顺序启动
主库服务-备库服务-备库watcher-主库watcher
1、[dmdba@dm8dsc1 bin]$ ./DmServiceDMSERVER start
Starting DmServiceDMSERVER: [ OK ]

2、[dmdba@dm8dsc2 bin]$ ./DmServiceDMSERVER start
Starting DmServiceDMSERVER: [ OK ]

3、[dmdba@dm8dsc2 bin]$ ./DmWatcherServiceDMSERVER start
Starting DmWatcherServiceDMSERVER: [ OK ]

4、[dmdba@dm8dsc1 bin]$ ./DmWatcherServiceDMSERVER start
Starting DmWatcherServiceDMSERVER: [ OK ]
注意:要等守护进程启动完成后再验证,否则会提示如下
[dmdba@dm8dsc2 bin]$ ./DmServiceDMSERVER start
Starting DmServiceDMSERVER: [ OK ]
[dmdba@dm8dsc2 bin]$ ./disql SYSDBA/SYSDBA
[-5671]:没有CREATE SESSION权限.
[dmdba@dm8dsc2 bin]$ ./DmWatcherServiceDMSERVER start
Starting DmWatcherServiceDMSERVER: [ OK ]

[dmdba@dm8dsc2 bin]$ ./disql SYSDBA/SYSDBA
服务器[LOCALHOST:5236]:处于备库打开状态
登录使用时间 : 6.696(ms)
八、启动监听测试切机
image.png

九、检查当前版本
SQL>select id_code from dual;
SQL> select * from v$instance;
image.png

十、回退方案
1、关闭dm相关服务
停止确认监视器
备watcher-主watcher-主server-备server
2、恢复使用旧的执行码
[dmdba@dm8dsc1 dmdbms]$ mv bin bin_new
[dmdba@dm8dsc1 dmdbms]$ mv bin_bak1/ bin

[dmdba@dm8dsc2 dmdbms]$ mv bin bin_new
[dmdba@dm8dsc2 dmdbms]$ mv bin_bak1/ bin
3、再次使用旧的bin脱机还原:
主备库均执行:
RMAN>restore database ‘/data/dmdbms/DAMENG/DAMENG/dm.ini’ from backupset ‘/data/dmdbms/DAMENG/DAMENG/bak/full_bakup0915’;
RMAN>recover database ‘/data/dmdbms/DAMENG/DAMENG/dm.ini’ from backupset ‘/data/dmdbms/DAMENG/DAMENG/bak/full_bakup0915’;
RMAN> recover database ‘/data/dmdbms/DAMENG/DAMENG/dm.ini’ update db_magic;
recover database ‘/data/dmdbms/DAMENG/DAMENG/dm.ini’ update db_magic;
image.png
4、依次mount启动服务
[dmdba@dm8dsc1 bin]$ ./DmServiceDMSERVER start mount
Starting DmServiceDMSERVER: [ OK ]
[dmdba@dm8dsc2 bin]$ ./DmServiceDMSERVER start mount
Starting DmServiceDMSERVER:
5、检查oguid是否一致,修改数据库模式
节点一:
SQL> select oguid from v$instance;

行号 OGUID


1 453331

已用时间: 8.339(毫秒). 执行号:0.
SQL> alter database primary;
操作已执行
节点二:
SQL> select oguid from v$instance;

行号 OGUID


1 453331

已用时间: 32.570(毫秒). 执行号:0.
SQL> alter database standby;
操作已执行
6、顺序启动主备库守护进程
[dmdba@dm8dsc1 bin]$ ./DmWatcherServiceDMSERVER start
Starting DmWatcherServiceDMSERVER: [ OK ]

[dmdba@dm8dsc1 bin]$ ./DmWatcherServiceDMSERVER start
Starting DmWatcherServiceDMSERVER: [ OK ]
7、启动确认监视器

8、检验数据库是否成功回退
SQL> select id_code from dual;

行号 ID_CODE


1 1-1-144-20.11.06-129436-ENT Pack1
注意:不要忘记开启dmap服务。

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服