Oracle 10g/11g下如何将物理Standby库临时激活用于测试

在实际运营环境中, 我们经常碰到类似这样的需求:

譬如想不影响现网业务评估DB补丁在现网环境中运行的时间, 或者是想在做DB切换前想连接Standby DB做实际业务运行的测试.

  • 如果在9i版本的时候, 想做到这样, 在不搭建新测试环境的前提下, 可以将Standby DB激活后进行测试, 但是激活后的Standby DB将不能再用于容灾, 必须重建Standby DB;

  • 在10g以及11g之后, 可以利用新特性很好的解决这个问题, 激活的Standby DB可以闪回到激活前的状态, 继续参与容灾, 而不需要重建.


下面简单说明下实施的步骤:

  • Oracle 10g环境下:

    • 确保设置了Flash Recovery Area

        SQL> show parameter db_recovery
      
        NAME                                 TYPE                   VALUE
      ------------------------------------ ---------------------- ------------------------------
      db_recovery_file_dest string /data1/flash_recovery_area
      db_recovery_file_dest_size big integer 80G

      如果没设置, 请使用alter system命令进行设置, 需要重启DB.

    • 取消Standby DB的同步, 创建可保障的还原点.

        SQL> alter database recover managed standby database cancel;
      SQL> create restore point beforetest guarantee flashback database;
    • 激活Standby库进行测试

        SQL> alter database activate standby database;
      SQL> alter database open;

      测试Standby DB已激活并可写打开, 之后可以开始进行测试.

    • 将激活的Standby 库闪回并重新转换为Standby DB。

        SQL> startup mount force
      SQL> flashback database to restore point beforetest;
      SQL> alter database convert to physical standby ;
    • 删除之前创建的还原点并重新开启同步

        SQL> startup mount force;
      SQL> drop restore point beforetest;
      SQL> alter database recover managed standby database disconnect from session;

    在这个过程中, 主库到备库的日志传输会报错, 建议在主库上将到Standby DB的日志传输先停止:

      SQL> alter system set log_archive_dest_state_2=defer;

    等闪回后再重新启用日志传输:

      SQL> alter system set log_archive_dest_state_2=enable;
  • Oracle 11g环境下:

    步骤更简单,11g中加入了Snapshot Standby Database的新特性, 其实也就是上面10g功能的一个包装而已, 唯一不同的是在转换为读写模式后任然可以继续接受主库过来的归档日志.

    步骤如下:

    • 取消日志应用

        SQL> alter database recover managed standby database cancel;
    • 重启并转换成Snapshot Standby Database。

        SQL> shutdown immediate;
      SQL> startup mount
      SQL> alter database convert to snapshot standby;
    • 打开后可进行读写相关测试

        SQL> alter database open;
    • 重新转换成physical Standby并开启同步

        SQL> shutdown immediate
      SQL> startup mount
      SQL> alter database convert to physical standby;
      SQL> shutdown immediate;
      SQL> startup nomount
      SQl> alter database mount standby database;
      SQL> alter database open read only;
      SQL> alter database recover managed standby database disconnect from session using current logfile;
  • 需要注意的点:

    • 10g中创建的还原点必须在闪回后进行删除, 否则闪回恢复区可能会被撑满, 导致DB Hang住;
    • 11g中不用担心这个问题, 在重新转换为physical standby时会自动进行还原点删除;

