mysql使用 docker-compose 方式部署时区不是东八区的解决方案
mysql使用docker-compose安装后,发现时区不是东八区,导致一些服务有些出现问题。
查询时区:
SHOW VARIABLES LIKE ‘%time_zone%’;

MySQL 使用的是 UTC 时区,而不是东八区(CST)。在 Docker 容器中运行的 MySQL 实例也会使用 UTC 时区。要解决这个问题,您需要在 MySQL 配置文件中设置时区为东八区。
解决方案:
修改 my.cnf
配置文件,添加以下行以设置时区为东八区(CST):在 [mysqld]
部分添加:
default-time_zone = '+08:00'
mysql库 /opt/mysql-master/conf/my.cnf
示例:
[mysqld]
...
default-time_zone = '+08:00'
重新启动 MySQL 容器以应用更改。
docker-compose -f /opt/mysql-master/docker-compose.yml down docker-compose -f /opt/mysql-master/docker-compose.yml up -d
现在,您的 MySQL 实例应该已经使用东八区(CST)时区了。您可以通过登录到 MySQL 并运行以下命令来验证时区设置:
SHOW VARIABLES LIKE 'time_zone';
输出应显示 time_zone
为 +08:00
。