2010-07-10 98 views
3

我想在Linux RHEL x86_64中的Apache WS中运行python。cx_Oracle问题试图导入python

安装并配置Python2.5和Apache之后,我将Oracle Instant Client(basic和sdk)安装在一个.rpm文件中,但没有任何问题。

oracle-instantclient-basic-10.2.0.4-1.x86_64.rpm 
oracle-instantclient-devel-10.2.0.4-1.x86_64.rpm 

我设置envoirment变量

export ORACLE_HOME=/appl/paths/instantclient_10_2 
export LD_LIBRARY_PATH=$ORACLE_HOME/lib 
export PATH=$ORACLE_HOME/bin:$PATH 

然后安装用的.rpm文件cx_Oracle太又一次withou任何问题。

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 

我谷歌没有成功的答案。任何提示?

+0

http://agiletesting.blogspot.com/2005/05/installing-and-using-cxoracle-on-unix.html – miku 2010-07-10 18:19:40

+0

Oracle即时客户端工作正常,我能够连接数据库,但我仍然无法安装cx_Oracle。我认为它应该是一个与Linux库python-devel(python-devel-2.4.3-27.el5.x86_64.rpm)的问题。这个库与python2.5不兼容,我没有找到python-devel-2.5的rpm – 2010-07-12 19:17:02

回答

1

的问题是在ORACLE_HOME,有一个拼写错误就可以了

0

我通过安装cx_Oracle的旧版本(4.3.1,而不是5.1.2)解决同样的问题。仅供将来参考。