连接mysql数据库报错java.sql.SQLException: The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone.

在使用 spring boot 操作数据库的时候,莫名其妙抛了一个错误:mysql6.0.6 时间区域时差问题

 ava.sql.SQLException: The server time zone value '�й���׼ʱ��' 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.

java.sql.SQLException: The server time zone value '�й���׼ʱ��' 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:545)  
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:513)  
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:505)  
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:479)  
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:489)  
    at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:69)  
    at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:1606)  
    at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:633)  
    at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:347)  
    at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:219)at java.sql.DriverManager.getConnection(Unknown Source)  
    at java.sql.DriverManager.getConnection(Unknown Source)  
    at com.java1234.util.DbUtil.getCon(DbUtil.java:12)  
    at com.java1234.realm.MyRealm.doGetAuthenticationInfo(MyRealm.java:55)  
    at org.apache.shiro.realm.AuthenticatingRealm.getAuthenticationInfo(AuthenticatingRealm.java:571)  
    at org.apache.shiro.authc.pam.ModularRealmAuthenticator.doSingleRealmAuthentication(ModularRealmAuthenticator.java:180)  

 

我的 yml 配置文件

server:
  port: 8088
spring:
  profiles:
    active: dev
  datasource:
    password: 123456
    url: jdbc:mysql://localhost:3306/person
    username: root
    driver-class-name: com.mysql.jdbc.Driver
# 使用druid数据源

#mybatis:

type-aliases-package: com.zakyoung.springboot.vue.entities

我的 pom.xml 的配置文件

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
    &lt;/dependency&gt;
    &lt;dependency&gt;
        &lt;groupId&gt;org.mybatis.spring.boot&lt;/groupId&gt;
        &lt;artifactId&gt;mybatis-spring-boot-starter&lt;/artifactId&gt;
    &lt;/dependency&gt;

    &lt;dependency&gt;
        &lt;groupId&gt;org.mybatis.spring.boot&lt;/groupId&gt;
        &lt;artifactId&gt;mybatis-spring-boot-starter&lt;/artifactId&gt;
        &lt;version&gt;1.1.1&lt;/version&gt;
    &lt;/dependency&gt;

    &lt;dependency&gt;
        &lt;groupId&gt;mysql&lt;/groupId&gt;
        &lt;artifactId&gt;mysql-connector-java&lt;/artifactId&gt;
        &lt;scope&gt;runtime&lt;/scope&gt;
    &lt;/dependency&gt;

    &lt;dependency&gt;
        &lt;groupId&gt;org.projectlombok&lt;/groupId&gt;
        &lt;artifactId&gt;lombok&lt;/artifactId&gt;
        &lt;optional&gt;<span style="color: rgba(0, 0, 255, 1)">true</span>&lt;/optional&gt;
    &lt;/dependency&gt;

    &lt;dependency&gt;
        &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
        &lt;artifactId&gt;spring-boot-starter-test&lt;/artifactId&gt;
        &lt;scope&gt;test&lt;/scope&gt;
    &lt;/dependency&gt;

    &lt;dependency&gt;
        &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
        &lt;artifactId&gt;spring-boot-starter-web&lt;/artifactId&gt;
    &lt;/dependency&gt;

   <span style="background-color: rgba(255, 0, 0, 1)"> &lt;dependency&gt;
        &lt;groupId&gt;mysql&lt;/groupId&gt;
        &lt;artifactId&gt;mysql-connector-java&lt;/artifactId&gt;
        &lt;version&gt;6.0.6&lt;/version&gt;
    &lt;/dependency&gt;</span></pre>

我是用的 6.0.6 版本的

修改配置文件加上

serverTimezone=UTC”不然会因为时区问题报错,这里用了 CTT 中国台湾时区避免产生 8 小时时差

 url: jdbc:mysql://localhost:3306/person?serverTimezone=CTT&useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true

这样就好了,多踩踩坑