标签:权限 sql语句 The 文件 mys 打印 虚拟机 oca not
前一阵子有一台服务器,mysql的时间比北京时间晚了8个小时。我知道是时区的问题,但是不知道为什么弄成这样,宿主机没有问题,后来一看mysql的docker,时区是错的。
mybatis-plus打印的sql脚本中,包含时间参数的,都被强制减掉了8个小时,我一开始还以为是java方面的问题,原来是docker时区没有设置正确。mybytis-plus也是等数据库执行了才把SQL语句打印出来的,问题根源在数据库的微服务中!
看了docker用了什么版本 cat /etc/issue,原来用的是debian 9,不熟悉,加上docker各种命令不安装,非常难弄。
查看时区 date -R,果然不是北京时间。
千辛万苦安装了ntpdate,却提示 Can‘t adjust the time of day: Operation not permitted,修改时间也没有权限。因为docker也算是虚拟机吧,不能修改。
最后发现用宿主机的时间配置文件复制到容器就好了,真是笨,摸索了一两个小时。。。
docker cp /usr/share/zoneinfo/Asia/Shanghai mysql:/etc/local
mysql时间正确了,但是查询的时候时间还是少了8个小时,这时候我才想到,另外一个微服务的容器里面的时区会不会也是错的?
标签:权限 sql语句 The 文件 mys 打印 虚拟机 oca not
原文地址:https://www.cnblogs.com/luodengxiong/p/11374495.html