今天在对MySQL数据库进行数据处理时,遇到一个错误:

Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help.

我处理的这张表有400列,有大量的VARCHAR和TEXT列,以前遇到过该表中VARCHAR总长度超过65532的错误,第一眼看到,误以为是VARCHAR超长的问题。

【尝试一】于是我把一些较大的VARCHAR列换成了TEXT类型,但是问题依然存在。

【尝试二】根据错误信息的提示,我又在创建表时添加了ROW_FORMAT=DYNAMIC设置,但是问题依然存在。

【尝试三】后来我怀疑数据库引擎的问题,因为我们常用的是MyISAM引擎,但是我新装mysql后,默认是InnoDb,而我也一直没有修改。于是我移除了创建表时的ROW_FORMAT设置,增加了Engine=MyISAM。问题解决了。

【原理浅析】根据网上的一些资料,这个问题可能与不同引擎之间使用的存储格式有关。MyISAM有3种行存储格式:fixed/dynamic/compressed。InnoDb在MyIASM基础上新引入了Barracuda。至于不同引擎的默认设置,以及各种存储格式之间的区别,我也没有深入研究,有兴趣的话可以去了解一下。

Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC相关推荐

  1. 解决办法之Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC

    报错:Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC ...

  2. Mysql数据库报错:Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DY

    1.问题描述: Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DY ...

  3. 1118 - Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMI

    ERROR 1118 (42000) at line 5: Row size too large (> 8126). Changing some columns to TEXT or BLOB ...

  4. 亲身实践已解决:Mysql Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT

    今天在把一个数据库的数据导出sql在另外一个库中执行的时候出现了这个问题, 查看当前的表类型为innodb 找到mysql的安装目录,找到配置文件my.ini 进行如下修改: innodb_file_ ...

  5. ERROR 1118 (42000): Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ...

    在创建数据库表时报错 之前已经在数据库里创建了多张表,但在创建其中一张数据库表时报如下错: ERROR 1118 (42000): Row size too large (> 8126). Ch ...

  6. MySQL导入数据库1118错误解决方案[ERR] 1118 - Row size too large (> 8126). Changing some columns to TEXT or BLOB

    导入SQL文件时报错(在执行创建表或者增加字段时,发现row size长度过长,会导致出现以下错误) [ERR] 1118 - Row size too large (> 8126). Chan ...

  7. Row size too large (> 8126). Changing some columns to TEXT or BLOB… | Mysql / MariaDB

    Row size too large (> 8126). Changing some columns to TEXT or BLOB- | Mysql / MariaDB 我们最近将客户网站迁移 ...

  8. Mysql导入数据库报 [ERR] 1118 - Row size too large (> 8126). Changing some columns to TEXT or BLOB

    今天将服务器上的数据库导出,在本机恢复的时候报错,错误代码如下: [ERR] 1118 - Row size too large (> 8126). Changing some columns ...

  9. 【MySQL异常】Row size too large (> 1982). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNA

    本文目录 一.背景描述 二.报错内容 三.解决方案 四.拓展 一.背景描述 MySQL版本:5.6.28, MySQL引擎 InnoDB.本地环境.开发环境.生产环境数据库版本一模一样. 昨天晚上更新 ...

最新文章

  1. win10系统优化计算机,全面优化win10电脑系统详细教程 | 专业网吧维护
  2. 带您走进松本行弘的程序世界
  3. 新网站如何推广 新建设的网站如何宣传
  4. Oracle shared server模式连接ORA-12519
  5. linux mariadb忘记密码,忘记MySQL/MariaDB root密码的解决方法
  6. c语言编译如何去掉warning,16种C语言编译警告(Warning)类型的解决方法
  7. Linux du 命令
  8. Matlab的dq变换模块到底选哪一种变换方式?90 degree behind phase A axis和 Aligned with phase A axis有什么区别?
  9. 光滑曲线_使用Python实现贝塞尔曲线连接多点形成光滑曲线
  10. sql数据库教程百度云_【推荐】零基础水彩画入门教程|零基础水彩教程百度云...
  11. 机器学习之XGBoost篇
  12. [经典面试题]排列组合专题
  13. 计算机磁盘图标变成软件的了,电脑的本地磁盘图标变成一个U盘形状图标了怎么回事?如何解决?...
  14. 索尼电视投屏声音与画面不同步现象解决方案
  15. Key exchange was not finished,connection is closed近期遇到这个错误sshd更新导致的
  16. 2019最全前端面试问题及答案总结
  17. 计算机word.实训报告体会,计算机实训报告【五篇】.docx
  18. 我为什么反对提“全栈工程师”?
  19. 软件测试笔记——如何测试登陆界面
  20. ExecutorService的submit()方法

热门文章

  1. netty案例,netty4.1源码分析篇五《一行简单的writeAndFlush都做了哪些事》
  2. 造成计算机系统不安全的因素,造成计算机系统不安全的因素包括()。
  3. html5百度地图选中标注点,js 调用百度地图api并在地图上进行打点添加标注
  4. 致自己,时时需要修炼内功
  5. ==||FM数日...进行中
  6. WPF 一个性能比较好的 gif 解析库
  7. 企业培训视频如何防止被下载和盗用?
  8. Chains (链 )
  9. SQL闭合方式的判断及作用
  10. 虚拟机无法启用 虚拟化引擎 Inter VT-x/EPT,mumu模拟器报错Hyper-v 开启,无法启动模拟器