在DG环境中,主库丢失归档,对主库进行基于SCN的增量备份来恢复物理DG环境

0    83    1

👉 本文共约906个字,系统预计阅读时间或需4分钟。

面试DBA岗位,面试官对于DG环境常常会问到,若是主库丢失了归档文件,而这些归档文件还未来得及传递到备库,则物理备库是否只能通过重建的方式来恢复呢?这道面试题是作者亲身经历,当时以为只能重建备库,但最后经过查找文档找到了解决办法,可以通过对主库进行基于SCN的增量备份来恢复物理DG。

全过程简单有如下几个步骤:

第一步,主库创建基于SCN的增量备份:

首先要知道误删除或者丢失的归档日志是从哪个SCN开始的。视图V$ARCHIVED_LOG的FIRST_CHANGE#列能够查到归档日志对应的起始SCN。可以使用如下SQL查询最小的SCN:

若最小的SCN为750983,则在主库上使用BACKUP ... INCREMENTAL FROM SCN为主库做一个增量备份,这个操作会将整个库中SCN大于750983的BLOCK全备份出来,SQL如下:

第二步,将备份的文件复制到备库端的空目录下

第三步,恢复备库的控制文件

在使用RMAN恢复备库的控制文件之前,需要将原来的控制文件进行手工的冷备并且记录下原来的控制文件中记录的数据文件的名称:

本人提供Oracle、MySQL、PG等数据库的培训和考证业务,私聊QQ646634621或微信db_bao,谢谢!

第四步,在备库执行RECOVER操作:

最后开启备库的实时应用进程,并且查询备库的日志应用情况:

若需要恢复的文件比较多,则可以使用如下的SQL来查询恢复的进度:

在DG环境中,主库丢失归档,对主库进行基于SCN的增量备份来恢复物理DG环境

在主库归档日志丢失无法同步到备库时,可以利用增量scn来备份主库的方式,从而避免重建standby。由于丢失了归档,所以最后需要对数据库进行一次全备。

在整个恢复过程中需要注意的几点:

① 若备库是rac,或者asm存储,则在还原控制文件后需要把控制文件中的数据文件重命名为备库的原数据文件名称才可以执行恢复操作。
② 在执行RECOVER DATABASE NOREDO前,应该让备库和主库都处于同一个incarnation,否则会报如下的错误,并且不能启用备库的实时日志应用功能:

标签:

头像

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

1 × 2 =

 

嘿,我是小麦,需要帮助随时找我哦
  • 18509239930
  • 个人微信

  • 麦老师QQ聊天
  • 个人邮箱
  • 点击加入QQ群
  • 个人微店

  • 回到顶部
返回顶部