Welcome 微信登录

首页 / 数据库 / MySQL / DATAGUARD failover切换及配置范例

今天给客户演示了虚拟机上的switchover和failover的切换过程。客户关心的重点自然是failover,我们直接关掉虚拟存储的开关来模拟阵列故障。failover步骤如下1. 
  1. select NAME,RESETLOGS_TIME,LOG_MODE,OPEN_MODE,PROTECTION_MODE,REMOTE_ARCHIVE,   
  2. DATABASE_ROLE,SWITCHOVER_STATUS,FORCE_LOGGING   
  3. from v$database;  
2. 停止日志应用
  1. alter database recover managed standby database cancel;  
3. 关闭standby日志传输
  1. alter database recover managed standby database finish force;  
4. 切换到primary
  1. alter database commit to switchover to primary with session shutdown;  
做这一步的时候,若存在gap,则会报ORA-16139    :Switchover: Media recovery required - standby not in limbo 错误。做测试的时候,若先起主库再起备库,且未等待备库相关日志传输完毕,就会出现这个问题。此时需要强制切换
  1. alter database activate physical standby database;  
5. 重启数据库到open状态 附上单机到单机的linux下dataguard实施过程。

准备环境

PRIMARY: RHEL 4.7 + Oracle 10.2.0.4单机+文件系统  主机名:zhbqdb1STANDBY: RHEL 4.7 + oracle 10.2.0.4单机 + 文件系统  主机名:zhbqdb2主机上创建一个库名为zhdydb1的数据库,开启归档模式。备机装好数据软件,版本升级到与主机一致

在主机和备机上配好/etc/hosts并创建数据存放路径

# Do not remove thefollowing line, or various programs
#that require network functionality will fail.
127.0.0.1               localhost.localdomain localhost
172.17.42.29            zhbqdb1
172.17.42.30            zhbqdb2 创建存放数据文件和归档的目录
  1. mkdir /u01/flash_recovery_area  
  2. mkdir /u01/oradata  
  3. chown oracle:oinstall/u01/flash_recovery_area  
  4. chown oracle:oinstall/u01/oradata  

主机的配置

打开force logging

SQL> alter database force logging;查看当前数据库是否置于force logging 下:selectforce_logging from v$database;

创建归档目录

  1. mkdir /u01/flash_recovery_area/ZHDYDB1/arch  
  2. mkdir/u01/flash_recovery_area/ZHDYDB2  
  3. mkdir/u01/flash_recovery_area/ZHDYDB2/arch  
  4. mkdir/u01/flash_recovery_area/ZHDYDB2/archivelog  

配置tnsnames

在zhbqdb1上vi$ORACLE_HOME/network/admin/tnsnames.oraZHDYDB1 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST =zhbqdb1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = zhdydb1)
    )
  )
 
ZHDYDB2 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST =zhbqdb2)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = zhdydb2)
    )
  ) 
  • 1
  • 2
  • 3
  • 4
  • 下一页
SOLARIS下RAC中的vip无法正常启动的解决办法imp导入时出现imp-00017 ora-06550的解决办法相关资讯      Oracle教程 
  • Oracle中纯数字的varchar2类型和  (07/29/2015 07:20:43)
  • Oracle教程:Oracle中查看DBLink密  (07/29/2015 07:16:55)
  • [Oracle] SQL*Loader 详细使用教程  (08/11/2013 21:30:36)
  • Oracle教程:Oracle中kill死锁进程  (07/29/2015 07:18:28)
  • Oracle教程:ORA-25153 临时表空间  (07/29/2015 07:13:37)
  • Oracle教程之管理安全和资源  (04/08/2013 11:39:32)
本文评论 查看全部评论 (0)
表情: 姓名: 字数