Establishing SSL connection without server's identityverification is not recommended. According to M

报错信息

Establishing SSL connection without server's identityverification is not recommended. According to M_第1张图片

详细信息

Sat Jan 19 15:48:40 CST 2019 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.
ERROR [Druid-ConnectionPool-Create-952370625] - create connection error, url: jdbc:mysql://localhost:3306/ssmtest?characterEncoding=UTF-8, errorCode 0, state 01S00
java.sql.SQLException: The server time zone value '?D1ú±ê×?ê±??' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
 at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:127)
 at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:95)
 at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:87)
 at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:61)
 at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:71)
 at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:76)
 at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:862)
 at com.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:444)
 at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:230)
 at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:226)
 at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1408)
 at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1464)
 at com.alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:1995)
Caused by: com.mysql.cj.exceptions.InvalidConnectionAttributeException: The server time zone value '?D1ú±ê×?ê±??' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
 at sun.reflect.GeneratedConstructorAccessor39.newInstance(Unknown Source)
 at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
 at java.lang.reflect.Constructor.newInstance(Unknown Source)
 at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:59)
 at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:83)
 at com.mysql.cj.util.TimeUtil.getCanonicalTimezone(TimeUtil.java:128)
 at com.mysql.cj.protocol.a.NativeProtocol.configureTimezone(NativeProtocol.java:2201)
 at com.mysql.cj.protocol.a.NativeProtocol.initServerSession(NativeProtocol.java:2225)
 at com.mysql.cj.jdbc.ConnectionImpl.initializePropsFromServer(ConnectionImpl.java:1391)
 at com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:993)
 at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:852)
 ... 6 more

解决

这里的mysql版本是:

本地8.0,项目的驱动依赖是8.0.11


MySQL在高版本需要指明是否进行SSL连接

 

找到项目中连接数据库的url的部分,这里是ssm整合时的配置文件xml文件中


    
    
        
        
        
    

在原来的url后面追加 &useSSL=true(如果url是字符串的话)

而这里是xml的配置文件

因为xml文件中&是被禁止的需要用到它的转义字符"&"

Establishing SSL connection without server's identityverification is not recommended. According to M_第2张图片

你可能感兴趣的:(数据库)