>我已将我的Cent OS时区更改为亚洲/加尔各答,但安装的MySQL是指系统拥有的旧时区。我是否需要重新启动MySQL -(它的差异让我暂时关闭MySQL)以查看效果,或者我需要进行不同的conf更改才能看到与系统相同的MySQL时区。
谢谢
是的,可以在运行时更改 MySQL 实例的time_zone。
我们没有必要重复MySQL参考手册中关于这个主题的所有内容。 https://dev.mysql.com/doc/refman/5.6/en/time-zone-support.html(请确保您参考您正在运行的特定版本的MySQL。
底线...无需重新启动即可完成对 MySQL time_zone设置的更改。
如果time_zone='SYSTEM',那么要在不重新启动MySQL服务器的情况下更改MySQL服务器时区,则需要修改time_zone变量。例如,将time_zone更改为 UTC
SET GLOBAL time_zone = '+00:00'
我尚未测试更改 Linux 操作系统时区设置时的行为。我们所有的MySQL服务器都以UTC格式运行,与操作系统时区设置无关。(我们的 MySQL 实例time_zone与操作系统时区分离。
如果不知道与时区相关的各种MySQL系统变量的当前设置,或者您是否在mysql数据库中填充了时区支持表,我无法提供具体建议。
请注意,当前与数据库的连接不会受到全局变量值更改的影响。会话的time_zone设置是在会话启动时建立的。(这对你有何影响取决于你的应用是使用连接池、重用已建立的连接,还是你的应用正在搅动连接。
我建议您从参考文档开始。
我强烈建议您在对无法重新启动的系统进行更改之前,先在测试环境中测试建议的更改。