在部署oracle到dm数据库的hs时,需要在两端分别部署odbc来进行数据同步,有时在启动isql时会遇到如下报错
[01000][unixODBC][Driver Manager]Can't open lib '/oracle/app/oracle/product/11.2.0/db/lib/libsqora.so.11.1' : file not found
使用ldd命令查看该报错的so文件,可以发现其中会有一个或多个的链接是not found
[root@localhost ~]# ldd /oracle/app/oracle/product/11.2.0/db/lib/libsqora.so.11.1
ldd: warning: you do not have execution permission for `/oracle/app/oracle/product/11.2.0/db/lib/libsqora.so.11.1'
linux-vdso.so.1 => (0x00007ffccf714000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f4954e51000)
libm.so.6 => /lib64/libm.so.6 (0x00007f4954b4f000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f4954933000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x00007f4954719000)
libclntsh.so.11.1 => not found
libodbcinst.so.1 => /lib64/libodbcinst.so.1 (0x00007f4954507000)
libc.so.6 => /lib64/libc.so.6 (0x00007f4954139000)
/lib64/ld-linux-x86-64.so.2 (0x00007f4955055000)
libltdl.so.7 => /lib64/libltdl.so.7 (0x00007f4953f2f000)
使用find命令,在根目录查找链接为 not found 的libclntsh.so.11.1文件
find / -name "libclntsh.so.11.1"
/oracle/app/oracle/product/11.2.0/db/inventory/Scripts/ext/lib/libclntsh.so.11.1
将查找到的该lib目录下的so文件复制到/usr/lib64下,再次使用ldd命令查看报错中的so文件,可以发现原本为not found的链接,已经指向/usr/lib64下的libclntsh.so.11.1文件了
[root@localhost ~]# cp /oracle/app/oracle/product/11.2.0/db/lib/libclntsh.so.11.1 /usr/lib64/libclntsh.so.11.1
[root@localhost ~]# ldd /oracle/app/oracle/product/11.2.0/db/lib/libsqora.so.11.1
ldd: warning: you do not have execution permission for `/oracle/app/oracle/product/11.2.0/db/lib/libsqora.so.11.1'
linux-vdso.so.1 => (0x00007fffdedea000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f997736b000)
libm.so.6 => /lib64/libm.so.6 (0x00007f9977069000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f9976e4d000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x00007f9976c33000)
libclntsh.so.11.1 => /lib64/libclntsh.so.11.1 (0x00007f9974608000)
libodbcinst.so.1 => /lib64/libodbcinst.so.1 (0x00007f99743f6000)
libc.so.6 => /lib64/libc.so.6 (0x00007f9974028000)
/lib64/ld-linux-x86-64.so.2 (0x00007f997756f000)
libnnz11.so => /oracle/app/oracle/product/11.2.0/db/lib/libnnz11.so (0x00007f9973c60000)
libaio.so.1 => /lib64/libaio.so.1 (0x00007f9973a5e000)
libltdl.so.7 => /lib64/libltdl.so.7 (0x00007f9973854000)
此时再启动isql测试连接成功
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
文章
阅读量
获赞