sql〉alter system set log_archive_dest_2='service=standby lgwr sync affirm delay=360valid_for=(online_logfiles,primary_role) compression=enable db_unique_name=standby';
如果只指定了delay参数,但是没有指定具体的值,默认是30分钟。
需要注意的是,如果已经启用了实时日志应用(real-time apply ),delay这个参数会被忽略,因此不会启用延时日志应用,同时,在备库的alert log中您可以看到类似下面的信息:
warning: managed standby recovery started with using current logfile
delay 360 minutes specified at primary ignored <<<<<<<<<
这种情况下,需要停止实时日志应用,按照非实时模式启动mrp,比如:
sql> alter database recover managed standby database cancel;
sql> alter database recover managed standby database disconnect from session;
请参考下面的具体的例子:
1. 查看主库的参数设置:
sql> show parameter log_archive_dest_2
name type value
------------------------------------ ----------- ------------------------------
log_archive_dest_2 string service=standby lgwr sync affi
rm valid_for=(online_logfiles,
primary_role) db_unique_name=s
tandby
2. 在主库设置延时5分钟:
sql> alter system set log_archive_dest_2='service=standby lgwr sync affirm delay=5valid_for=(online_logfiles,primary_role) db_unique_name=standby';
3. 验证是否延时:
主库执行:
sql> alter system switch logfile;
system altered.
sql> select max(sequence#) from v$archived_log;
max(sequence#)
--------------
28
备库:
wed jun 13 19:48:53 2012
archived log entry 14 added for thread 1 sequence 28 id 0x4c9d8928 dest 1:
arcb: archive log thread 1 sequence 28 available in 5 minute(s)
wed jun 13 19:48:54 2012
media recovery delayed for 5 minute(s) (thread 1 sequence 28) <<<<<<<<延时生效
wed jun 13 19:53:54 2012
media recovery log /home/oracle/arch1/standby/1_28_757620395.arc<<<<<5分钟后才应用这个归档
media recovery waiting for thread 1 sequence 29 (in transit)