我觉得这个问题还有另外一个问题,但我读过的所有其他问题都以一个不一定适用或解决我的问题的解决方案结束。
我在CentOS 6.2上运行Oracle。数据库启动,sqlplus连接正常。我正在使用Python 3.2和Oracle 11.2.0.3
我发现并安装了包cx_Oracle-5.1.1-11g-py32-1.x86_64.rpm而没有错误。
[paws@linux ~]$ ls -al /usr/lib/python3.2/site-packages
total 360
drwxr-xr-x. 2 root root 4096 May 2 12:04 .
drwxr-xr-x. 3 root root 4096 Apr 13 09:31 ..
-rw-r--r--. 1 root root 898 Oct 8 2011 cx_Oracle-5.1.1-py3.2.egg-info
-rwxr-xr-x. 1 root root 353356 Oct 8 2011 cx_Oracle.cpython-32mu.so
[paws@linux ~]$
但是在尝试导入cx_Oracle时,我仍然遇到导入错误。我已经检查了PYTHONPATH,如下所示,相应的目录就在那里:
[paws@linux ~]$ python
Python 3.2.2 (default, Apr 13 2012, 09:15:56)
[GCC 4.4.6 20110731 (Red Hat 4.4.6-3)] 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: No module named cx_Oracle
>>> import sys
>>> print (sys.path)
['', '/home/paws', '/usr/lib/python3.2/site-packages', '/usr/local/lib/python32.zip', '/usr/bin/Python-3.2.2/Lib', '/usr/bin/Python-3.2.2/Lib/plat-linux2', '/usr/bin/Python-3.2.2/build/lib.linux-x86_64-3.2', '/usr/local/lib/python3.2/site-packages']
还有什么我可以检查来解决这个问题吗?我已经在Windows上安装了很多次cx_Oracle而没有任何问题,但这是第一次使用linux,所以我必须错过一些简单的东西。
任何帮助都非常感激。
答案 0 :(得分:0)
只是一个想法。我想知道你的version tagged files是否存在问题。
在python提示符下,当你输入时会得到什么:
>>>import sysconfig
>>>sysconfig.get_config_var('SO')
你应该得到: 'cpython-32mu.so'
如果没有,您可以尝试创建符号链接以指向此。