Rumah >pangkalan data >tutorial mysql >Oracle 11gR2 DataGuard环境BROKER配置Fast-Start Failover

Oracle 11gR2 DataGuard环境BROKER配置Fast-Start Failover

WBOY
WBOYasal
2016-06-07 17:19:551054semak imbas

FAST-START failover 就是在当主数据库出现故障时,能快速与可靠的把standby切换成主数据库,在整个过程中不需要人来干预。fast-

FAST-START failover 就是在当主数据库出现故障时,能快速与可靠的把standby切换成主数据库,在整个过程中不需要人来干预。fast-start failover只能通过dgmgrl与Enterprise Managerg来配置。

只有maximum availability mode or maximum performance mode才能启用fast-start failover模式。在maximum availability模式下面,在切换时可以保证无数据丢失,在maximum performance mode下面,会有数据丢失,丢失多少数据由 FastStartFailoverLagLimit这个参数来配置。

只要observer进程启动过,我们就不需要人为的干预。当observer与指定的备数据库与主数据库失去连接的时间超过FastStartFailoverThreshold后,,observer就会启动fast-start failover 到备数据库。如果配置了FastStartFailoverPmyShutdown为true,此时原来的主数据库将会自动的shutdown。如果配置FastStartFailoverAutoReinstate为true,当failover完成后,启动数据库时,会自动的执行Reinstate database,把原来的主数据库变成备库,并与新主库进行同步。

  fast-start failover包含3个过程,如下图:

 

测试开始:

   环境:OS RedHat 5.6 X86_64 ,DB 11.2.0.2

 

1,DG环境的搭建。

见Oracle 11GR2 搭建活动的物理DG/DataGuard (READ ONLY模式)

 

2,broker的配置

3,配置保护模式与日志传递方式

之前已经说了FAST-START FAILOVER只 maximum availability mode与maximum performance mode

下面我们看一下每一种保护模式对应的日志传递方式。

3.1修改保护模式:

  • 3.2 修改日志传递方式

  • 4 配置数据库的flashback

    4.1 主库上面

  • 4.2 备库上面

  • 5 配置observer服务器

    5.1 配置tnsnames.ora文件。

  • [oracle@test admin]$ cat tnsnames.ora 
  • HTZB = 
  •   (DESCRIPTION = 
  •     (ADDRESS_LIST = 
  •       (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.100.31)(PORT = 1521)) 
  •     ) 
  •     (CONNECT_DATA = 
  •       (SERVER = dedicate) 
  •       (SERVICE_NAME = htzb) 
  •     ) 
  •   ) 
  •  
  • HTZ = 
  •   (DESCRIPTION = 
  •     (ADDRESS_LIST = 
  •       (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.100.30)(PORT = 1521)) 
  •     ) 
  •     (CONNECT_DATA = 
  •       (SERVER = dedicate) 
  •       (SERVICE_NAME = htz) 
  •     ) 
  •   ) 
  • 5.2 启动observer进程

  • 6 配置fast-start failover

  • 于fst-start failove相关的其它几个参数:

    FastStartFailoverPmyShutdown

    FastStartFailoverLagLimit

    FastStartFailoverAutoReinstate

    ObserverConnectIdentifier

    这里我们都使用默认值;我们来看一下这些值的默认值;

  • 7 启用fast-start failover

  • 8.测试FAST-START FAILOVER是否生效

  • DGMGRL> show configuration 
  •  
  • Configuration - htz 
  •  
  •   Protection Mode: MaxAvailability 
  •   Databases: 
  •     htz  - (*) Physical standby database 
  • Fast-Start Failover: ENABLED 
  • Configuration Status: 
  • SUCCESS 
  • #原主库直接shutdown abort; 
  • SQL> shutdown abort; 
  • ORACLE instance shut down. 
  • SQL>  
  • #observer进程的日志 
  • 19:03:03.93  Friday, September 07, 2012
    Initiating Fast-Start Failover to database "htz"...
    Performing failover NOW, please wait...
    Failover succeeded, new primary is "htz"
    19:03:13.24  Friday, September 07, 2012
  • #提示已经把主切换到htz 
  • #在htz上面查看一下 
  •  
  • OPEN_MODE            DATABASE_ROLE 
  • -------------------- ---------------- 
  • 已经成功
  • 手动启动原主库
  • DGMGRL> show configuration;

    Configuration - htz

      Protection Mode: MaxAvailability
      Databases:
        htz  - Primary database
          Warning: ORA-16817: unsynchronized fast-start failover configuration

        htzb - (*) Physical standby database (disabled)
          ORA-16661: the standby database needs to be reinstated

    Fast-Start Failover: ENABLED

    Configuration Status:
    WARNING

    DGMGRL> connect sys/oracle@htzb
    Connected.
    DGMGRL> startup
    ORACLE instance started.
    Database mounted.
    ORA-16649: possible failover to another database prevents this database from being opened
  • #过一分会后我们再查看一下状态
  • DGMGRL> connect sys/oracle@htz
    Connected.
    DGMGRL> show configuration

    Configuration - htz

      Protection Mode: MaxAvailability
      Databases:
        htz  - Primary database
        htzb - (*) Physical standby database

    Fast-Start Failover: ENABLED

    Configuration Status:
    SUCCESS
  • 查看状态,一切正常。
  • linux

    Kenyataan:
    Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn