我想将 time_zone 设置为与我的系统时区不同的其他时区,例如 (GMT - 7:00)。我试过
SET time_zone = '-07:00';
但是,这只会改变 MYSQL 会话,并且不是永久性的,因为在我重新启动 mysql 服务后,time_zone 会返回到系统 time_zone。
答案1
我认为您可以检索服务器和客户端的时区设置:
SELECT @@global.time_zone, @@session.time_zone;
您还可以更改客户端时区或整个 MySQL 实例的时区。
如果在 MySQL 实例启动时设置了服务器时区,则可以修改 /etc/my.cnf 文件(或读取 mysql 实例初始化参数的任何位置),在 [mysqld] 部分下:
[mysqld]
default-time-zone='+00:00'
- 或者 -
add the --default_time_zone='+00:00' option to mysqld_safe
每个客户端会话都可以更改其自己会话的时区设置:
mysql> SET GLOBAL time_zone = 'Asia/Tokyo';
(或者任何 GMT+1 时区:http://www.php.net/manual/en/timezones.php)
这是为单个客户端设置 MySQL 时区的命令,假设您的客户端分布在多个时区。