spring:
application:
name: service
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8
username: root
password: 123456
type: com.zaxxer.hikari.HikariDataSource
配置如上,数据库连接正常
但是查询时报错
java.sql.SQLException: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone. You must configure either the server or JDC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
同样配置在我另一个spring boot的项目上是正常的,从错误里面看是时区问题
查了下资料,url中的确可以设置时区,在后面加上时区就正常了
spring:
application:
name: service
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Hongkong
username: root
password: 123456
type: com.zaxxer.hikari.HikariDataSource
查了下原因,好像是我pom文件中用的最新版的mysql包造成的,跟spring cloud没关系,我另一个项目的包是早些时候的版本
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
这个版本的包需要加时区