【踩坑实录】mybatis项目报错:Establishing SSL connection without...property is set to false

环境说明: 系统:Win10专业版 mysql 5.7

问题再现

操作数据库时,警告信息如下:

代码语言:javascript
复制
WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
01

以上警告信息翻译一下就是:

代码语言:javascript
复制
警告:不建议在没有服务器身份验证的情况下建立 SSL 连接。 根据MySQL 5.5.45+、5.6.26+ 和 5.7.6+ 要求,如果未设置显式选项,则必须默认建立 SSL 连接。 为了符合不使用 SSL 的现有应用程序,verifyServerCertificate 属性设置为“false”。您需要通过设置 useSSL=false 来显式禁用 SSL,或者设置 useSSL=true 并为服务器证书验证提供信任库。

解决方法

最省事的方法是修改数据库连接信息,在链接之后加上“useSSL=false”,直接禁用SSL连接方式。

原来链接为:

代码语言:javascript
复制
jdbc:mysql://localhost:3306/mybatis?setUnicode=true&characterEncoding=utf8

加上参数之后修改为:

代码语言:javascript
复制
jdbc:mysql://localhost:3306/mybatis?setUnicode=true&characterEncoding=utf8&useSSL=false

如果将参数设置为“useSSL=true”,在IDEA数据库连接界面设置SSL证书,也可以消除警告:

02