1、异常详情
com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
2、解决方案
url需要添加属性useSSL=false,完整url路径如下
- url: jdbc:mysql://[服务主机ip]:3306/database?useUnicode=true&useSSL=false&characterEncoding=utf-8
3、分析原因
概念:SSL(Secure Sockets Layer 安全套接字协议)
- SSL(Secure Socket Layer)安全套接层是Netscape公司率先采用的网络安全协议。它是在传输通信协议(TCP/IP)上实现的一种安全协议,采用公开密钥技术。SSL广泛支持各种类型的网络,同时提供三种基本的安全服务,它们都使用公开密钥技术。
MySQL中的使用( useSSL)
- 在MySQL中
useSSL=true
是进行安全验证,需要通过使用证书(类似 SSH连接)或者令牌之类的认证 - 在
mysql
进行连接的时候,如果mysql
的版本是5.7以后则,必须要关闭该协议,即加上useSSL=false
mysql5.7
及之前版本则不用添加useSSL=false
,会默认为false
- 我们日常使用一般都是
useSSL=false
,即只需要数据库服务系统的账号密码就可连接成功!
Original: https://www.cnblogs.com/malongfeistudy/p/16711670.html
Author: 有点小白的菜鸟
Title: MySQL 通信异常或者通信连接失败
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/580501/
转载文章受原作者版权保护。转载请注明原作者出处!