Mysql DB - 更改服务器时区时需要在数据库中做什么
Mysql DB - what needs to be done in the database when changing server's timezone
我要更改我的服务器时区。我们正在节省本地时间的时间,并决定将我们所有的时间管理更改为 UTC 时间。作为此过程的一部分,我正在扫描我的架构,以查找 dateTime
和 timestamp
类型的列,以便将它们从本地时间转换为 UTC。
我的问题是 - 是否需要对数据库的其他模式(如 information_schema
或 mysql
进行一些更改?
不,您不需要更改内置伪表,但有一个例外:时区表。如果它们未加载,您必须加载它们。尝试 SET time_zone 'Asia/Kolkata';
或类似的东西。如果失败,则不会加载您的时区表。您可以阅读有关加载它们的信息。
请勿尝试更改其他内置表格。充其量更改将被拒绝。最坏的情况是你会破坏你的服务器。
在此更改之前,您服务器的主机操作系统时间是否已经 运行 UTC?如果是这样,您不需要更改 TIMESTAMP
列中的值;这些值已经以 UTC 内部存储,并在进出途中为您转换为本地时区。
我要更改我的服务器时区。我们正在节省本地时间的时间,并决定将我们所有的时间管理更改为 UTC 时间。作为此过程的一部分,我正在扫描我的架构,以查找 dateTime
和 timestamp
类型的列,以便将它们从本地时间转换为 UTC。
我的问题是 - 是否需要对数据库的其他模式(如 information_schema
或 mysql
进行一些更改?
不,您不需要更改内置伪表,但有一个例外:时区表。如果它们未加载,您必须加载它们。尝试 SET time_zone 'Asia/Kolkata';
或类似的东西。如果失败,则不会加载您的时区表。您可以阅读有关加载它们的信息。
请勿尝试更改其他内置表格。充其量更改将被拒绝。最坏的情况是你会破坏你的服务器。
在此更改之前,您服务器的主机操作系统时间是否已经 运行 UTC?如果是这样,您不需要更改 TIMESTAMP
列中的值;这些值已经以 UTC 内部存储,并在进出途中为您转换为本地时区。