达梦数据库支持在基于 REDO 日志将数据库恢复到最新数据,但此处存在个问题,若原数据库不是正常停止,是被人为的 kill 掉或其它原因异常中止的,就会导致数据库 CKPT_LSN 与 FILE_LSN 之间的数据无法恢复。针对这种情况,达梦数据库提供了归档修复的功能,支持从联机日志文件中将 CKPT_LSN 之后有效的数据,写成新的本地归档文件,从而可支持数据库在异常中断的情况下,也能将数据库数据恢复到最新,不丢失数据。
具体方法如下:
以下方法为查看数据库实例的最后一个本地归档文件的状态:
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 之间的数据找回来。
RMAN>REPAIR ARCHIVELOG DATABASE '/dbdata/CNDT/dm.ini';
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,表示归档修复成功。此时数据库通过备份还原时,均可通过归档日志将数据恢复到最新。
文章
阅读量
获赞