1 Snapshot Standby
Snapshot Standby 是 Oracle Data Guard 可以将备库置为“可读写状态
”的一种备库类型,目的是为了进行模拟上线测试等在生产库上不能实现的任务。当读写状态的 Snapshot 备库测试任务完成后,可以方便地把 Snapshot Standby数据库角色切换回原先的备库角色,恢复与主库数据同步。在 Snapshot Standby 数据库状态下,备库可以接受主库传过来的日志,但不能够将主库的变化及时地应用在备库中,后续切回至物理备库时,所有写入数据丢失。
2 Physcial Standby -> Snapshot Standby
select database_role,open_mode from v$database;
select process,status from v$managed_standby;
alter database recover managed standby database cancel;
alter database convert to snapshot standby;
alter database open;
select database_role,open_mode from v$database;
select process,status from v$managed_standby;
3 Physcial Standby <- Snapshot Standby
shutdown immediate;
startup mount;
alter database convert to physical standby;
shutdown immediate;
startup mount;
alter database recover managed standby database using current logfile disconnect from session;
select database_role,open_mode from v$database;
select process,status from v$managed_standby;