mysql升级到5.7时,wordpress导数据报错1067的问题


Posted in MySQL onMay 27, 2021

最近把mysql升级到5.7了,wordpress导数据报错

Invalid default value for 'comment_date'

原因出在类似这样的语句

DROP TABLE IF EXISTS `wp_comments`;
CREATE TABLE `wp_comments`  (
  `comment_ID` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT,
  `comment_post_ID` bigint(20) UNSIGNED NOT NULL DEFAULT 0,
  `comment_author` tinytext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci NOT NULL,
  `comment_author_email` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci NOT NULL DEFAULT '',
  `comment_author_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci NOT NULL DEFAULT '',
  `comment_author_IP` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci NOT NULL DEFAULT '',
  `comment_date` datetime(0) NOT NULL DEFAULT '0000-00-00 00:00:00',
  `comment_date_gmt` datetime(0) NOT NULL DEFAULT '0000-00-00 00:00:00',
  `comment_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci NOT NULL,
  `comment_karma` int(11) NOT NULL DEFAULT 0,
  `comment_approved` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci NOT NULL DEFAULT '1',
  `comment_agent` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci NOT NULL DEFAULT '',
  `comment_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci NOT NULL DEFAULT '',
  `comment_parent` bigint(20) UNSIGNED NOT NULL DEFAULT 0,
  `user_id` bigint(20) UNSIGNED NOT NULL DEFAULT 0,
  PRIMARY KEY (`comment_ID`) USING BTREE,
  INDEX `comment_post_ID`(`comment_post_ID`) USING BTREE,
  INDEX `comment_approved_date_gmt`(`comment_approved`, `comment_date_gmt`) USING BTREE,
  INDEX `comment_date_gmt`(`comment_date_gmt`) USING BTREE,
  INDEX `comment_parent`(`comment_parent`) USING BTREE,
  INDEX `comment_author_email`(`comment_author_email`(10)) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 35 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_520_ci ROW_FORMAT = Dynamic;

这种报错多是你mysql升级到5.7而引起的默认值不兼容的问题。看看你的字段名是什么,我的是时间字段,类型是datetime。想到可能是类型的默认值被限制了,查看sql_mode。果然:NO_ZERO_IN_DATE,NO_ZERO_DATE这两个参数限制时间不能为0

查看sql_mode

mysql> show variables like 'sql_mode';
+---------------+-------------------------------------------------------------------------------------------------------------------------------------------+
| Variable_name | Value |
+---------------+-------------------------------------------------------------------------------------------------------------------------------------------+
| sql_mode | ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
+---------------+-------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql>

临时修改:

mysql> set session
 -> sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql>

永久修改:

可以直接修改my.cnf文件

例如: vim /etc/my.cnf

Windows环境下修改mysql.ini配置文件就解决了~

在[mysqld]下面添加如下列:

sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

ok问题解决,现在你导入或者创建表时看看!

以上就是解决mysql升级到5.7时wordpress导数据报错1067问题的详细内容,更多关于mysql导入数据库报错1067 的资料请关注三水点靠木其它相关文章!

MySQL 相关文章推荐
如何使用Maxwell实时同步mysql数据
Apr 08 MySQL
MySQL8.0.24版本Release Note的一些改进点
Apr 22 MySQL
解决MySQL存储时间出现不一致的问题
Apr 28 MySQL
MySQL sql_mode的使用详解
May 08 MySQL
MySQL中datetime时间字段的四舍五入操作
Oct 05 MySQL
SQL语法CONSTRAINT约束操作详情
Jan 18 MySQL
一文弄懂MySQL中redo log与binlog的区别
Feb 15 MySQL
mysql insert 存在即不插入语法说明
Mar 25 MySQL
MySQL Server 层四个日志
Mar 31 MySQL
MySQL如何修改字段类型和字段长度
Jun 10 MySQL
MySQL数据库实验之 触发器和存储过程
Jun 21 MySQL
浅谈MySql update会锁定哪些范围的数据
Jun 25 MySQL
解决Navicat for Mysql连接报错1251的问题(连接失败)
Navicat for MySQL的使用教程详解
MySQL Router实现MySQL的读写分离的方法
MySQL通过binlog恢复数据
May 27 #MySQL
MySQL 数据类型选择原则
May 27 #MySQL
详解MySQL中的主键与事务
May 27 #MySQL
MySQL中使用or、in与union all在查询命令下的效率对比
You might like
JAVA/JSP学习系列之六
2006/10/09 PHP
php遍历数组的4种方法总结
2014/07/05 PHP
利用Homestead快速运行一个Laravel项目的方法详解
2017/11/14 PHP
PHP调用微博接口实现微博登录的方法示例
2018/09/22 PHP
JS Timing
2007/04/21 Javascript
JavaScript加密解密7种方法总结分析
2007/10/07 Javascript
JS去除字符串的空格增强版(可以去除中间的空格)
2009/08/26 Javascript
Javascript string 扩展库代码
2010/04/09 Javascript
ajax处理php返回json数据的实例代码
2013/01/24 Javascript
JS JSON对象转为字符串的简单实现方法
2013/11/18 Javascript
jquery实现上下左右滑动的方法
2015/02/09 Javascript
javascript实现模拟时钟的方法
2015/05/13 Javascript
jQuery实现多级下拉菜单jDropMenu的方法
2015/08/28 Javascript
jQuery入门之层次选择器实例简析
2015/12/11 Javascript
移动端使用localStorage缓存Js和css文的方法(web开发)
2016/09/20 Javascript
模板视图和AngularJS之间冲突的解决方法
2016/11/22 Javascript
JS仿Base.js实现的继承示例
2017/04/07 Javascript
完美解决手机网页中输入框被输入法遮挡的问题
2017/12/19 Javascript
vue.js在标签属性中插入变量参数的方法
2018/03/06 Javascript
Vue下拉框回显并默认选中随机问题
2018/09/06 Javascript
微信小程序 setData 对 data数据影响问题
2019/04/18 Javascript
小程序实现新用户判断并跳转激活的方法
2019/05/20 Javascript
iview form清除校验状态的实现
2019/09/19 Javascript
vue keep-alive列表页缓存 详情页返回上一页不刷新,定位到之前位置
2019/11/26 Javascript
解决Vue watch里调用方法的坑
2020/11/07 Javascript
详解 Python 与文件对象共事的实例
2017/09/11 Python
python实现简单中文词频统计示例
2017/11/08 Python
python3使用SMTP发送HTML格式邮件
2018/06/19 Python
numpy基础教程之np.linalg
2019/02/12 Python
工商管理专业职业生涯规划
2014/01/01 职场文书
小学教师培训方案
2014/06/09 职场文书
禁毒宣传活动总结
2014/08/26 职场文书
2014年个人业务工作总结
2014/11/17 职场文书
手机销售员岗位职责
2015/04/11 职场文书
MySQL学习总结-基础架构概述
2021/04/05 MySQL
深入浅析Django MTV模式
2021/09/04 Python