2038 年问题

MySQL |10个月前 |0

后端 MySQL


最近在看《高性能MySQL》这本书,里面提到尽量使用 timestamp 存储时间,但由于 MySQLtimestamp 实际上就是存储的整数,而且只使用了4字节的存储空间,也是就是跟 int 一样,所以 timestamp 的存储范围 是 -2^31 至 2^31-1,最后时间是2038年1月19日03:14:07(UTC).

问题演示

2038年问题演示:第一行是“time_t”数字的二进制表示;第二行是其十进制表示;第三行是受影响的计算机理解的时间;第四行是实际的时间

类似的还有32位类 Unix 系统的 time_t 也存在同样的问题,但是大部分 64 位系统已经把 time_t 升级为 64 位,19年后的事还是不要想了,就简单记录下吧!

MeiWJ
A PHP Web Artisan

完善源自用心 細節決定成敗