作者:S_o_m_n_u_211 | 来源:互联网 | 2024-12-15 11:08
问题背景:在使用MyBatis Generator进行代码生成时,遇到了一个常见的错误——'Communication Link Failure'。经过初步排查,发现MySQL数据库版本为8.0或更高。
解决步骤:
第一步:尝试通过修改JDBC URL来解决。具体来说,在JDBC URL后添加如下参数:
?characterEncoding=utf8&useSSL=false&serverTimezOne=UTC&rewriteBatchedStatements=true
尽管进行了上述设置,但问题并未完全解决,一段时间后错误依旧出现。
第二步:考虑到可能是数据库连接超时导致的问题,尝试调整MySQL的超时设置。为此,在MySQL的配置文件my.ini中添加了以下两个参数:
wait_timeout=2147483 interactive_timeout=2147483
此设置意在延长数据库的空闲连接时间,避免因长时间无操作而导致的连接中断。然而,即便如此,问题仍未得到根本解决。
第三步:作为最后的尝试,将JDBC URL中的IP地址替换为localhost。具体操作是在本地开发环境中将项目的数据库连接方式改为localhost(注意:这里的更改仅针对部署在云服务器上的项目,开发环境仍可保持使用IP地址连接)。这一改动最终解决了问题,长时间测试后未再出现'Communication Link Failure'错误。
值得注意的是,在经历了上述所有尝试后,问题的根本原因被发现其实是MySQL服务未启动。通过简单的命令行操作重启MySQL服务:
net start mysql
问题得到了彻底解决。