Oracle10gR2 Streams(九)配置过程中的错误处理及清除配置
Oracle10gR2中,Streams配置做了很大的简化,基本上可以做到只要执行一个过程就能完成配置。实际上,这些过程都是分两步来进行工作的,第一步先生成配置脚本,第二步再执行脚本。这样在配置的过程中,如果出现一些错误,很难直接定位到具体的错误。Oracle提供了一些数据字典视图,可以进一步查看错误的详细信息。
DBA_RECOVERABLE_SCRIPT:配置脚本概要信息
DBA_RECOVERABLE_SCRIPT_PARAMS:配置脚本参数
DBA_RECOVERABLE_SCRIPT_ERRORS:执行过程中的错误信息
DBA_RECOVERABLE_SCRIPT_BLOCKS:配置脚本的详细步骤
Oracle10gR2 Streams(八)表复制
Streams的技术和Logical Standby在本质上是一样的,都是通过logminer技术从redo中解析出sql语句,然后通过一系列的进程将这些sql重新在目标库中应用,从而在目标库产生源库数据的一个拷贝。而Oracle10gR2中的logical standby,从配置上来说,要比streams更加简单可靠。所以,从全库复制的角度来讲,可能logical standby要比streams更有优势。但是Streams也有自己的特点,就是支持到异构数据源的复制,也可以做到只复制特定的某些数据,灵活性比logical standby要高得多。
本系列前面一些文章已经分别演示了全库复制,表空间复制和用户级复制,本文将演示表复制的配置。
源库:ning.test
目标库:dest.test
要复制的表:ning.test
复制方式:单向,downstream异地捕获日志
这里采用impdb可以通过网络直接导入数据的特性来实现表数据的初始化,所以不需要配置directory。
Oracle优化器开发团队开博
从Structured Data看到的消息,Oracle优化器开发团队上个星期开了个Blog:
Inside the Oracle Optimizer - Removing the black magic
http://optimizermagic.blogspot.com
不过blogspot在国内是被墙了的,可以使用Tor等穿墙工具,或者简单点,使用Google Reader订阅即可,feed是全文输出的。
DBA备忘录:Online rebuild index遭遇ORA-08104
在online rebuild index的过程中,如果中途异常终止(比如按ctrl+c强行退出),运气不好的话,可能会遇到问题,在你想重新rebuild index(或者drop,analyze)的时候,报错:
这是由于在异常终止online rebuild操作的时候,oracle没来得及清理相应的临时段和标志位,系统认为online rebuild操作还在进行造成的。在Oracle10g之前,对于这种情况没有太好的办法,只有等SMON进程来进行清理了。网上有说上重启可以解决,有说直接update系统表ind$的,对于不能停机的产品库来说,这些都是不可取的方案。重启不现实,修改系统表更是DBA的大忌。Oracle10g则可以使用dbms_repair.online_index_clean手工清理(metalink的说法,9i打了Bug 3805539的patch的话也能用该过程了)。所以,对于大索引的online rebuild,不要轻易中止。否则可能要等上相当一段时间SMON才能完成清理工作,清理完后,可以在alert.log中看到如下记录: