
针对三种Protection Modes,对应的Network transmission mode和Disk write option如下,对比了10g,11g,19C版本官方文档关于Protection Modes描述,10g描述的更详细些。
19C

11g

10g
https://docs.oracle.com/cd/B19306_01/server.102/b14239/log_transport.htm#i1183694

参数说明:
SYNC:
SYNC属性指定使用同步重做传输模式将重做数据发送到重做传输目标。
The SYNC attribute specifies that the synchronous redo transport mode be used to send redo data to a redo transport destination.
ASYNC:
ASYNC属性指定使用异步重做传输模式将重做数据发送到重做传输目标。如果未指定SYNC或ASYNC属性,则使用异步重做传输模式。
The ASYNC attribute specifies that the asynchronous redo transport mode be used to send redo data to a redo transport destination. The asynchronous redo transport mode is used if neither the SYNC nor the ASYNC attribute is specified.
AFFIRM:
指定重做传输目的地在将接收到的redo data写入standby redo log后对其进行确认。
specifies that a redo transport destination acknowledges received redo data after writing it to the standby redo log.
NOAFFIRM:
指定重做传输目的地在将接收到的redo data写入standby redo log之前对其进行确认。
specifies that a redo transport destination acknowledges received redo data before writing it to the standby redo log.
主库参数:
SQL> set line 100
SQL> SELECT NAME,PROTECTION_MODE,PROTECTION_LEVEL,DATABASE_ROLE ,DB_UNIQUE_NAME FROM v$database;
NAME PROTECTION_MODE PROTECTION_LEVEL DATABASE_ROLE DB_UNIQUE_NAME
--------- -------------------- -------------------- ---------------- ------------------------------
CJCDB MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE PRIMARY chendb
SQL> show parameter log_archive_config
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_config string DG_CONFIG=(chendb,cjcdb)
SQL> show parameter log_archive_dest_1
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_1string LOCATION=/arch VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=chendb
SQL> show parameter log_archive_dest_2
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_2 string SERVICE=cjcdb ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=cjcdb
备库参数:
SQL> SELECT NAME,PROTECTION_MODE,PROTECTION_LEVEL,DATABASE_ROLE ,DB_UNIQUE_NAME FROM v$database;
NAME PROTECTION_MODE PROTECTION_LEVEL DATABASE_ROLE DB_UNIQUE_NAME
--------- -------------------- -------------------- ---------------- ------------------------------
CJCDB MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE PHYSICAL STANDBY cjcdb
SQL> show parameter log_archive_config
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_config string DG_CONFIG=(cjcdb,chendb)
SQL> show parameter log_archive_dest_1
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_1 string LOCATION=/arch VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=cjcdb
SQL> show parameter log_archive_dest_2
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_2 string SERVICE=chendb ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=chendb
更改参数:
---主库
SQL> alter system set LOG_ARCHIVE_DEST_2='SERVICE=cjcdb LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=cjcdb';
SQL> shutdown immediate
SQL> startup
---备库
SQL> alter system set LOG_ARCHIVE_DEST_2='SERVICE=chendb LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=chendb';
SQL> shutdown immediate
SQL> startup
SQL> recover managed standby database using current logfile disconnect from session;
------ALTER DATABASE RECOVER managed standby database using current logfile disconnect from session;
再次查看参数:
---主库
SQL> show parameter log_archive_dest_2
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_2 string SERVICE=cjcdb LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=cjcdb
---备库
SQL> show parameter log_archive_dest_2
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_2 string SERVICE=chendb LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=chendb
更改保护模式:
SQL> ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE {AVAILABILITY | PERFORMANCE | PROTECTION};
一:由MAXIMUM PERFORMANCE更改成MAXIMUM AVAILABILITY
主库:
SQL> ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE AVAILABILITY;
主库日志:

备库日志:

查看包括模式:主库、备库
SQL> SELECT PROTECTION_MODE FROM V$DATABASE;
PROTECTION_MODE
--------------------
MAXIMUM AVAILABILITY
二:由MAXIMUM AVAILABILITY更改成MAXIMUM PROTECTION
主库:
SQL> ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PROTECTION;
主库日志:

备库日志:

查看包括模式:主库、备库
SQL> SELECT PROTECTION_MODE FROM V$DATABASE;
PROTECTION_MODE
--------------------
MAXIMUM PROTECTION
三:由MAXIMUM PROTECTION更改成MAXIMUM PERFORMANCE
主库:
SQL> ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PERFORMANCE;
主库日志:

备库日志:

查看包括模式:主库、备库
SQL> SELECT PROTECTION_MODE FROM V$DATABASE;
PROTECTION_MODE
--------------------
MAXIMUM PERFORMANCE
更多数据库相关学习资料,可以查看我的ITPUB博客,网名chenoracle:
http://blog.itpub.net/29785807/





