“libnnz19.so:无法打开共享对象文件:没有这样的文件或目录

问题描述

我已经在容器内安装了 cx_oracle(python3) 和即时客户端 21_1。当我第一次尝试时出现此错误

Cannot locate a 64-bit Oracle Client library: "/python- 
env/instantclient_21_1/lib/libclntsh.so:

所以我在 /python-env/instantclient_21_1/ 下创建了 lib 并再次尝试,现在我收到此错误

cx_Oracle.DatabaseError:DPI-1047:找不到 64 位 Oracle 客户端库:“libnnz19.so:无法打开共享对象文件:没有这样的文件或目录”。请参阅 https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html 寻求帮助

我不明白它在哪里搜索那个 so 文件。它已经存在于 /python- 环境/instantclient_21_1/lib/

请帮忙

解决方法

按照 Instant Client installation stepscx_Oracle Installation steps 并使用 ldconfig 设置库路径以包含 Instant Client 目录。

您可以设置 DPI_DEBUG_LEVEL=64(请参阅 here)来跟踪 cx_Oracle 如何查找库。

另见Docker for Oracle Database Applications in Node.js and Python

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...