• [Oracle工程师手记] 因为意外发生 failover 之后,如何尽量地重用原来的主库


         有的时候,我们在Data Guard 环境中,因为某种意外(例如 主库的电源设备损坏)导致主库一时之间无法工作,只好把备库 failover ,改变角色,变成主库。事后,老的主库的硬件问题得到修正,它的数据也没有丢失,我们可能不想再折腾一番,用老主库的硬件重新作一套备库。而是希望,直接把它变成备库。

     如何作呢? 如果有幸设置了数据库的 flashback 有效,那么可以借助于 flashback 功能,来快速将主库转变为备库。下面是具体的步骤:

     首先,需要找到旧的备库,变成新的主库时的 SCN:

    select standby_became_primary_scn from v$database;
    

     比如,得到的 SCN 是: 1622177。

    然后,重启动老主库到 mount 状态,再 flashback 到这个 SCN值:

    shu immediate
    startup mount
    
    flashback database to scn <SCN>; <<<<< 用查询得到的 SCN。
    

     接下来,把老主库,变成新的备库:

    alter database convert to physical standby;
    

     如果新主库和新备库之间可以连通,新主库的 log_archive_dest_n (例如 :2) 已经指向 新备库。新主库和新备库的 fal_server 都已经配置指向了对方,那么就可以开始从 新的主库向新备库传递 REDO,进行同步了。

    recover managed standby database disconnect;
    

     而且,一般情况下,往往老的主库的硬件配置会比老的备库的硬件配置高很多,所以,上述的新主库和新备库可以正常同步后,我们也可以在他们之间进行 switchover ,使得老的主库再次变回主库。

  • 相关阅读:
    获取SqlServer2005表结构
    SQL SERVER 2005连接其它数据库并导入数据表
    vs2008安装失败问题
    Elmah使用方法
    使用postman发送请求,body为空
    docker的简单使用
    mongodb5最新版本的安装和向外暴露端口
    初探gin框架
    img图片的src指定为网络中随便找的图片链接,但是控制台报错get请求403
    父元素为flex布局时,设置最后一个子元素靠右,其他靠左
  • 原文地址:https://www.cnblogs.com/gaojian/p/14637912.html
Copyright © 2020-2023  润新知