我已经在我的 Linux 机器上安装了 python Oracle 模块 cx_Oracle。oracle 用户和 root 用户都可以导入 cx_Oracle 并使用 cx_Oracle.Connection(...) 创建数据库连接。
服务器上的其他用户也可以导入 cx_Oracle,但是当他们尝试创建连接对象时,会引发以下异常:
>>> cx_Oracle.Connection('....')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
cx_Oracle.InternalError: No Oracle error?
我已经确认我要开始工作的用户设置了所有正确的系统变量,ORACLE_HOME、LD_LIBRARY_PATH、ORACLE_SID 和 PATH。该用户使用 sqlplus 并以这种方式连接到数据库也没有问题。
我认为这是一个文件权限问题,因为 oracle 和 root 用户都没有问题。我只是不确定哪个文件可能导致问题。