编程访问Mysql数据库时,报出时区错误如下:
1
The server
time
zone value
'й'
is unrecognized or represents
more
than one
time
zone
通常有以下两种解决方法:
第一,在数据库连接语句后添加?serverTimezone=UTC,即默认0时区,但是要注意,该语句需要跟在数据库连接语句的第一个位置,否则会报错,例如:
1
jdbc.url=jdbc:mysql:
//localhost
:3306
/testdatabase
?serverTimezone=UTC&useUnicode=
true
&characterEncoding=utf-8
但是这会存在一个问题,在向数据库插入时间字段时,时间会比当前时间早8小时,即当前系统时间减8小时。
第二,修改Mysql的时区为东8区,执行如下命令即可:
1
set
global time_zone=
'+8:00'