oracle dg切换操作示例

来源:这里教程网 时间:2026-03-03 12:48:11 作者:

  背景:应对发生灾难、故障和其他割接场合进行的灾备演练,包括主备切换和主机意外宕机。   一、主备切换( switch over   ################# #  primary 操作 ################# 1 )确认主机打开方式 SQL> select DATABASE_ROLE,PROTECTION_MODE,open_mode from v$database;  2 )切换到备机模式 SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY;   ############### #  standby 操作 ############### 1 )取消备机日志应用 SQL> alter database recover managed standby database cancel; 2 )切换到主机模式 SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY; 3 )重启备库 SQL> SHUTDOWN IMMEDIATE; SQL> STARTUP;   ############### #  primary 操作 ############### 1 )重启主库 SQL> SHUTDOWN IMMEDIATE; SQL> STARTUP MOUNT; 2 )调整为“ READ ONLY ”状态 SQL> alter database open; 3 )应用日志 SQL> alter database recover managed standby database using current logfile disconnect; 4 )确认 open_mode 为“ READ ONLY WITH APPLY SQL> select open_mode from v$database;   ############# #  test 测试 ############# 在原备机上插入数据,测试原主机是否收到。     二、主库宕机( failover   ############### #  primary 操作 ############### $ ps –ef | grep pmon $ kill -9 {pid_pmon}   ############### #  standby 操作 ###############

  1. 取消 standby 日志应用

standby SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL; standby SQL> alter database recover managed standby database finish; ※如果没有应用standby redolog,此处使用下面的命令: standby SQL> alter database recover managed standby database finish skip standby logfile; 2 )重启 db mount 状态 standby SQL> shutdown immediate; standby SQL> startup mount;  3 )切换到主机模式 standby SQL> alter database commit to switchover to primary; standby SQL> alter database open;   ############# #  test 测试 ############# 测试原备机是否可以连接使用,并统计丢失数据。   如果是Oracle rac,在进行切换操作时,需要关闭一个节点即可,方法是一样的

相关推荐