oralce data guard相关

一、dg的搭建、计划切换、故障切换:
    https://blog.csdn.net/shiyu1157758655/article/details/72878249
    其中搭建有如下两点需要注意:
    1)备库密码文件跟实例名一样,而不是跟db_unique_name一样,如下(而不是orapwdgstd):

点击(此处)折叠或打开

  1. [oracle@dg2 dbs]$ ll
  2. -rw-r----- 1 oracle oinstall 1536 Dec 11 15:56 orapwdg
    2)主库和备份的tns文件都需要加上(UR = A)参数:

点击(此处)折叠或打开

  1. DGSTD =
  2.     (DESCRIPTION =
  3.         (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
  4.         (CONNECT_DATA =
  5.             (SERVER = DEDICATED)
  6.             (SERVICE_NAME = dgstd)
  7.             (UR = A)
  8.         )
  9.     )
二、switchover
    主库:

点击(此处)折叠或打开

  1. SQL> select switchover_status,database_role from v$database;
  2.     SWITCHOVER_STATUS DATABASE_ROLE
  3.     -------------------- ----------------
  4.     TO STANDBY PRIMARY
  5. SQL> alter database commit to switchover to physical standby;
  6. SQL> startup mount
  7. SQL> select database_role from v$database;
  8.     DATABASE_ROLE
  9.     ----------------
  10.     PHYSICAL STANDBY
    备库:

点击(此处)折叠或打开

  1. SQL>select switchover_status,database_role from v$database;
  2.     SWITCHOVER_STATUS DATABASE_ROLE
  3.     -------------------- ----------------
  4.     TO PRIMARY PHYSICAL STANDBY
  5. SQL>alter database commit to switchover to primary with session shutdown;
  6. SQL>alter database open;
  7. SQL>select switchover_status,database_role,open_mode from v$database;
  8.     SWITCHOVER_STATUS DATABASE_ROLE OPEN_MODE
  9.     -------------------- ---------------- --------------------
  10.     RESOLVABLE GAP PRIMARY READ WRITE
    新备库(原主库):

点击(此处)折叠或打开

  1. SQL> alter database open;
  2. SQL> alter database recover managed standby database using current logfile disconnect from session;
三、failover(必须确保主库备库的flashback是打开的,可查看v$database(flashback_on))
    第一阶段(故障):
        主库:

点击(此处)折叠或打开

  1. SQL> select switchover_status,database_role,open_mode from v$database;
  2.     SWITCHOVER_STATUS DATABASE_ROLE OPEN_MODE
  3.     -------------------- ---------------- --------------------
  4.     TO STANDBY PRIMARY READ WRITE
  5. SQL> shutdown abort
        备库:

点击(此处)折叠或打开

  1. SQL> alter database recover managed standby database cancel;
  2. SQL> alter database recover managed standby database finish force;
  3. SQL> select switchover_status,database_role,open_mode from v$database;
  4.     SWITCHOVER_STATUS DATABASE_ROLE OPEN_MODE
  5.     -------------------- ---------------- --------------------
  6.     TO PRIMARY PHYSICAL STANDBY READ ONLY
  7. SQL> alter database commit to switchover to primary;
  8. SQL> alter database open;
  9. SQL> select switchover_status,database_role,open_mode from v$database;
  10.     SWITCHOVER_STATUS DATABASE_ROLE OPEN_MODE
  11.     -------------------- ---------------- --------------------
  12.     FAILED DESTINATION PRIMARY READ WRITE
    第二阶段(恢复):
        新主库:

点击(此处)折叠或打开

  1. SQL> select to_char(standby_became_primary_scn) from v$database;
  2.     TO_CHAR(STANDBY_BECAME_PRIMARY_SCN)
  3.     ----------------------------------------
  4.     1022901
        新备库:

点击(此处)折叠或打开

  1. SQL> startup mount
  2. SQL> flashback database to scn 1022901;
  3. SQL> alter database convert to physical standby;
  4. SQL> shutdown immediate
  5. SQL> startup
  6. SQL> alter database recover managed standby database using current logfile disconnect from session;
  7. SQL> select open_mode from v$database;
  8.     OPEN_MODE
  9.     --------------------
  10.     READ ONLY WITH APPLY
四、dg的启动和关闭:
    1、启动:先启动standby库在启动primary库
        备库:

点击(此处)折叠或打开

  1. [oracle@dg2 ~]$ lsnrctl start
  2. SQL> startup #此时会自动启动成READ ONLY模式,可以查看v$database(OPEN_MODE)
  3. SQL> alter database recover managed standby database using current logfile disconnect from session;
        主库:

点击(此处)折叠或打开

  1. [oracle@dg1 ~]$ lsnrctl start
  2. SQL> startup
    2、关闭:先关闭primary库再关闭standby库
        主库:

点击(此处)折叠或打开

  1. SQL> shutdown immediate
        备库:

点击(此处)折叠或打开

  1. SQL> alter database recover managed standby database cancel;
  2. SQL> shutdown immediate
    3、验证是否正常:

点击(此处)折叠或打开

  1. SQL> col dest_name format a30
  2. SQL> col error format a20
  3. SQL> select dest_name,error from v$archive_dest; #查看是否有报错
五、dg相关知识点:
    http://lib.csdn.net/article/oracle/29298















来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31441616/viewspace-2152992/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/31441616/viewspace-2152992/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值