Docker容器默认时区导致MySQL时区问题错误
项目开发环境 MySQL 是部署在本地的 docker 容器中,在开发过程中发现,凌晨的统计经常不对,最后发现是与 MySQL 时区有关,使用 CURDATE()
等函数获取到了错误的时间, serverTimezone=Asia/Shanghai
也没能够生效,也查询了 docker 宿主机的时区是正确的 + 8:00,最后发现是容器内的时区问题,修改如下:
# 进入容器
docker exec -it 容器名 bash
# 查看容器时区
date -R
# 修改时区为上海
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# 验证容器时区是否修改成功
date -R
参考
上次更新: 2023/06/02, 23:30:21