2

我知道对于某些连接池,您可以指定池管理器可以用来验证连接的测试查询。

有没有类似于 asp.net 的东西?我遇到了一个问题,Web 应用程序和数据库之间有防火墙,它正在关闭空闲连接 - 结果是用户收到“ORA-03135:连接丢失联系”错误。重新加载页面很好,但我想完全删除该错误。

4

2 回答 2

1

如 Oracle文档中所述,连接字符串中有Validate Connection=true设置。

“Validate Connection 属性验证来自池的连接。仅在绝对必要时才应使用此属性,因为它会导致在将每个连接提供给应用程序之前立即对数据库进行往返验证。如果无效连接是不常见的是,开发人员可以创建自己的事件处理程序来检索和验证新连接,而不是使用 Validate Connection 属性。这通常会提供更好的性能。

于 2021-02-16T06:00:15.693 回答
0

如果最新的 Oracle 驱动程序还没有解决问题,那么丑陋的解决方案是构建一个 Windows 服务,它每 X 秒 ping 一次数据库。我不确定 X 会是什么,我猜每 30 秒一次。

于 2009-06-04T19:05:40.347 回答