背景:应对发生灾难、故障和其他割接场合进行的灾备演练,包括主备切换和主机意外宕机。 一、主备切换( switch over ) Primary数据库操作 1 )确认主机打开方式 SQL> select DATABASE_ROLE,PROTECTION_MODE,open_mode fromv$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 )调整为“ READONLY ”状态 SQL> alter database open; 3 )应用日志 SQL> alter database recover managed standby database usingcurrent logfile disconnect; 4 )确认 open_mode 为“ READ ONLY WITH APPLY ” SQL> select open_mode from v$database; 5 )测试 在原备机上插入数据,测试原主机是否收到。 二、主库宕机( failover ) primary数据库操作 $ ps –ef | grep pmon $ kill -9 {pid_pmon} Standby数据库操作 1. 取消 standby 日志应用 standby SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASECANCEL; standby SQL> alter database recover managed standby databasefinish; 如果没有应用standby redolog,此处使用下面的命令: standby SQL> alter database recover managed standby databasefinish 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; 5 )test 测试 测试原备机是否可以连接使用,并统计丢失数据。
|