Oracle Logical Standby 常见问题处理:
对于逻辑备库来说,日常管理主要需要关注SQL Apply。
切换是很少发生的动作,而logminer的速度相对于sql apply来说是很快的,
恢复的进度主要还是取决于SQL Apply的进度。
http://www.ningoo.net/html/2008/oracle10gr2_logical_standby_managing_and_tuning.html
http://space.itpub.net/7607759/viewspace-220347
不支持的语句在Logical Standby上应用导致LSP
-----------------------------------------------------------------------------------------------------------
JSSLDG2> alter database stop logical standby apply;
数据库已更改。
JSSLDG2> execute dbms_logstdby.skip('SCHEMA_DDL','JSS','TMP%');
--跳过对象的ddl操作
JSSLDG2> execute dbms_logstdby.skip('DML','JSS','TMP%');
--跳过对象的dml操作
JSSLDG2> ALTER DATABASE START LOGICAL STANDBY APPLY IMMEDIATE;
JSSLDG2> alter database stop logical standby apply;
JSSLDG2> execute dbms_logstdby.unskip('DML','JSS','TMP%');
JSSLDG2> execute dbms_logstdby.unskip('SCHEMA_DDL','JSS','TMP%');
跳过同步已经取消了,紧接着我们需要再调用dbms_logstdby.instantiate_table过程重新同步一下跳地
的对象,将skip这段时间,primary对tmp1表所做的操作同步过来(就俺看来,instantiate_table过程实
际上是借助dblink重建了一遍对象),以保持与primary的一致。Dbms_logstdby.instantiate_table的语
法如下:
DBMS_LOGSTDBY.INSTANTIATE_TABLE (
schema_name IN VARCHAR2,
table_name IN VARCHAR2,
dblink IN VARCHAR2);
使用DBMS_LOGSTDBY.INSTANTIATE_TABLE过程重新执行一下同步(执行前别忘了暂停redo应用):
JSSLDG2> EXECUTE DBMS_LOGSTDBY.INSTANTIATE_TABLE('OWNER','TABLE1','DBLink_Primary');
JSSLDG2> alter database start logical standby apply;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/35489/viewspace-668588/ ,如需转载,请注明出处,否则将追究法律责任。