发布时间:2023-05-23 15:30
再写数据库同步时,遇到Java读取主数据库存入从库时,时间不一致。
写项目时,对于timestamp类型的数据,Java查出来的数据比mysql慢8小时。比如:
mysql内的数据是 2019-08-01 13:31:10 Java查出来是 2019-08-01 05:31:10。
可以肯定的是时区出了问题了。
show variables like \'%time_zone%\';
CST是美国,澳大利亚时间,这样的话是Java查询数据库时错误的认为我是东八区时间,所以查出来减8到标准时间。
其中
参数名 | 默认 | 意义 |
---|---|---|
useTimezone | false | |
serverTimezone | mysql服务器的时区 |
跟这两个有关,
这里我把这两个参数设置为:
useTimezone=true&serverTimezone=GMT
serverTimeZone 的值要根据不同情况区别对待。