Mysql8.0 版本 timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',报错
处理方案:
方案一: timestamp类型的字段不能设默认值为“0000-00-00 00:00:00” 要设为`update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新'。
例如:
`update_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新日期',
`create_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '创建日期',
方案二:MySQL在my.cnf加sql_mode 配置
路径:vi /etc/my.cof
配置:sql-mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
注意:MySQL8以后sql_mode以上已经取消了NO_AUTO_CREATE_USER这个关键字。如果加上这个字段你,会导致MySQL无法启动!!!去掉这个关键字,完美启动
无法启动:
Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.