在 AIX 中尝试动态加载 Oracle 客户端库时出错

restless_soul469

我正在做一个项目,最近我将 oracle 客户端库的静态链接更改为库的动态加载,每当它实际尝试从 OCI(Oracle 客户端库/ libclntsh.so调用函数时,程序将尝试dlopen()使用绝对路径到libclntsh.so. 它给了我以下错误

┌────────────────────────────────── Error ──────────────────────────────────┐ │ Could not open Dynamic Library: │ │ /aix64/oracle/client/12.1.0.2/client_1/lib/libclntsh.so (8013) │ │ DLL Error : Could not load module │ │ /aix64/oracle/client/12.1.0.2/client_1/lib/libclntsh.so. (8014) │ │ Unable to load shared library (14945) │ │ ORACLE error -1012 see "ORACLE Error Messages and Codes Manual". (1252) │ │ ** │ │ Failed to connect to ORACLE database lh. (1451) │ │ │ │ ────────────────────────────────────────────────────────────────────────── │ │ <OK> │ └────────────────────────────────────────────────────────────────────────────┘

PATH/LIBPATH不可能是问题,因为我给出了libclntsh.soin 的绝对路径dlopen()

可执行文件的权限、所有者和组是:
-rwsrwxr-x 1 root frnd 25835393 Dec 13 19:18 /some/other/abc

在寻找解决方案时,我知道由于设置了粘性位并且文件归 root 所有,当我执行它时,它无法获取LIBPATH. 给出了库的路径,但未加载来自同一目录的两个依赖项,因此出现此错误。

任何人都可以提出一些建议。

PS:使用12.2.0.1.0 oracle库时(即:LIBPATH和ORACLE_HOME指向/oracle/client/12.2.0.1.0/),加载没有问题。我不明白这是怎么发生的。

TIA

洛林奇·齐格蒙德

您应该检查libclntsh.so以找出它具有哪些依赖项:要么ldd libclntsh.sodump -H -X64 libclntsh.so将做。

它可能是libons.solibclntshcore.so取决于版本/变体。

另外,oracle 客户端也可能使用 dlopen 打开共享库(对于 InstantClient,它是libociei.so.

总结一下:您应该设置LIBPATH/aix64/oracle/client/12.1.0.2/client_1/lib,然后它可能会起作用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在 ml-engine 中使用 cx_oracle 导致“无法加载 Oracle 客户端库”

来自分类Dev

加载Oracle库时出错

来自分类Dev

在客户端测试中测试WCF时出错

来自分类Dev

在流星中从客户端调用http方法时出错

来自分类Dev

在客户端测试中测试WCF时出错

来自分类Dev

在WCF客户端中调用某些服务时出错

来自分类Dev

尝试生成客户端库时发生错误

来自分类Dev

适用于AIX的Subversion客户端

来自分类Dev

IBM DB2 7.2 AIX的客户端

来自分类Dev

WCF客户端异常:尝试反序列化参数时出错

来自分类Dev

如何在 cPanel 上安装 Oracle 客户端库

来自分类Dev

将Android客户端连接到NodeJS中的套接字服务器时出错

来自分类Dev

使用即时客户端通过Python3(cx_Oracle)连接到Oracle数据库时,错误“ DPI-1047:无法找到64位Oracle客户端库”

来自分类Dev

Oracle客户端未安装或无法加载。无法加载OCIDLL

来自分类Dev

AIX和Oracle:aioserver进程不会消亡

来自分类Dev

Android Studio:在尝试配置Google Apps Endpoints客户端库时单击“添加为库”时,IncorrectOperationException

来自分类Dev

Android Studio:在尝试配置Google Apps Endpoints客户端库时单击“添加为库”时,IncorrectOperationException

来自分类Dev

发出请求时,Google API客户端库在IIS中冻结

来自分类Dev

仅当新条目进入Django中的数据库时才更新客户端页面

来自分类Dev

Oracle客户端,即时客户端和ODAC

来自分类Dev

尝试写入hdfs时出错:服务器IPC版本9无法与客户端版本4通信

来自分类Dev

在Oracle中创建数据库链接时出错

来自分类Dev

在Oracle SQL中根据重叠的日期范围连接客户端记录

来自分类Dev

在Meteor中加载Google JavaScript客户端库

来自分类Dev

在Meteor中加载Google JavaScript客户端库

来自分类Dev

应该从库中还是从客户端代码中删除已加载库中的对象实例?

来自分类Dev

如何从AIX上的NFS服务器启动NFS客户端?

来自分类Dev

Oracle SQL Developer客户端编码

来自分类Dev

Mac上的Oracle Sqlplus客户端

Related 相关文章

  1. 1

    在 ml-engine 中使用 cx_oracle 导致“无法加载 Oracle 客户端库”

  2. 2

    加载Oracle库时出错

  3. 3

    在客户端测试中测试WCF时出错

  4. 4

    在流星中从客户端调用http方法时出错

  5. 5

    在客户端测试中测试WCF时出错

  6. 6

    在WCF客户端中调用某些服务时出错

  7. 7

    尝试生成客户端库时发生错误

  8. 8

    适用于AIX的Subversion客户端

  9. 9

    IBM DB2 7.2 AIX的客户端

  10. 10

    WCF客户端异常:尝试反序列化参数时出错

  11. 11

    如何在 cPanel 上安装 Oracle 客户端库

  12. 12

    将Android客户端连接到NodeJS中的套接字服务器时出错

  13. 13

    使用即时客户端通过Python3(cx_Oracle)连接到Oracle数据库时,错误“ DPI-1047:无法找到64位Oracle客户端库”

  14. 14

    Oracle客户端未安装或无法加载。无法加载OCIDLL

  15. 15

    AIX和Oracle:aioserver进程不会消亡

  16. 16

    Android Studio:在尝试配置Google Apps Endpoints客户端库时单击“添加为库”时,IncorrectOperationException

  17. 17

    Android Studio:在尝试配置Google Apps Endpoints客户端库时单击“添加为库”时,IncorrectOperationException

  18. 18

    发出请求时,Google API客户端库在IIS中冻结

  19. 19

    仅当新条目进入Django中的数据库时才更新客户端页面

  20. 20

    Oracle客户端,即时客户端和ODAC

  21. 21

    尝试写入hdfs时出错:服务器IPC版本9无法与客户端版本4通信

  22. 22

    在Oracle中创建数据库链接时出错

  23. 23

    在Oracle SQL中根据重叠的日期范围连接客户端记录

  24. 24

    在Meteor中加载Google JavaScript客户端库

  25. 25

    在Meteor中加载Google JavaScript客户端库

  26. 26

    应该从库中还是从客户端代码中删除已加载库中的对象实例?

  27. 27

    如何从AIX上的NFS服务器启动NFS客户端?

  28. 28

    Oracle SQL Developer客户端编码

  29. 29

    Mac上的Oracle Sqlplus客户端

热门标签

归档