Linux系统时区更改后Linux上的Mysql时区更改

标签 mysql linux datetime timezone

我已将我的 Cent OS 时区更改为 Asia/Calcutta ,但安装的 MySQL 指的是系统拥有的旧时区。我是否需要重新启动 MySQL -(我暂时关闭 MySQL 的差异)以查看效果,或者我需要执行不同的 conf 更改才能看到与系统相同的 MySQL 时区。

谢谢

最佳答案

是的,可以在运行时更改 MySQL 实例的时区。

我们没有必要重复 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 实例时区与操作系统时区分离。)

在不知道MySQL各个时区相关的系统变量的当前设置,或者你是否在mysql数据库中填充了时区支持表的情况下,我无法提供具体的建议。

请注意,当前与数据库的连接不会受到更改全局变量值的影响。 session 的时区设置在 session 启动时建立。 (这对您有何影响取决于您的应用是否正在使用连接池、重新使用已建立的连接,或者您的应用是否正在搅动连接。

我建议您先引用文档。

并且我强烈建议您在对无法重新启动的系统进行更改之前,在测试环境中测试您提议的更改。

关于Linux系统时区更改后Linux上的Mysql时区更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36813469/

相关文章:

php - Laravel - 通过其他访问关系

c++ - 静态链接整个程序

linux - 在 Julia (Linux) 中获取当前用户名

java - 将 LocalDate 转换为 DD/MM/YYYY LocalDate

java - 将 jcalendar 日期转换为 XMLGregorianCalendar 获取 Null 值

java - Hibernate 抛出无法删除或更新父行 : a foreign key constraint fails

mysql - 使用 Mysql 和 Apache 的 Subversion 访问控制(mod-dav-svn、mod-auth-sql、apache、mysql)

mysql - 消息: Illegal string offset (decode JSON with codeigniter and mysql)

linux - 如何将内容回显到 Linux 中子文件夹中的每个文件?

javascript - Moment.js/时刻时区 : Format date with 'GMT-06:00' type date