修复mysql错误:Incorrect date value: ‘0000-00-00’ for column ‘xxxx’ at row


此错误是因为Mysql5.7版本及以上版本的datetime值不能为'0000-00-00 00:00:00',

两种处理方法:

第一、修改备份文件的sql语句,修改单独导出使用了datetime字段类型,并且值有0000-00-00 00:00:00'的表,批量修改掉值再导入,数据量大的时候成本过于高昂。

第二、修改/etc/my.cnf

在[mysqld]添加一项:sql_mode=NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,支持特殊的语法,这样就可以导入了,导入完毕后,移除兼容项即可。此方法简单,建议使用此方法。

Archives