jdbc4.CommunicationsException:通信链接失败

时间:2011-03-21 12:45:44

标签: java mysql

在某些查询执行的情况下,是否有人面临此类错误? ( jdbc4.CommunicationsException:通信链接失败

通常,此异常意味着应用程序和mysql之间的通信问题。你可以找到很多关于可能原因的建议。

在我们的案例中没有任何帮助,经过几个小时的调查后发现原因可能完全是其他原因 也许下面的答案会节省一些人的时间:)

1 个答案:

答案 0 :(得分:5)

所以,事实证明,原因可能是mysql数据文件的破坏!!实际上,它可能会破坏mysql正常运行大多数查询的方式。

如果找到执行应用程序的查询(抛出CommunicationsException时)并直接执行它,例如在SQLyog中,您将看到:
    错误代码:2013
    查询期间与MySQL服务器的连接丢失

首先,看一下mysql的 .err日志文件。如果你有类似的情况,应该报告很多错误,包括如下信息:
InnoDB:磁盘上的数据库页面损坏或失败的

我们已经采取了哪些措施来快速解决问题 - 我们将“innodb_force_recovery”设置为 1 。这意味着对MySQL的指令:让服务器运行,即使它检测到损坏的页面

设置此项后,

CommunicationsException 消失,剩下的就是“简单”数据库恢复;-)

一切顺利,
埃德加