MySQL无法安装2038年问题

时间:2016-09-07 15:21:32

标签: mysql

我正在尝试在我的Linux机器上安装MySQL,但无法安装并抛出错误

  

'此MySql服务器在2038年之后不支持日期'

我可以做些什么来解决这个问题,还是应该等待Oracle解决这个问题?

3 个答案:

答案 0 :(得分:0)

讨厌。 这实际上取决于列的用途。

您可以以ISO标准字符串格式存储所有日期/时间 YYYY-mm-ddTHH:MM:SS.ssssssssZ,然后使用64位长的长度将其转换为代码进行比较。

希望9999年就足够了? : - )

将日期戳存储为规范字符串支持比较,索引,但您必须自己进行验证。

答案 1 :(得分:0)

我猜您将mysql服务器安装在存在32位瓶颈的操作系统上。这意味着您的日期时间将存储为32位数据类型,并且在2038年期间,该数据类型将达到32位的限制。它将需要获得更多的比特来存储2038年的日期时间。此问题被称为2038年错误。

https://en.wikipedia.org/wiki/Year_2038_problem

答案 2 :(得分:0)

在运行mysql的(虚拟)计算机上,由于某种原因,时钟更改为2222年,从而导致了此问题。

root@ubuntu:~# date
Fri Mar  1 02:01:05 UTC 2222

我通过将日期改回正常状态来修复它:

date +%Y%m%d -s "20201116"