跳转到主内容
Waters China

带 Azure 数据库服务器的 LAC/E 上出现数据库连接终止 ORA-03135 - WKB264945

故障描述

  • LAC/E 系统处于非活动状态 65 分钟后登录时,出现 Database connection terminated ORA-03135(数据库连接终止 ORA-03135)错误
  • 如果采集时间超过 65 分钟,会出现缓冲现象
  • Citrix 会话中看不到 ORA-03135
  • 采集时间少于 65 分钟时,未观察到 ORA-03135 错误和缓冲

环境

  • Empower 3.6.1(任何版本都可能受影响)
  • Azure 数据库服务器
  • Azure Citrix
  • Azure原始数据文件共享

原因

Azure 策略会在非活动状态 65 分钟后关闭来自外部计算机 (LAC/E) 的空闲 TCP 连接。 ORA-03135 表示 Oracle 外部原因关闭了连接。

解决方法

只有两个选择。 Empower SQL TCP 与数据库的连接仅在进样开始和结束时有效。

  1. 设置 SQLNET.Expire_Time(请参阅 Empower,频繁缓冲多个站点、多个 LAC/E - WKB229311)。但是,空数据包可能会被丢弃/忽略。
  2. 在服务器上设置 TCP KeepAlive。这将发送 ACK 数据包到打开的连接,这些连接未被忽略。打开但空闲的连接应有响应。

附加信息

Windows 中的缺省 TCP Keepalive 时间间隔为 2 小时。如果其他超时设置的值较低,则 TCP Keepalive 将不会启动。

非活动状态一段时间 (KeepAliveTime) 后,服务器将以指定的间隔 (KeepAliveInterval) 发送 ACK 数据包,直至达到指定的最大数量。

要在服务器上设置的 TCP KeepAlive 注册表项:

   HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\

clipboard_ecda9257de3cf5dba01561807b2a2b2cf.png

 

id264945,