数据库重新联机后,连接请求超时



我们在使用 PetaPoco micro-orm 的 C# 项目中遇到了问题。我们的 Oracle 数据库在另一台机器上,如果我们因维护或故障而关闭该机器,我们会在 C# PetaPoco 中出现此错误:

Exception="Connection request timed out
at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, 
OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object 
src, String procedure, Boolean bCheck, Int32 isRecoverable, 
OracleLogicalTransaction m_OracleLogicalTransaction)
at Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode, 
OracleConnection conn, IntPtr opsErrCtx, Object src, OracleLogicalTransaction 
m_oracleLogicalTransaction)
at Oracle.DataAccess.Client.OracleConnection.Open()

这没关系,但是当数据库恢复时,我们在尝试打开数据库时仍然收到相同的错误:Exception="连接请求超时...

我尝试将最大池大小设置为较低的数字(例如 3(,并尝试打开多个连接而不关闭它们以复制问题。不幸的是,我从这个实验中得到了一个不同的错误:池连接请求超时

当数据库 PC 在夜间关闭时,会发生这种情况。使用 SQLDeveloper 测试与数据库的连接是否有效。

有什么建议吗? 谢谢

几周前,我在开发工作站上收到池连接请求超时。

我能够通过将连接描述直接放入连接字符串而不是使用 TNS 来清除它。

而不是

...Data Source = MyTNSDescription...

我把它放在 Web.config 连接字符串中

... Data Source = (DESCRIPTION =(ADDRESS = <rest of connection description>...

突然间,问题消失了。如果问题与 Oracle 客户端/TNS 的特定配置有关,则可能会让您快速工作。无论如何,这是一件快速尝试的事情。

相关内容

  • 没有找到相关文章

最新更新