导入Python时cx_Oracle问题
我正在尝试在一个运行Linux RHEL x86_64的Apache服务器上运行Python。
我安装并配置了Python2.5和Apache之后,顺利地通过一个.rpm文件安装了Oracle Instant Client(基础版和SDK)。
oracle-instantclient-basic-10.2.0.4-1.x86_64.rpm
oracle-instantclient-devel-10.2.0.4-1.x86_64.rpm
我设置了环境变量。
export ORACLE_HOME=/appl/paths/instantclient_10_2
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:$PATH
然后我也通过一个.rpm文件安装了cx_Oracle,过程同样没有问题。
cx_Oracle-5.0.3-10g-unicode-py25-1.x86_64.rpm
但是当我在Python中尝试导入cx_Oracle时,出现了错误信息。
Python 2.5.2 (r252:60911, Jul 1 2010, 17:47:36)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-46)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cx_Oracle
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: /appl/paths/python2.5/site-packages/cx_Oracle.so: undefined symbol: OCIDBShutdown
我在网上搜索答案,但没有找到解决办法。有没有什么建议?
2 个回答
0
我通过安装一个旧版本的cx_Oracle(4.3.1,而不是5.1.2)解决了同样的问题。这个信息留着以后参考。
1
问题出在 ORACLE_HOME 这个设置上,里面有个拼写错误。