我正在尝试在我的Linux机器上安装MySQL,但无法安装并抛出错误
'此MySql服务器在2038年之后不支持日期'
我可以做些什么来解决这个问题,还是应该等待Oracle解决这个问题?
答案 0 :(得分:0)
讨厌。 这实际上取决于列的用途。
您可以以ISO标准字符串格式存储所有日期/时间 YYYY-mm-ddTHH:MM:SS.ssssssssZ,然后使用64位长的长度将其转换为代码进行比较。
希望9999年就足够了? : - )
将日期戳存储为规范字符串支持比较,索引,但您必须自己进行验证。
答案 1 :(得分:0)
我猜您将mysql服务器安装在存在32位瓶颈的操作系统上。这意味着您的日期时间将存储为32位数据类型,并且在2038年期间,该数据类型将达到32位的限制。它将需要获得更多的比特来存储2038年的日期时间。此问题被称为2038年错误。
答案 2 :(得分:0)
在运行mysql的(虚拟)计算机上,由于某种原因,时钟更改为2222年,从而导致了此问题。
root@ubuntu:~# date
Fri Mar 1 02:01:05 UTC 2222
我通过将日期改回正常状态来修复它:
date +%Y%m%d -s "20201116"