Python读取Oracle路径
时间:2020-03-06 14:23:03 来源:igfitidea点击:
在我的桌面上,我编写了一个连接Oracle的小型Pylons应用程序。我现在正尝试将其部署到运行Win2k3 x64的服务器上。 (我的桌面是32位XP)服务器上的Oracle安装也是64位。
我在加载OCI dll时遇到错误,因此我将32位客户端安装到了C:\ oracle32中。
如果我将其添加到" PATH"环境变量中,则效果很好。但是我也想将Pylons应用程序作为服务运行(使用此配方),并且不想将此32位库放在所有其他应用程序的路径上。
我尝试使用sys.path.append(" C:\ oracle32 \ bin")`,但这似乎不起作用。
解决方案
sys.path是python的PYTHONPATH的内部表示形式,听起来像是我们要修改PATH。
我不确定这是否行得通,但是我们可以尝试:
import os os.environ['PATH'] += os.pathsep + "C:\oracle32\bin"
在执行python.exe之前,需要将c:\ Oracle32 \ bin目录添加到环境的PATH变量中。
在Linux中,出于类似的原因,我需要在调用python之前设置LD_LIBRARY_PATH变量来查找Oracle库。我使用设置变量的包装器外壳脚本,然后调用Python。
就我们而言,也许我们可以在服务启动时调用一个.cmd或者.vbs脚本来设置PATH变量,然后使用.py脚本调用python.exe。
我希望这有帮助!
如果Python应用程序在64位空间中运行,则需要访问Oracle oci.dll的64位安装,而不是32位版本。通常,在运行脚本之前,我们将更新系统路径以包含相应的Oracle Home bin目录。解决方案也可能会有所不同,具体取决于我们要使用哪些组件从Python访问Oracle。