DG 参数详解
1.与角色无关的参数
◆ DB_UNIQUE_NAME:数据库唯一名。对于物理standby,DB_NAME必须相同,对于逻辑standby,DB_NAME可以不同,所以在10g中引入DB_UNIQUE_NAME参数用来区分DG配置中的每个数据库,默认值为DB_NAME.
例:DB_UNIQUE_NAME=STEPHEN
◆ LOG_ARCHIVE_CONFIG:定义DG配置中包含的DB_UNIQUE_NAME。它为DG提供安全检查:数据库之前的连接时允许的。
例:LOG_ARCHIVE_CONFIG='DG_CONFIG=(STEPHEN,STANDBY)'
◆ LOG_ARCHIVE_MAX_PROCESSES:最大归档进程数。默认值为2,需要调大,最大值为30.值如果太大,会影响归档切换速度和一致性关闭数据库。
例:LOG_ARCHIVE_MAX_PROCESSES=30
2.主角色参数
◆ LOG_ARCHIVE_DEST_n: DG传输redo data的主要参数,还用于指定Online redo log 和Standby redo log文件的归档日志文件存储位置。一般用LOG_ARCHIVE_DEST_1指定本地归档目录,LOG_ARCHIVE_DEST_2指定DG传输redo data存储目录。
该参数的主要属性:
属性 |
描述 |
LOCATION |
指定归档目录。如:LOCATION=/u01 |
SERVICE |
TNSNAMES.ORA文件中设定的指向备端的TNS-Alias。 |
SYNC |
使用同步传输redo data. LGWR进程将等待来自LNS的确认信息,然后告知客户端事务已经提交。对于最高可用模式和最大保护模式的DG而言,至少需要一个standby配置该参数特性。 |
ASYNC |
异步传输redo data.默认传输方式。 |
VALID_FOR |
定义何时使用LOG_ARCHIVE_DEST_n参数以及作用于重做日志文件的类型。 db_unique_name=standby' |
DB_UNIQUE_NAME |
指定数据库唯一名。该值必须同时存在于LOG_ARCHIVE_CONFIG与LOG_ARCHIVE_DEST_n参数中,DG间才能互相通信。 |
NET_TIMEOUT |
指定LGWR进程等待LNS进程响应的时间(单位秒),如果超出指定时间,将因故障放弃备用,稍后LNS进程发起重新连接,默认值30秒。 |
REOPEN |
控制DG允许主库尝试重连备库前等待的时间。默认值300秒。 |
COMPRESSION |
启用redo data压缩。 |
AFFIRM |
SYNC默认方式。要求LNS进程等待RFS对SRL文件执行直接I/O后返回成功消息。 |
NOAFFIRM |
ASYNC默认方式。 |
DELAY |
standby接收redo data后,延迟指定的秒数再应用redo data. |
ALTERNATE |
用于重定向归档目录,当LOCATION指定的归档目录满时,用此属性指定的目录替代。 |
MAX_CONNECTIONS |
10gR2引入的特性,默认值1,范围1--5; 11g废弃。 |
MANDATORY |
对standby设置该属性极其危险,该属性要求ORL文件的redo data必须传输到standby,如果无法传输,primary就无法重用redo log,如果主库与备库无法连接,当primary遍历完所有的redo log,就会挂起。 |
MAX_FAILURE |
定义在priamry日志切换时,LGWR尝试重连故障standby的次数。 |
NOREGISTER |
standby默认会注册primary传输过来的归档文件,DG不需要设置该属性。 |
TEMPLATE |
指定archivelog的路径名或者文件名模板,该属性覆盖LOG_ARCHVE_FORMAT参数设定值,如不设置该属性值,默认采用参数LOG_ARCHIVE_FORMAT设定值,该属性值仅对remote归档目标生效. 属性值可用指令: |
11g中,该参数的废弃属性:
废弃属性 |
Alternative |
ARCH |
指定SYNC/ASYNC,默认为ASYNC.10g默认为ARCH,需要指定LGWR启用LGWR传输redo |
LGWR |
指定SYNC/ASYNC,默认为ASYNC |
OPTIONAL |
Destinations are optional by default. |
VERIFY |
None.和ARCH属性结合使用 |
注:LOG_ARCHIVE_DEST_11 -- LOG_ARCHIVE_DEST_31参数只能在COMPATIBLE>=11.2时使用,这些参数不支持SYNC,ARCH,LOCATION,MANDATORY或ALTERNATE属性,也不能被指定为ALTERNATE属性目标。
◆ LOG_ARCHIVE_DEST_STATE_n:与LOG_ARCHIVE_DEST_n参数配合使用。
参数值:
- ENABLE:启用LOG_ARCHIVE_DEST_n参数,默认值。
- DEFER :禁用LOG_ARCHIVE_DEST_n参数。
- ALTERNATE:替代参数,指定的归档路径在主目录连接失败后启用。
3.备角色参数
◆ DB_FILE_NAME_CONVERT:转换主库的数据文件存储目录到备库指定的目录。如果主备库数据文件存储目录不一致,则必须设置该参数。如果有多个目录需要转换,可依次设置。
例:DB_FILE_NAME_CONVERT='/oradata/stephen', '/oradata/standby'
DB_FILE_NAME_CONVERT='/oradata/stephen','/oradata/standby','/oradata/primary','/oradata/standby'
DB_FILE_NAME_CONVERT='+DATA/STEPHEN','+DATA/STANDBY'
◆ LOG_FILE_NAME_CONVERT: 转换主库的日志文件存储目录到备库指定的目录。如果主备库日志文件存储目录不一致,则必须设置该参数。功能类似于DB_FILE_NAME_CONVERT.
上述两个convert参数,主库和备库设置不能一样,主库指向备库,备库指向主库。
◆ FAL_SERVER:Fetch archive log.其值为Oracle Net Service Name (TNS-Alias or Connect Descriptor)。设置参数,standby可以在有gap的时候循序向指定的TNS-Alias请求缺少的归档日志文件。该参数只在Physical standby中有效。
例:FAL_SERVER='STEPHEN,STANDBY1'
◆ FAL_CLIENT: 10g其值为Oracle Net Service Name (TNS-Alias or Connect Descriptor).11.1其值为DB_UNIQUE_NAME.客户端请求GAP时,用来FAL SERVER反向连接FAL CLIENT,在11.2之后该参数被废弃。该参数只在Physical standby中有效。
注:从11.2开始,primary根据LOG_ARCHIVE_DEST_n参数的SERVICE属性执行ARCH-RFS Heatbeat Ping轮询检测GAP,如果发现GAP,便传输GAP的归档日志文件到standby.不设置FAL参数也可以自动解决GAP.
◆ STANDBY_FILE_MANAGEMENT:该参数仅作用于standby.
参数值:
- AUTO:如primary端添加删除数据文件时,standby会执行相应更改。
- MANUAL:standby不会自动创建删除数据文件,需要手工执行。
注:在standby端更改ONLINE REDO LOG时,需要设定该参数为MANUAL.