[Oracle] 临时将Physical Standby激活的更多相关文章

  1. ORACLE 11gR2 DG(Physical Standby)日常维护01

    环境:RHEL 6.4 + Oracle 11.2.0.4 一.主备手工切换 1.1 主库,切换成备库并启动到mount 1.2 备库,切换成主库并启动到open 1.3 新的备库启动日志应用 二.重 ...

  2. ORACLE 11gR2 DG(Physical Standby)日常维护02

    环境:RHEL 6.5 + Oracle 11.2.0.4 三.监控DG的状态 3.1监控DG备库的状态 3.2监控主库传输日志链路的状态 四.备库切换为snapshot standby 4.1备库切 ...

  3. 聊聊Oracle 11g的Snapshot Standby Database(上)

    Oracle 11g是Data Guard的重要里程碑版本.在11g中,Active DataGuard.Advanced Compression等特性大大丰富了Data Guard的功能和在实践领域 ...

  4. 【原】Configuring Oracle Data Guard In Physical Standby Database

    作者:david_zhang@sh [转载时请以超链接形式标明文章] http://www.cnblogs.com/david-zhang-index/p/5042640.html参照文档:https ...

  5. [Oracle][DATAGUARD] PHYSICAL STANDBY环境里,使用CATALOG管理Primary和Standby

    1.先使用控制文件构筑好PHYSICAL STANDBY环境(Primary:Single 11.2.0.4,Standby Single 11.2.0.4) 2.构筑好Catalog用的服务器(Ca ...

  6. [Oracle][DATAGUARD] 关于确认PHYSICAL STANDBY的同期状况的方法

    补上简单的确认PHYSICAL STANDBY的同期状况的方法: ODM TEST CASE===================Name = TC#1010_3 ####Primary#### SQ ...

  7. oracle 11g physical standby switchover

    简介 SWITCHOVERS主要是在计划停机维护时用来降低DOWNTIME,如硬件维护.操作系统升级或是数据库rolling upgrade, 也可用来进行特殊情况下的数据库迁移. SWITCHOVE ...

  8. ORACLE 11.2.0.4 Single To Single Data Guard 安装 physical standby

    [root@ORACLE ~]# su - oracle [oracle@ORACLE ~]$ sqlplus / as sysdba . 查看主库归档模式: SQL> select log_m ...

  9. ORACLE Physical Standby DG 之switch over

    DG架构图如下: 计划,切换之后的架构图: DG切换: 主备切换:这里所有的数据库数据文件.日志文件的路径是一致的 [旧主库]主库primarydb切换为备库standby3主库检查switchove ...

随机推荐

  1. Python入门必学:递归函数正确的操作使用方法,案例详解

    递归函数,在函数内部,可以调用其他函数.如果一个函数在内部调用自身本身,这个函数就是递归函数. 举个例子,我们来计算阶乘n! = 1 x 2 x 3 x ... x n,用函数fact(n)表示,可以 ...

  2. Go语言之反射(一)

    反射 反射是指在程序运行期对程序本身进行访问和修改的能力.程序在编译时,变量被转换为内存地址,变量名不会被编译器写入到可执行部分.在运行程序时,程序无法获取自身的信息.支持反射的语言可以在程序编译期将 ...

  3. easyui的layout

    1.浏览器自适应(即浏览器改变大小,里面的表格大小也会随之改变)要设置两个参数 (1)一般都要在body上设置class=“easyui-layout”: <body class="e ...

  4. Flask With

  5. WinRM和WinRS

    1.6.2 新远程工具:WinRM和WinRS 2012-05-14 10:18 张杰良 译 清华大学出版社 字号:T | T 综合评级: 想读(18)  在读(5)  已读(0)   品书斋鉴(0) ...

  6. MongoDB快速入门学习笔记1 windows安装MongoDB

    1.安装MongoDB 从MongoDB官网上下载MongoDB,我下载的版本是64位的3.2.6.下载完以后直接安装,我的安装目录是D:\work\MongoDB. 2.配置MongoDB的环境变量 ...

  7. Python+Selenium基础篇之3-打开和关闭IE/Chrome浏览器

    前面文章介绍了,如何调用webdriver接口方法来打开和关闭Firefox浏览器,本文介绍如何打开IE和Chrome浏览器.web项目,需要做兼容性测试,最重要的是浏览器兼容性测试.如果只考虑win ...

  8. File IO(NIO.2):路径类 和 路径操作

    路径类 Java SE 7版本中引入的Path类是java.nio.file包的主要入口点之一.如果您的应用程序使用文件I / O,您将需要了解此类的强大功能. 版本注意:如果您有使用java.io. ...

  9. ALPHA(四)

    目录 组员情况 组员1(组长):胡绪佩 组员2:胡青元 组员3:庄卉 组员4:家灿 组员5:凯琳 组员6:丹丹 组员7:何家伟 组员8:政演 组员9:鸿杰 组员10:刘一好 组员:何宇恒 展示组内最新 ...

  10. BZOJ 1787: [Ahoi2008]Meet 紧急集合(lca+贪心)

    [Ahoi2008]Meet 紧急集合 Description Input Output Sample Input 6 4 1 2 2 3 2 4 4 5 5 6 4 5 6 6 3 1 2 4 4 ...