python - ORA-03135 连接在尝试使用 python 和 cx_Oracle 模块连接到数据库时失去联系

标签 python python-3.x oracle12c cx-oracle

我正在尝试在 Windows 10 系统上使用 cx_Oraclepython 连接到 oracle 数据库(基于 https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html#installing-cx-oracle-on-windows ),例如如下:

import cx_Oracle

dsn_tns = cx_Oracle.makedsn('host', 'port', service_name='name')
conn = cx_Oracle.connect(user='username', password='passwd', dsn=dsn_tns)

我有一个错误:

cx_Oracle.OperationalError: ORA-03135: connection lost contact

Process ID: 0 Session ID: 0 Serial number: 0

我还向 sqlnet.ora 添加了 2 个参数(基于来自 https://www.vitalsofttech.com/ora-03135-connection-lost-contact/ 的信息):

  • SQLNET.EXPIRE_TIME=10
  • SQLNET.INBOUND_CONNECT_TIMEOUT=3

仍然出现同样的错误。

我以为这可能是防火墙的问题,但事实并非如此。我还可以使用 sqlplus 从命令行连接到数据库。

Tnspi​​ng 从我的本地计算机到数据库返回 OK。

最佳答案

问题已解决。

将本地计算机上的 Oracle 即时客户端11.2 升级到 12.1 解决了连接问题。

关于python - ORA-03135 连接在尝试使用 python 和 cx_Oracle 模块连接到数据库时失去联系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57854229/

相关文章:

python - 将特定单词附加到单独行上的其他单词

python-3.x - 在 "exec"函数之后无法从 locals() 访问变量

linux - 无法在 Linux 7 中安装 Oracle 数据库

sql - Oracle "row_limiting_clause"如何获取rowcount|百分比 PERCENT 行在 Oracle 12c 中有效吗?

python - Shutil.copy 和 Glob

python - Numpy直方图,如何在每个bin中取最大值

python - starpy、asterisk 接口(interface)库的备用配置文件

python - 将 Pandas 数据帧转为具有多层的长格式

python - 为什么 cx_freeze 包含我尚未导入的模块

c# - Oracle.ManagedDataAccess 和 ORA-01017 : invalid username/password; logon denied