注册
达梦数据库主备(包含dsc)集群备份集还原操作过程
培训园地/ 文章详情 /

达梦数据库主备(包含dsc)集群备份集还原操作过程

独唱徘徊 2025/10/22 250 0 0

1.还原准备

数据库为dsc+dsc构建的主备集群,一个dsc集群主库和一个dsc集群备库,还原使用的备份集为一个全量备份集,多个增量备份集。还原场景为需要将主备集群还原至某个备份集。整个还原思路为先将主库进行还原,然后依照主库还原备库,最后组建主备集群。

2.环境检查

确保待还原的主备集群已停机,还原用到的备份集能正常使用。

3.启动主库dsc节点的css和asm服务

在主库dsc集群所有节点/dm/bin目录下执行命令

./DmCSSServicePROD1 start 启动css服务 ./DmASMSvrServicePROD1 start 启动asm服务

需注意执行命令启动asm服务前确保dsc所有节点已成功启动css服务。

4.通过dmrman还原主库

在主库dsc集群某个节点目录/dm/bin下执行命令

./dmrman use_ap=2 dcr_ini=/dm/data/5236/PROD/dmdcr.ini CTLSTMT="restore database '/dm/data/5236/PROD/dm.ini' from BACKUPSET '/backup/备份集名称';" ./dmrman use_ap=2 dcr_ini=/dm/data/5236/PROD/dmdcr.ini CTLSTMT="recover database '/dm/data/5236/PROD/dm.ini' from BACKUPSET '/backup/备份集名称';" ./dmrman use_ap=2 dcr_ini=/dm/data/5236/PROD/dmdcr.ini CTLSTMT="recover database '/dm/data/5236/PROD/dm.ini' update db_magic;"

需要注意的是该操作只需要再主库dsc集群其中一个节点上操作即可,而上面执行的还原操作命令指定的备份集为,需要还原的时间点之前备份的全量或增量备份集。

5.启动主库

在主库dsc集群目录/dm/bin下执行命令

DmServicePROD1 start 启动数据库服务

主库dsc集群所有节点启动后检查数据库状态。

6.修改主库数据库模式

在主库dsc集群某一个节点/dm/bin目录下执行,由于备份集是备库上备份的,所以还原后主库的dsc集群模式是standby,首先修改ALTER_MODE_STATUS参数,将其设置为1,然后将备库dsc集群模式从standby改为normal,执行命令如下:

./disql -S -L sysdba/Dameng123@localhost:5236 -e "sp_set_para_value(1,'ALTER_MODE_STATUS',1);" ./disql -S -L sysdba/Dameng123@localhost:5236 -e "alter database normal;"

7.修改主库数据库状态

在主库dsc集群所有节点/dm/bin目录下执行,将备库dsc集群状态从mount改为open,执行命令如下:

./disql -S -L sysdba/Dameng123@localhost:5236 -e "alter database open;"

需要注意该命令执行有严格的执行循序,需要先在主库dsc集群控制节点执行完成后,然后再在主库dsc集群普通节点执行。

8.停止主库dsc集群

在主库dsc集群某一个节点/dm/bin目录下执行

./disql -S -L sysdba/Dameng123@localhost:5236 -e "shutdown immediate;"

9.备份主库dsc集群

在主库dsc集群某一个节点/dm/bin目录下执行

./dmrman use_ap=2 dcr_ini=/dm/data/5236/PROD/dmdcr.ini CTLSTMT="BACKUP DATABASE '/dm/data/5236/PROD/dm.ini' FULL TO 备份文件名称 BACKUPSET '备份文件全路径'"

10.启动主库dsc集群

在主库dsc集群所有节点/dm/bin目录下执行

DmServicePROD1.service start 启动数据库服务

11.修改主库dsc集群模式

在主库dsc集群某一个节点/dm/bin目录下执行,将主库dsc集群模式从normal改为primary

./disql -S -L sysdba/Dameng123@localhost:5236 -e "sp_set_para_value(1,'ALTER_MODE_STATUS',1);" ./disql -S -L sysdba/Dameng123@localhost:5236 -e "alter database primary;"

12.停止主库dsc集群

在主库dsc集群某个节点/dm/bin目录下执行

./disql -S -L sysdba/Dameng123@localhost:5236 -e "shutdown immediate;"

13.停止主库dsc集群的asm和css服务

在主库dsc集群所有节点/dm/bin目录下执行命令

./DmASMSvrServicePROD1 stop 停止asm服务 ./DmCSSServicePROD1 stop 停止css服务

14.启动备库dsc节点的css和asm服务

在备库dsc集群所有节点/dm/bin目录下执行命令

./DmCSSServicePROD2 start 启动css服务 ./DmASMSvrServicePROD2 start 启动asm服务

15.还原备库

在备库dsc集群某个节点/dm/bin目录下执行命令,还原用的备份集为之前步骤中在主库上备份的备份集数据

./dmrman use_ap=2 dcr_ini=/dm/data/5236/PROD/dmdcr.ini CTLSTMT="restore database '/dm/data/5236/PROD/dm.ini' from BACKUPSET '/backup/备份集名称';" ./dmrman use_ap=2 dcr_ini=/dm/data/5236/PROD/dmdcr.ini CTLSTMT="recover database '/dm/data/5236/PROD/dm.ini' from BACKUPSET '/backup/备份集名称';" ./dmrman use_ap=2 dcr_ini=/dm/data/5236/PROD/dmdcr.ini CTLSTMT="recover database '/dm/data/5236/PROD/dm.ini' update db_magic;"

需要注意将之前主库dsc集群备份的备份集数据拷贝到备库指定目录。

16.启动备库dsc集群

在备库dsc集群所有节点/dm/bin目录下执行

DmServicePROD2.service start 启动数据库服务

17.修改备库dsc集群模式

在备库dsc集群某一个节点/dm/bin目录下执行,将备库dsc集群模式从normal改为primary

./disql -S -L sysdba/Dameng123@localhost:5236 -e "sp_set_para_value(1,'ALTER_MODE_STATUS',1);" ./disql -S -L sysdba/Dameng123@localhost:5236 -e "alter database primary;"

18.停止备库dsc集群

在备库dsc集群某个节点/dm/bin目录下执行

./disql -S -L sysdba/Dameng123@localhost:5236 -e "shutdown immediate;"

19.停止备库dsc集群的asm和css服务

在备库dsc集群所有节点/dm/bin目录下执行命令

./DmASMSvrServicePROD2 stop 停止asm服务 ./DmCSSServicePROD2 stop 停止css服务

20.启动主备集群

在主备库dsc集群所有节点/dm/bin目录下执行命令

DmCSSService实例名.service start DmASMSvrService实例名.service start DmService实例名.service start DmWatcherService实例名.service start

需注意启动以上服务时确保一个服务在所有节点上启动了,再启动下一个服务,严格遵守启动顺序DmCSSService -> DmASMSvrService -> DmService -> DmWatcherService。

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服