Python中cx_Oracle报错:dll load failed 找不到指定程序,尝试各种方法无果,请问如何解决?
环境如下: python3.6 32 位 cx_Oracle 5.3-12c-win32 之前装的 oracle 客户端为 11g 下了 12 的客户端 设置系统路径、拷贝 oci.dll 均无果,请问如何解决,谢谢
Python中cx_Oracle报错:dll load failed 找不到指定程序,尝试各种方法无果,请问如何解决?
1 回复
这个问题我遇到过,典型的依赖库版本不匹配。
核心原因是你的 cx_Oracle 版本与 Oracle Instant Client 版本不一致。
解决方案:
- 卸载当前 cx_Oracle
pip uninstall cx_Oracle
- 安装与 Oracle Instant Client 匹配的版本
# 例如 Oracle Client 19,安装对应版本的 cx_Oracle
pip install cx_Oracle==8.3.0
-
确保环境变量正确
将 Oracle Instant Client 路径添加到系统 PATH,例如:
C:\instantclient_19_18(Windows)或/opt/oracle/instantclient_19_18(Linux/Mac) -
验证安装
import cx_Oracle
print(cx_Oracle.version) # 应输出版本号
如果还不行,检查操作系统架构(32位/64位)是否一致。
一句话总结: 保持 cx_Oracle 和 Oracle Instant Client 版本严格对应。

