Oracle 11g Data Guard暂停物理备库的日志传输(log_archive_dest_state_n的defer参数)

在实际生产系统中,通常有这样的场景,例如在系统维护日,对主库进行大量的业务更新,会有大量的DML操作;
为了避免主库中的业务更新对备库造成影响,可以暂停主库对备库的日志传输,这样的话,如果主库的更新出现问题,备库还保留一份完整的数据镜像,可以执行 failover(失败切换)。

1、在主库上面查看备份的归档路径

SQL> show parameter log_archive_dest_2


NAME     TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_2     string SERVICE=flame ASYNC VALID_FOR=
(ONLINE_LOGFILES,PRIMARY_ROLE)
 DB_UNIQUE_NAME=flame

SQL> show parameter log_archive_dest_state_2


NAME     TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_2     string ENABLE

2、通过设置 defer 参数来暂停主库对备库的日志传输

SQL> alter system set log_archive_dest_state_2 = 'defer';


System altered.

执行归档日志切换

SQL> alter system switch logfile;


System altered.


3、恢复主库到备份的日志传输,暂停日志传输后的归档日志会全部传输到备库,不会导致备库的归档日志 gap

SQL> alter system set log_archive_dest_state_2 = 'enable';
System altered.

你可能感兴趣的:(Oracle)