我遇到这种情况,我需要将Oracle 9i存档日志传输到Oracle 10g数据库,然后由日志挖掘器将其从那里传输,然后由Oracle流捕获/应用进程使用。
(Oracle 10归档日志可以由Oracle 10 logminer读取 - 我可以手动复制归档日志,手动注册它们并将它们挖掘,捕获然后应用)。
困难在于Oracle的归档日志传输方式在9i和10g之间发生了相当大的变化,并将9i数据库设置为传输到远程计算机,如下所示:
log_archive_dest_state_2 = enable
log_archive_dest_2 = "service=OTHERMACHINE arch optional"
不再有效。
我在9i日志中得到了这个:
*** 2009-05-22 04:03:44.149
RFS network connection lost at host 'OTHERMACHINE'
Error 3113 attaching RFS server to standby instance at host 'OTHERMACHINE'
Error 3113 attaching to destination LOG_ARCHIVE_DEST_2 standby host 'OTHERMACHINE'
Heartbeat failed to connect to standby 'OTHERMACHINE'. Error is 3113.
*** 2009-05-22 04:03:44.150
kcrrfail: dest:2 err:3113 force:0
ORA-03113: end-of-file on communication channel
在10g日志中我得到:
Fri May 22 04:07:42 2009
WARNING: inbound connection timed out (ORA-3136)
我的问题是:
有谁知道如何配置我的9i或10g服务器,以便10g服务器将接受9i连接,以便我可以将9i存档日志传输到10g服务器。如果存档日志会自动在10g服务器中注册,那将是一个额外的好处。
注意我这里没有设置完整的DataGuard配置,10g数据库不是辅助服务器。
感谢您的任何建议。
修改
请注意,我可以通过sqlplus从9i服务器登录到10g服务器,因此连接不是问题
修改2
经过大量时间搜索解决方案之后,我终于认定这样的机制不起作用,并且需要使用非Oracle方法将存档日志从9i传输到10g(例如rsync的)。
答案 0 :(得分:0)
您的数据库是最新的补丁吗?
此外,您的连接通常需要一段时间才能进行身份验证吗?在V10.1之后,默认的SQLNET.INBOUND_CONNECT_TIMEOUT设置为60秒。在该版本之前,它默认为无限期。
Ref Metalink 345197.1:以前在Oracle 10.1中工作的连接现在因使用ORA-3113,ORA-3106或ORA-3136而间歇性失败