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 相关文章推荐
MySQL锁机制
Apr 05 MySQL
MySQL复制问题的三个参数分析
Apr 07 MySQL
仅用一句SQL更新整张表的涨跌幅、涨跌率的解决方案
May 06 MySQL
解读MySQL的客户端和服务端协议
May 10 MySQL
如何用Navicat操作MySQL
May 12 MySQL
浅谈mysql执行过程以及顺序
May 12 MySQL
mysq启动失败问题及场景分析
Jul 15 MySQL
MySQL定时备份数据库(全库备份)的实现
Sep 25 MySQL
MySQL中CURRENT_TIMESTAMP的使用方式
Nov 27 MySQL
Linux7.6二进制安装Mysql8.0.27详细操作步骤
Nov 27 MySQL
为什么MySQL不建议使用SELECT *
Apr 03 MySQL
Mysql InnoDB 的内存逻辑架构
May 06 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
在PHP中使用与Perl兼容的正则表达式
2006/11/26 PHP
php2html php生成静态页函数
2008/12/08 PHP
JS异常处理try..catch语句的作用和实例
2014/05/05 PHP
php5.3不能连接mssql数据库的解决方法
2014/12/27 PHP
php实现的Curl封装类Curl.class.php用法实例分析
2015/09/25 PHP
关于PHP内置的字符串处理函数详解
2017/02/04 PHP
很棒的学习jQuery的12个网站推荐
2011/04/28 Javascript
Extjs 继承Ext.data.Store不起作用原因分析及解决
2013/04/15 Javascript
Js 正则表达式知识汇总
2014/12/02 Javascript
深入分析下javascript中的[]()+!
2015/07/07 Javascript
在IE8上JS实现combobox支持拼音检索功能
2016/05/23 Javascript
关于json字符串与实体之间的严格验证代码
2016/11/10 Javascript
详解Javascript数据类型的转换规则
2016/12/12 Javascript
JS检测是否可以访问公网服务器功能代码
2017/06/19 Javascript
微信小程序实现动态改变view标签宽度和高度的方法【附demo源码下载】
2017/12/05 Javascript
解决npm安装Electron缓慢网络超时导致失败的问题
2018/02/06 Javascript
小程序组件之仿微信通讯录的实现代码
2018/09/12 Javascript
vue-for循环嵌套操作示例
2019/01/28 Javascript
js实现的在本地预览图片功能示例
2019/11/09 Javascript
vscode调试node.js的实现方法
2020/03/22 Javascript
浅析 Vue 3.0 的组装式 API(一)
2020/08/31 Javascript
nodejs+express最简易的连接数据库的方法
2020/12/23 NodeJs
python 2.7.14安装图文教程
2018/04/08 Python
Python sorted函数详解(高级篇)
2018/09/18 Python
Python 3 判断2个字典相同
2019/08/06 Python
Python如何使用Gitlab API实现批量的合并分支
2019/11/27 Python
物流管理专业毕业生求职信
2014/03/23 职场文书
企业党员公开承诺书
2014/03/26 职场文书
夫妻分居协议书范文
2014/11/26 职场文书
2014年行政后勤工作总结
2014/12/06 职场文书
药房管理制度范本
2015/08/06 职场文书
领导干部学习三严三实心得体会
2016/01/05 职场文书
2016年社区文体活动总结
2016/04/06 职场文书
python学习之panda数据分析核心支持库
2021/05/07 Python
Sql Server 行数据的某列值想作为字段列显示的方法
2022/04/20 SQL Server
Pandas 数据编码的十种方法
2022/04/20 Python