1、全库备份(联机在线方式) ,数据量 5t
备份前先清理归档,做好检查点
SQL> SF_ARCHIVELOG_DELETE_BEFORE_TIME(NOW);
SQL> CHECKPOINT(100);
SQL> BACKUP DATABASE FULL BACKUPSET ‘/nas_path/rms_db_full_backup_20260319’ compressed level 1 task thread 16;
Results: 本次备份耗时:1.21:40,这和服务器io及相关资源及备份并行度等配置相关
Tips:
1、如备份到最后遇到"[-8147]:超时间隔内IO操作未响应"错误,请调整参数SP_SET_PARA_VALUE(1, ‘BAK_TIMEOUT’, 1800); 即可,动态生效
2、达梦的备份压缩压缩比很高,设置level 1 就可以了,压缩后全库备份数据量在 500G左右 ,压缩比在 1:10;如果服务器资源允许可加大 并行备份线程 task thread 16 会减少备份时间
2、备份原容灾备库 相关配置文件后 建议先重新初始化实例(因为有可能在旧的库上还原后,开启主备dw后主库可能会报发送归档日志错误,如图,这样报错主备不会同步),然后在执行还原操作
1) 、实例初始化参数需与原来的一致
2) 、还原后需正常启动一次实例 ,后正常关闭
dmserver /dmdata/RMSDM_DW01/dm.ini
3) 、复制原来的配置文件 cp /dmdata/ini_bak/*.ini /dmdata/RMSDM_DW01/
4)、再次启动,关闭,后开始还原操作
3、备份完后传到备库应用全量或直接备份在nfs上就不用scp 直接在备库上开始还原操作 (这里直接备份在nfs上)
还原前建议先备份原来库的 ini 配置文件
RMAN>
restore database ‘/dmdata/RMSDM_DW01/dm.ini’ from backupset ‘/nas_path/rms_db_full_backup_20260319’;
4、在主库上登录asm复制归档文件出来在到备库上应用这个归档集
5、在将归档日志在备库还原:
RMAN> recover database ‘/dmdata/RMSDM_DW01/dm.ini’ WITH ARCHIVEDIR ‘/dmdata/rms_db_archive_new’;
Tips:
1、这个过程可以比较久,根据全备时间到现在产生的归档量而定,本次用了2个小时左右,忘记截图了
2、另外但执行完 最后会报 “”归档文件不连续“”相关信息,可忽略,因为我们 是直接cp 主库在生成的归档文件过来的。待备库启动后会 自动从主库续传归档过来应用,直到追平
RMAN>recover database ‘/dmdata/RMSDM_DW01/dm.ini’ update db_magic ;
6、由于主备库相关配置文件已经是配置好的(建议在检查确认一下),还原后直接启动容灾备库,观察主备库的dmserver 允许日志及dmwacher 日志即可
7、分别启动主库的 dmwacher进程
8、开始向备库发送归档日志
此时备库的状态还为完全同步,观察日志正在追归档,查询v$arch_sed_info 信息,确认同步是否报错及是否在正常发送归档日志到备库
9、 登录监视器 查看DW集群状态(备库归档状态为不可用,FLSN 还不一致)
10、登录主库查询主备库LSN差值
Tips: 可持续观察改数值是否在缩小
11、观察备库 IO情况
这个过程追归档的过程可能需要一点时间因要追平的归档数据量及服务器IO状态而异
12、同步成功、已追平归档、备库的RSTAT 状态置为VALID ,主库变为可恢复状态
13、检查 主备集群是否满足切换条件
14、实际同步测试
1)、主库登录创建表、数据
create table test_wll_20260320(id int, name varchar(20));
insert into test_wll_20260320(id,name)values(1,‘WLL01’);
commit;
select * from test_wll_20260320;
2)、备库查询验证
select * from test_wll_20260320;
15、至此,备库已经在线恢复完成,无须重启主库,不影响主库业务。
文章
阅读量
获赞
