zoukankan      html  css  js  c++  java
  • Oracle Data Guard Switchover 切换

    昨天总部巡检,要求对Oracle  Data Guard 做一个switchover的切换演示。 以前都是在虚拟机上做这种切换的,没有在生产库上做过。所以还是有些紧张。不过做DBA 一定要给自己留一条后路: 备份。 先shutdown,做冷备,在逻辑备份,加上之前的RMAN。 即使切换失败,还有备份可用心里也就有底了。

    照着文档做,切换还是比较顺利的。但是在改IP的时候还是有点小插曲,在这里浪费了点时间。因为之前在虚拟机上没有改过IP。 但是在生产环境上,肯定是要改主备库IP的。 不管怎样。总算折腾完了。 

    三点多同事送我回去的,洗个澡就睡了,早上9点多就起来了。 上班前室友和我说你太幸苦了。 回: This is Job。 

    其他的一些知识参考如下连接:

    Oracle Data Guard Linux 平台 Physical Standby 搭建实例

    http://blog.csdn.net/tianlesoftware/archive/2010/04/30/5547565.aspx

    Oracle Data Guard 理论知识

    http://blog.csdn.net/tianlesoftware/archive/2010/04/22/5514082.aspx

    在 Physical Standby 搭建实例 这片文章的最后对switchoverfailover的切换都做了说明,不过这里面没有涉及到服务器IP的修改。 我们前台应用都是和IP地址关联的,如果不改服务器的IP,就要修改应用的IP,如果应用很多的话,改起来还是比较麻烦的。

    修改IP地址情况下的switchover  步骤如下:

    一. 查看主库switchover 状态 

    SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;

    SWITCHOVER_STATUS

    --------------------

    TO STANDBY

    附: A:switchover_status出现session active/not allowed 

     当出现session active的时候表示还有活动的session,则运行 

     Alter database commit to switchover to physical standby with session shutdown; 

          当出现not allowed时,在官方文档说转换会不成功,但是我测试的时候成功了。 

         B.ora- 01153: an incompatible media recovery is active 

            运行下面代码 

            Alter database recover managed standby database finish; 

            或者Alter database recover managed standby database finish force; 

            Alter database recover managed standby database disconnect from session; 

     

    二. 将主库切换成备库

    SQL>Alter database commit to switchover to physical standby with session shutdown; 

    或者

    SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY; 

     

    三. 关闭主库

    SQL> SHUTDOWN IMMEDIATE 

     

    四. 查看备库 switchover 状态

    SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE; 

        TO PRIMARY 

    附:若不是用此语句切换:

    ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY with session shutdown 

    补充:若出现:ORA-16139: media recovery required

    是因为没有执行:alter database recover managed standby database disconnect from session; 

     

    五. 将备库切换成主库,然后关闭

    SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY; 

    Database altered. 

    SQL> shutdown immediate; 

     

    六. 更改服务器IP地址

    这个可以用xmanager 连过去,在界面上改,也可以直接用命令来修改。

    vi /etc/sysconfig/network-scripts/ifcfg-eth0
        service network restart

    Linux 修改 IP地址 和 网关

    http://blog.csdn.net/tianlesoftware/archive/2010/02/20/5312646.aspx

     

    七. 启动备库。 这里的启动顺序不能错,先启动备库,在启动主库,不然主库识别不了备库。

    SQL> startup nomount; 

    SQL> alter database mount standby database; 

    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION; 

     

    八.  启动主库

    SQL> startup; 

    SQL> alter system switch logfile; 

     

    九. 在主库查看log_archive_dest 参数的状态,是否有效。

    因为这里与监听和启动顺序有关,如果值为error,则归档不能传送到备库。 

    SQL>select status,database_mode from v$archive_dest_status; 

    Status状态为valid即可。 如果有错误,一般都是启动顺序和监听问题。 如果启动顺序没有问题,那么就把主库重新启动一下。

     

    十. 验证同步状态

    在主库运行:

    SQL>alter system switch logfile;

        然后在主备库分别运行:select sequence#,applied from v$archived_log; 

    确保applied都为YES。 

    如果用:select max(sequence#) from v$archived_log; 

    查看,如果主备库显示的一致,则只能表明归档已经传送到了备库,并不能表明该归档已经应用。 而applied 状态为YES,就表明该归档已经应用到了备库。

    如果等了很长时间applied 都无法应用,可以尝试一下方法:

    alter database recover managed standby database cancel; 

    alter database recover managed standby database disconnect from session; 

    2个语句是取消recover manager,在启动它。 

      通过以上十步,switchover 切换完成。 

     

    ------------------------------------------------------------------------------ 

    Blog: http://blog.csdn.net/tianlesoftware 

    网上资源: http://tianlesoftware.download.csdn.net 

    相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx 

    DBA1 群:62697716(); DBA2 群:62697977

    DBA3 群:63306533;     聊天 群:40132017

     

    道森Oracle,国内最早、最大的网络语音培训机构,我们提供专业、优质的Oracle技术培训和服务! 我们的官方网站:http://www.daosenoracle.com 官方淘宝店:http://daosenpx.taobao.com/
  • 相关阅读:
    zoj 2316 Matrix Multiplication 解题报告
    BestCoder7 1001 Little Pony and Permutation(hdu 4985) 解题报告
    codeforces 463C. Gargari and Bishops 解题报告
    codeforces 463B Caisa and Pylons 解题报告
    codeforces 463A Caisa and Sugar 解题报告
    CSS3新的字体尺寸单位rem
    CSS中文字体对照表
    引用外部CSS的link和import方式的分析与比较
    CSS样式表引用方式
    10个CSS简写/优化技巧
  • 原文地址:https://www.cnblogs.com/tianlesoftware/p/3610063.html
Copyright © 2011-2022 走看看