我们系统是2009年建立的Oracle 10.2.0.5 for hp-ux ia64 11.31,目前需要进行号码核对的创建,对接成功后废除旧系统,使用的同步复制软件为Oracle Goldengate,由于Oracle Goldengate 12C不支持Oracle Database 10g,只能使用Oracle Goldengate 11g,在源端添加mgr,抽取,投递进程后,启动抽取进程5分钟异常停止报错;
2016-08-17 16:40:57 ERROR OGG-01028 Oracle GoldenGate Capture for Oracle, ext07cb.prm: error 9 (Bad file number) positioning into log, rba 174680064.
2016-08-17 16:58:36 ERROR OGG-01028 Oracle GoldenGate Capture for Oracle, ext07cb.prm: Error validating file info for sequence 43907 because of an inval
id thread ID (2)
只能升级至Version 11.2.1.0.6,升级包真心不好找。差点选用Quest公司Shareplex做同步软件。Ogg的升级比较容易,打包原来的ogg目录,不用删除原目录,直接将升级包进行解压至原目录即可。
但是在使用ggsci登陆Ogg管理端时候,出现报错:
essdb3_oracle[/orabak01/ogg]$ggsci
/usr/lib/hpux64/dld.so: Unable to find library ‘libclntsh.so.11.1’. Killed
感觉是缺少了什么lib库文件导致的。可以借用ldd命令进行查看(ldd只是个shell,不是程序。ldd用于判断某个可执行的 binary 档案含有什么动态函式库)
essdb5_oracle[/home/oracle]$cd /orabak01/ogg
essdb5_oracle[/orabak01/ogg]$ldd ggsci
libm.so.1 => /usr/lib/hpux64/libm.so.1
librt.so.1 => /usr/lib/hpux64/librt.so.1
libgglog.sl => /orabak01/ogg/libgglog.sl
libggrepo.sl => /orabak01/ogg/libggrepo.sl
libdb-5.2.so => /orabak01/ogg/libdb-5.2.so
libicui18n.sl.38 => /orabak01/ogg/libicui18n.sl.38
libicuuc.sl.38 => /orabak01/ogg/libicuuc.sl.38
libicudata.sl.38 => /orabak01/ogg/libicudata.sl.38
libpthread.so.1 => /usr/lib/hpux64/libpthread.so.1
libxerces-c.so.28 => /orabak01/ogg/libxerces-c.so.28
libantlr3c.so => /orabak01/ogg/libantlr3c.so
libclntsh.so.11.1 => /oracle/product/10.2/database/lib/libclntsh.so.11.1
Unable to find library ‘libnnz11.so’.
essdb5_oracle[/orabak01/ogg]$cd $ORACLE_HOME/lib
essdb5_oracle[/oracle/product/10.2/database/lib]$ls -ald libnnz*
-rw-r–r– 1 oracle oinstall 16907362 2008年4月22日 libnnz10.a
-r-xr-xr-x 1 oracle oinstall 5337112 2008年4月22日 libnnz10.so
essdb5_oracle[/oracle/product/10.2/database/lib]$ln -s $ORACLE_HOME/lib/libnnz10.so libnnz11.so
essdb5_oracle[/orabak01/ogg]$cd $ORACLE_HOME/lib
essdb5_oracle[/oracle/product/10.2/database/lib]$ls -ald libclntsh.so*
lrwxr-xr-x 1 oracle oinstall 17 2009年12月19日 libclntsh.so -> libclntsh.so.10.1
-rwxr-xr-x 1 oracle oinstall 36877216 2009年12月19日 libclntsh.so.10.1
essdb5_oracle[/oracle/product/10.2/database/lib]$ln -s $ORACLE_HOME/lib/libclntsh.so.10.1 libclntsh.so.11.1
essdb5_oracle[/oracle/product/10.2/database/lib]$cd /orabak01/ogg
essdb5_oracle[/orabak01/ogg]$ldd ggsci
libm.so.1 => /usr/lib/hpux64/libm.so.1
librt.so.1 => /usr/lib/hpux64/librt.so.1
libgglog.sl => /orabak01/ogg/libgglog.sl
libggrepo.sl => /orabak01/ogg/libggrepo.sl
libdb-5.2.so => /orabak01/ogg/libdb-5.2.so
libicui18n.sl.38 => /orabak01/ogg/libicui18n.sl.38
libicuuc.sl.38 => /orabak01/ogg/libicuuc.sl.38
libicudata.sl.38 => /orabak01/ogg/libicudata.sl.38
libpthread.so.1 => /usr/lib/hpux64/libpthread.so.1
libxerces-c.so.28 => /orabak01/ogg/libxerces-c.so.28
libantlr3c.so => /orabak01/ogg/libantlr3c.so
libclntsh.so.11.1 => /oracle/product/10.2/database/lib/libclntsh.so.11.1
libnnz11.so => /oracle/product/10.2/database/lib/libnnz11.so
libdl.so.1 => /usr/lib/hpux64/libdl.so.1
libnsl.so.1 => /usr/lib/hpux64/libnsl.so.1
libunwind.so.1 => /usr/lib/hpux64/libunwind.so.1
libstd_v2.so.1 => /usr/lib/hpux64/libstd_v2.so.1
libCsup.so.1 => /usr/lib/hpux64/libCsup.so.1
libc.so.1 => /usr/lib/hpux64/libc.so.1
libpthread.so.1 => /usr/lib/hpux64/libpthread.so.1
libc.so.1 => /usr/lib/hpux64/libc.so.1
libicuuc.sl.38 => /orabak01/ogg/libicuuc.sl.38
libicudata.sl.38 => /orabak01/ogg/libicudata.sl.38
libpthread.so.1 => /usr/lib/hpux64/libpthread.so.1
libpthread.so.1 => /usr/lib/hpux64/libpthread.so.1
libpthread.so.1 => /usr/lib/hpux64/libpthread.so.1
libnsl.so.1 => /usr/lib/hpux64/libnsl.so.1
libicuuc.sl.38 => /orabak01/ogg/libicuuc.sl.38
libicudata.sl.38 => /orabak01/ogg/libicudata.sl.38
libnnz10.so => /oracle/product/10.2/database/lib/libnnz10.so
librt.so.1 => /usr/lib/hpux64/librt.so.1
libnss_dns.so.1 => /usr/lib/hpux64/libnss_dns.so.1
libdl.so.1 => /usr/lib/hpux64/libdl.so.1
libm.so.1 => /usr/lib/hpux64/libm.so.1
libpthread.so.1 => /usr/lib/hpux64/libpthread.so.1
libunwind.so.1 => /usr/lib/hpux64/libunwind.so.1
libnsl.so.1 => /usr/lib/hpux64/libnsl.so.1
libc.so.1 => /usr/lib/hpux64/libc.so.1
libxti.so.1 => /usr/lib/hpux64/libxti.so.1
libuca.so.1 => /usr/lib/hpux64/libuca.so.1
libdl.so.1 => /usr/lib/hpux64/libdl.so.1
essdb5_oracle[/orabak01/ogg]$ggsci
Oracle GoldenGate Command Interpreter for Oracle
Version 11.2.1.0.6 16211226 OGGCORE_11.2.1.0.6_PLATFORMS_130418.1829
HP/UX, IA64, 64bit (optimized), Oracle 11g on Apr 18 2013 20:29:17
Copyright (C) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
总结:Oracle 0gg在HP-ia64裸设备平台有bug需要最低版本11.2.1.0.6。另外一套系统用的赛门铁克VXVM文件系统并没有这方面的bug,记录一下。告诉大家合理使用ldd这样的命令。
本文转自yangjunfeng 51CTO博客,原文链接:http://blog.51cto.com/yangjunfeng/1840975