数据库为dsc+dsc构建的主备集群,一个dsc集群主库和一个dsc集群备库,还原使用的备份集为一个全量备份集,多个增量备份集。还原场景为需要将主备集群还原至某个备份集。整个还原思路为先将主库进行还原,然后依照主库还原备库,最后组建主备集群。
确保待还原的主备集群已停机,还原用到的备份集能正常使用。
在主库dsc集群所有节点/dm/bin目录下执行命令
./DmCSSServicePROD1 start 启动css服务 ./DmASMSvrServicePROD1 start 启动asm服务
需注意执行命令启动asm服务前确保dsc所有节点已成功启动css服务。
在主库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集群其中一个节点上操作即可,而上面执行的还原操作命令指定的备份集为,需要还原的时间点之前备份的全量或增量备份集。
在主库dsc集群目录/dm/bin下执行命令
DmServicePROD1 start 启动数据库服务
主库dsc集群所有节点启动后检查数据库状态。
在主库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;"
在主库dsc集群所有节点/dm/bin目录下执行,将备库dsc集群状态从mount改为open,执行命令如下:
./disql -S -L sysdba/Dameng123@localhost:5236 -e "alter database open;"
需要注意该命令执行有严格的执行循序,需要先在主库dsc集群控制节点执行完成后,然后再在主库dsc集群普通节点执行。
在主库dsc集群某一个节点/dm/bin目录下执行
./disql -S -L sysdba/Dameng123@localhost:5236 -e "shutdown immediate;"
在主库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 '备份文件全路径'"
在主库dsc集群所有节点/dm/bin目录下执行
DmServicePROD1.service start 启动数据库服务
在主库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;"
在主库dsc集群某个节点/dm/bin目录下执行
./disql -S -L sysdba/Dameng123@localhost:5236 -e "shutdown immediate;"
在主库dsc集群所有节点/dm/bin目录下执行命令
./DmASMSvrServicePROD1 stop 停止asm服务 ./DmCSSServicePROD1 stop 停止css服务
在备库dsc集群所有节点/dm/bin目录下执行命令
./DmCSSServicePROD2 start 启动css服务 ./DmASMSvrServicePROD2 start 启动asm服务
在备库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集群备份的备份集数据拷贝到备库指定目录。
在备库dsc集群所有节点/dm/bin目录下执行
DmServicePROD2.service start 启动数据库服务
在备库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;"
在备库dsc集群某个节点/dm/bin目录下执行
./disql -S -L sysdba/Dameng123@localhost:5236 -e "shutdown immediate;"
在备库dsc集群所有节点/dm/bin目录下执行命令
./DmASMSvrServicePROD2 stop 停止asm服务 ./DmCSSServicePROD2 stop 停止css服务
在主备库dsc集群所有节点/dm/bin目录下执行命令
DmCSSService实例名.service start DmASMSvrService实例名.service start DmService实例名.service start DmWatcherService实例名.service start
需注意启动以上服务时确保一个服务在所有节点上启动了,再启动下一个服务,严格遵守启动顺序DmCSSService -> DmASMSvrService -> DmService -> DmWatcherService。
文章
阅读量
获赞
