如何解决mysql晚8h
时间: 2023-07-19 10:15:59 浏览: 88
MySQL 数据库中时间显示晚了 8 小时可能是因为时区设置的问题。可以按照以下步骤进行解决:
1. 查看当前 MySQL 数据库系统的时区设置:
```
SELECT @@global.time_zone, @@session.time_zone;
```
如果时区设置为 UTC,则会显示:
```
+--------------------+---------------------+
| @@global.time_zone | @@session.time_zone |
+--------------------+---------------------+
| UTC | UTC |
+--------------------+---------------------+
```
2. 修改 MySQL 数据库系统的时区设置:
- 可以使用以下命令修改 MySQL 数据库的时区设置为东八区(北京时间):
```
SET GLOBAL time_zone = 'Asia/Shanghai';
SET @@session.time_zone = 'Asia/Shanghai';
```
或者,也可以在 MySQL 配置文件 `/etc/my.cnf` 中添加以下配置项:
```
[mysqld]
default-time-zone = 'Asia/Shanghai'
```
添加后需要重启 MySQL 服务使其生效。
- 如果你使用的是 MySQL 8.0 版本或以上,还可以使用以下命令将时区设置为系统时区:
```
SET GLOBAL time_zone = SYSTEM;
SET @@session.time_zone = SYSTEM;
```
这样 MySQL 数据库的时区设置就会与操作系统的时区设置保持一致。
3. 重新启动 MySQL 服务:
```
sudo systemctl restart mysqld
```
执行以上步骤后,MySQL 数据库的时间就会显示正确的时间了。
阅读全文