mysql5.7项目不能连接的问题。项目不能连接

本文记录了在项目中遇到的MySQL 5.7通信连接失败的异常,详细错误信息显示为`Communications link failure`。错误并非由于最大连接数或超时导致。解决方案包括彻底卸载并重新安装MySQL 5.7,注意开启防火墙端口,以及确保数据库配置使用`localhost`或`127.0.0.1`,而非本地IP。对于尚不了解的MySQL 5.7远程连接配置,作者提出待学习掌握后将在博客中分享。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

信息: Server startup in 20470 ms
2016-08-10 18:16:43,469 [org.logicalcobwebs.proxool.proxooldb]-[ERROR] Prototype
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
  at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
  at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
  at java.lang.reflect.Constructor.newInstance(Unknown Source)
  at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
  at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1116)
  at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:344)
  at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2332)
  at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2369)
  at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2153)
  at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:792)
  at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
  at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
  at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
  at java.lang.reflect.Constructor.newInstance(Unknown Source)
  at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
  at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:381)
  at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305)
  at java.sql.DriverManager.getConnection(Unknown Source)
  at java.sql.DriverManager.getConnection(Unknown Source)
  at org.logicalcobwebs.proxool.DefaultConnectionBuilder.buildConnection(DefaultConnectionBuilder.java:39)
  at org.logicalcobwebs.proxool.Prototyper.buildConnection(Prototyper.java:159)
  at org.logicalcobwebs.proxool.Prototyper.sweep(Prototyper.java:102)
  at org.logicalcobwebs.proxool.PrototyperThread.run(PrototyperThread.java:44)
Caused by: java.net.ConnectException: Connection refused: connect
  at java.net.DualStackPlainSocketImpl.connect0(Native Method)
  at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
  at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
  at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
  at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
  at java.net.PlainSocketImpl.connect(Unknown Source)
  at java.net.SocksSocketImpl.connect(Unknown Source)
  at java.net.Socket.connect(Unknown Source)
  at java.net.Socket.connect(Unknown Source)
  at java.net.Socket.<init>(Unknown Source)
  at java.net.Socket.<init>(Unknown Source)
  at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:257)
  at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:294)
  ... 18 more
2016-08-10 18:17:13,699 [org.logicalcobwebs.proxool.proxooldb]-[ERROR] Prototype
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
  at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
  at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
  at java.lang.reflect.Constructor.newInstance(Unknown Source)
  at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
  at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1116)
  at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:344)
  at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2332)
  at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2369)
  at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2153)
  at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:792)
  at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
  at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
  at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
  at java.lang.reflect.Constructor.newInstance(Unknown Source)
  at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
  at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:381)
  at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305)
  at java.sql.DriverManager.getConnection(Unknown Source)
  at java.sql.DriverManager.getConnection(Unknown Source)
  at org.logicalcobwebs.proxool.DefaultConnectionBuilder.buildConnection(DefaultConnectionBuilder.java:39)
  at org.logicalcobwebs.proxool.Prototyper.buildConnection(Prototyper.java:159)
  at org.logicalcobwebs.proxool.Prototyper.sweep(Prototyper.java:102)
  at org.logicalcobwebs.proxool.PrototyperThread.run(PrototyperThread.java:44)
Caused by: java.net.ConnectException: Connection refused: connect
  at java.net.DualStackPlainSocketImpl.connect0(Native Method)
  at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
  at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
  at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
  at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
  at java.net.PlainSocketImpl.connect(Unknown Source)
  at java.net.SocksSocketImpl.connect(Unknown Source)
  at java.net.Socket.connect(Unknown Source)
  at java.net.Socket.connect(Unknown Source)
  at java.net.Socket.<init>(Unknown Source)
  at java.net.Socket.<init>(Unknown Source)
  at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:257)
  at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:294)
  ... 18 more


上述报错在网上怎么找页找不到,不是最大连接数和时间的问题。

由于测试环境的mysql升级到了5.7,而本地自己开发的环境是5.5,故卸载了5.5版本。卸载的时候一定要卸载干净,在注册表里面删除相关的内容,具体方法可以百度,此处不说明。然后安装5.7.14版本的mysql数据库,安装的时候后面一定要记清楚数据库的账号和密码,Open Firewall port for network access这个一定要勾上,否则别人不能连接你的数据库。后面设置数据库密码的时候一定要牢牢记住密码。否则什么事也干不了。

继续解决上述报错,在本地跑项目的时候数据库的配置一定不要用本地的ip地址

url=jdbc:mysql://192.168.x.x:3306/abc?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull

类似于这样,要用localhost或者127.0.0.1这种,否则就会出现上述的报错,有可能是我的数据库没有开启远程连接。新的数据库如何设置远程连接暂时还没有学会,所以现在只能用这种方式解决问题。等了解了mysql5.7版本的开启远程连接的方法之后再在博客中写出来。目前先这样解决,5.7和5.5的区别对于我这种新手来说还是需要循序渐进的学习。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值