格林威治标准时间 2038 年 1 月 19 日 03:14:07 现在距离我们不到 20 年。这是 UNIX 的 32 位时间戳翻转的时间。我正在设计一些当时可能仍在使用的 MySQL 表。
这就是所谓的2038 年问题。
看来,从我在 MariaDB 10.3 上尝试过的东西来看,使用TIMESTAMP
数据类型会在日期翻转后为日期戳产生错误 1292(不正确的日期时间值)。
将这些表设计为面向未来的良好做法是什么?我可以使用DATETIME
数据,但TIMESTAMP
在时区方面有一些非常有用的功能。
未来的 MySQL 版本(更不用说 Linux 和其他 UNIX 衍生产品)是否有可能升级?