美文网首页
双活切换

双活切换

作者: Reiko士兵 | 来源:发表于2019-02-24 00:55 被阅读0次
    1. 获取数据库基本信息
    SELECT name,
           db_unique_name,
           open_mode,
           database_role
    FROM   v$database;
    

    检查数据库的角色信息,区分主库(primary)和备库(physical standby)。

    2. 停主库实例
    shutdown immediate
    

    此步骤需要停primary数据库所有节点实例。

    3. 启一个主库实例至mount状态
    startup mount
    

    将主库任意一个节点启至mount状态即可。

    4. 主库创建还原点
    create restore point befor_open_dg guarantee flashback database;
    

    在启至mount状态的主库节点上创建还原点。

    5. 将mount状态的主库实例切成open状态
    alter database open;
    

    用此命令将mount状态的主库实例切至open状态。

    6. 切两三次日志
    alter system switch logfile;
    

    将此命令执行两三次,切两三次日志,注意观察主备库日志状态。

    7. 检查主库切换状态
    SELECT switchover_status
    FROM   v$database;
    

    若查询结果为to standby,则主库可执行下一步的切换操作。

    8. 主库切成备库
    alter database commit to switchover to standby with session shutdown;
    

    注意观察日志!

    9. 检查备库切换状态
    SELECT switchover_status
    FROM   v$database;
    

    若查询结果为to primary,则备库可执行下一步的切换操作。

    10. 备库切成主库
    alter database commit to switchover to primary with session shutdown;
    
    11. 将备库(已切成主库)所有实例启至open
    alter database open;
    

    注意检查备库(已切成主库)的监听等状态。

    12. 删除主库(已切成备库)上的还原点
    drop restore point befor_open_dg;
    
    13. 将主库(已切成备库)所有实例启至open
    alter database open;
    

    或者

    startup
    

    对于mount状态的主库(已切成备库)用第一条命令,对于之前shutdown的主库(已切成备库)用第二条命令拉起来,确保所有实例都被拉起来了。

    14. 在主库(已切成备库)任一节点实例启mrp进程
    alter database recover managed standby database using current logfile disconnect from session;
    

    拉起mrp进城后注意检查日志传输及应用状态。

    总体来说,切库操作还是很简单的,一定要多看日志!

    相关文章

      网友评论

          本文标题:双活切换

          本文链接:https://www.haomeiwen.com/subject/oeomyqtx.html