我刚刚安装了Coldfusion 9,现在一切运行正常,它作为数据例程通过Coldfusion Administrator连接到我的MySQL数据库,但我很少遇到这个错误,一天可能有5- 10次。我不知道如何重新创建它,如果你获得它并刷新页面,它就会消失。
Error Executing Database Query. Communications link failure Last packet sent to the server was 0 ms agocoldfusion在显示用户友好的消息并将问题通过电子邮件发送给我时,捕获了该错误。
几乎所有时候页面都能正常加载和工作,而且这个问题只是在从CFMX7转到CF9之后才发生的,两者都使用了MySQL。
我使用的MySQL版本是"5.0.77“
我已经尝试过在数据源中使用localhost和127.0.0.1作为主机,这没有什么区别。
有谁知道这是什么以及如何修复它吗?我看过一些类似的Java帖子,但我不知道如何将修复程序转换为Coldfusion?这会不会是MySQL或Apache的问题呢?
编辑:我在昨天(11日)上午11点取消选中了maintain connections,从那以后就没有这个错误了。通常我一天会收到3- 10个,所以这看起来很有希望。我会等到明天再确认它已经修好了。我在5.0.77上使用MySQL 4/5驱动程序
发布于 2011-01-13 20:12:07
这个问题在Adobe论坛上进行了讨论。似乎一种合适的解决方法是在ColdFusion数据源定义中启用验证查询,例如"Select 1“(不带引号)。在允许页面请求使用该数据库连接之前,ColdFusion将通过运行该简单查询来测试每个连接。这将保证每个db连接在应用程序中使用之前都是良好的。
更多详情请访问:http://forums.adobe.com/message/3396302#3396302
发布于 2010-12-23 21:23:27
除非您正在谈论将Apache Tomcat作为ColdFusion的servlet引擎,否则Apache不会成为您的问题。Apache HTTPD不会导致这种情况。
这看起来确实像是JDBC连接器和MySQL之间的一个bug。你能告诉我你用的是什么版本的mysql吗?
发布于 2014-01-09 05:08:59
向数据源添加验证查询为我修复了与Steven Erat给出的解决方案相同的问题。
我只是简单地补充一下,您需要确保添加"SELECT 1“查询,并选中该查询上方的"Enable connection validation”复选框。
我错过了对一些数据源的复选框的检查,问题后来又悄悄地出现了……(笑)
https://stackoverflow.com/questions/4500414
复制相似问题