注册
达梦数据库归档日志修复
专栏/金的探索记录/ 文章详情 /

达梦数据库归档日志修复

2021/01/21 3153 2 0
摘要 达梦数据库归档日志修复

达梦数据库支持在基于 REDO 日志将数据库恢复到最新数据,但此处存在个问题,若原数据库不是正常停止,是被人为的 kill 掉或其它原因异常中止的,就会导致数据库 CKPT_LSN 与 FILE_LSN 之间的数据无法恢复。针对这种情况,达梦数据库提供了归档修复的功能,支持从联机日志文件中将 CKPT_LSN 之后有效的数据,写成新的本地归档文件,从而可支持数据库在异常中断的情况下,也能将数据库数据恢复到最新,不丢失数据。

具体方法如下:

  1. 确认数据库实例已停止。
  2. 判断实例是否异常中止,归档是否需要修复。

以下方法为查看数据库实例的最后一个本地归档文件的状态:

dmrachk arch_fil=/arch/CNDT/ ARCHIVE_LOCAL1_20160518094034438.log rachk V7.1.5.81-Build(2016.05.10-68432trunc-debug) /*******************************************************************/ archive file ARCHIVE_LOCAL1_20160518094034438.log itemize. arch_status : ACTIVE arch n_rpags : 992 arch_db_magic : 1463364211 arch_pemnt_magic : 1463364245 arch_next_seq : 12669 arch_lsn : 34548 arch_seq : 11678 clsn : 40135 rarch file len : 268435456 rarch file free: 512000 rarch create time : 2016- 5-18 9:39:46 rarch close time : 2016- 5-18 9:40:34 /*******************************************************************/ The SUMMARY: total files: 1 okey files: 1 fail file: 0 the rachk tool running cost 0.901 ms

通过上述我们看到 arch_status : ACTIVE,若归档状态是 INACTIVE,则认为数据库正常退出,否则,则认为数据库异常退出。故此时应该进行归档修复,将数据库中异常中断时的 CKPT_LSN 与 FILE_LSN 之间的数据找回来。

  1. 进入 DMRMAN,进行归档修复。
RMAN>REPAIR ARCHIVELOG DATABASE '/dbdata/CNDT/dm.ini';
  1. 修复归档完成后,查看数据库实例的归档目录,发现多了一个归档日志文件,查看最后 2 个日志文件的状态。
dmrachk arch_fil=/arch/CNDT/ ARCHIVE_LOCAL1_20160518094034438.log rachk V7.1.5.81-Build(2016.05.10-68432trunc-debug) /*******************************************************************/ archive file ARCHIVE_LOCAL1_20160518094034438.log itemize. arch_status : INACTIVE arch n_rpags : 992 arch_db_magic : 1463364211 arch_pemnt_magic : 1463364245 arch_next_seq : 12669 arch_lsn : 34548 arch_seq : 11678 clsn : 40135 rarch file len : 512000 rarch file free: 512000 rarch create time : 2016- 5-18 9:39:46 rarch close time : 2016- 5-18 10: 5: 8 /*******************************************************************/ The SUMMARY: total files: 1 okey files: 1 fail file: 0 the rachk tool running cost 0.901 ms dmrachk arch_fil=/arch/CNDT/ ARCHIVE_LOCAL1_20160518100508637.log rachk V7.1.5.81-Build(2016.05.10-68432trunc-debug) /*******************************************************************/ archive file ARCHIVE_LOCAL1_20160518094034438.log itemize. arch_status : INACTIVE arch n_rpags : 992 arch_db_magic : 1463364211 arch_pemnt_magic : 1463364245 arch_next_seq : 12669 arch_lsn : 34548 arch_seq : 11678 clsn : 40135 rarch file len : 512000 rarch file free: 512000 rarch create time : 2016- 5-18 9:39:46 rarch close time : 2016- 5-18 10: 5: 8 /*******************************************************************/ The SUMMARY: total files: 1 okey files: 1 fail file: 0 the rachk tool running cost 0.901 ms

至此,主机实例归档目录下的最后 2 个归档文件状态均为:INACTIVE,表示归档修复成功。此时数据库通过备份还原时,均可通过归档日志将数据恢复到最新。

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服