【发布时间】:2018-06-08 05:24:30
【问题描述】:
我正在尝试在要迁移到的新服务器中设置我的 python 脚本,但是每当我尝试使用该脚本连接到数据库时,我都会收到以下错误
dbHost = 'xxxxxx'
dbPort = xxxx
dbServiceName = 'xxx.xxxx.com'
dbUser = 'xxxx'
dbPass = 'xxxx'
dnsTns = cx_Oracle.makedsn(dbHost, dbPort, dbServiceName).replace('SID','SERVICE_NAME')
dbCon = cx_Oracle.connect(dbUser, dbPass, dnsTns)
>>> dbCon = cx_Oracle.connect(dbUser, dbPass, dnsTns)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
cx_Oracle.InterfaceError: Unable to acquire Oracle environment handle
我可以使用相同的 TNS 用户从命令行使用 sqlplus 并顺利通过,但无法让它在脚本上运行
我的路径变量的 oracle 客户端文件夹设置与之前的服务器 (C:\oracle\bin) 一样。
TNS_ADMIN 变量设置为“C:\oracle\NETWORK\ADMIN” 也尝试使用 ORACLE_HOME 到 C:\oracle
Oracle 客户端与服务器相同 10 windows版本64位 使用 pip 安装的 cx_Oracle 模块 5.1.3 python是2.7
【问题讨论】:
标签: python windows oracle cx-oracle