JDBC无法连接虚拟机上的MySQL

img


Exception in thread "main" com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

驱动包版本不对吧
看报错,你使用的是8.x版本的驱动包,但是代码中加载的驱动类是5.x版本的。
5.x版本驱动类

com.mysql.jdbc.Driver

8.x版本驱动类

com.mysql.cj.jdbc.Driver

驱动换成8以上的,驱动类中间加上cj,com.mysql.cj.jdbc.Driver
连接地址最后面加上这一串 ?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8

本地navicate是否可以连接上

1,要看你用的是什么虚拟机。docker 或 vmware是不同的。
2,可以用数据库管理客户端测试。如果能可连上,就是代码问题。否则就是虚拟机的配置问题。
3,docker 的配置有三种网络的。要看你的选择。
4, vmware 一般安装好就可以用。除非特别设置才不可以。

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632