mysql> show variables like '%time_zone%'; #查询当前时区+------------------+--------+
| Variable_name | Value |
+------------------+--------+
| system_time_zone | CST |
| time_zone | SYSTEM |
+------------------+--------+
2 rows in set (0.02sec)
#time_zone 说明mysql使用system的时区,system_time_zone说明system使用CST时区
mysql> selectnow(); #当前时间+---------------------+
| now() |
+---------------------+
| 2020-04-27 18:43:44 |
+---------------------+
1 row in set (0.02 sec)
修改时区
1、临时修改
mysql>set global time_zone= '+8:00'; #设置全局时区
flush privileges; #立即生效
2、永久修改
Linux
gedit /etc/mysql/my.conf #打开my.cnf(本人是在控制台中使用命令直接安装的mysql,因此my.cnf的位置可能会不同,因此需要根据实际情况查找出my.cnf)
打开文件后在文件的末尾添加
[mysqld]
#default-time_zone
default-time_zone = '+8:00'
如果my.cnf中有[mysqld]的话只需要在[mysqld]下直接添加
#default-time_zone
default-time_zone = '+8:00'
修改完毕后,输入service mysql restart,重启mysql
Windows
1、临时修改
与上面临时修改一样
2、永久修改
在mysql安装目录下找MySql Server 文件夹,打开该文件夹下的my.ini,如果没有的话在mysql安装目录下使用搜索直接搜my.ini
打开my.ini在[mysqld]末尾直接添加
#default-time_zonedefault-time_zone = '+8:00'
重启mysql