oracle-DG

DG

DATAGUARD的几种保护模式:最大保护,最大可用,最大性能

最大保护是指除非REDO在至少一个STANDBY中可用,否则事务不能提交。如果在某个STANDBY中不可用,则主数据库的操作被停止。通常受制约比较多,在生产环境中不是很常用(性价比不好)。

最大可用是指如果STANDBY不可用,主数据库仍然可以处理事务,只是在问题被纠正后,STANDBY和主数据库进行再同步。这样的一个问题是:当再同步之前有FAILOVER时,有些数据可能会丢失。

最大性能是指主数据库的提交操作不等待STANDBY。PRIMARY和STANDBY松耦合,数据保护级别较低。

1.停止Standby
select process, status from v$managed_standby; --查看备库是否在应用日志进行恢复
alter database recover managed standby database cancel;
shutdown immediate;

2.切换到只读模式
-----由shutdown模式切换到只读模式-------
startup nomount;
alter database mount standby database;
alter database open read only;
-----由应用日志模式切换到只读模式-------
alter database recover managed standby database cancel; -- 取消日志应用
alter database open read only;

3.切换回管理恢复模式
startup nomount;
alter database mount standby database;
alter database recover managed standby database disconnect from session; -- 启动日志应用
alter database recover managed standby database using current logfile disconnect from session;

4.主库和备库之间角色切换
4.1 主库切换为备库
alter database commit to switchover to physical standby;
alter database commit to switchover to physical standby with session shutdown;-- 主库有会话连接的时候
shutdown immediate
startup nomount;
alter database mount standby database;
alter database recover managed standby database disconnect from session;

4.2 从库切换为主库
alter database commit to switchover to primary;
shutdown immediate;
startup
alter system switch logfile;

5.备库自动使用主库传过来的日志进行恢复
alter database recover automatic standby database;

6.更改保护模式
alter database set standby database to maximize protection;
alter database set standby database to maximize availability;
alter database set standby database to maximize performancen;

7.取消自动恢复模式
alter database recover managed standby database cancel;
alter database recover managed standby database finish;
alter database recover managed standby database finish force;

posted on 2021-06-22 14:39  踏入IT的小贾  阅读(209)  评论(0编辑  收藏  举报

导航