当前位置:网站首页>MySQL - Row size too large (> 8126). Changing some columns to TEXT or BLOB
MySQL - Row size too large (> 8126). Changing some columns to TEXT or BLOB
2022-08-04 05:36:00 【放羊的牧码】
报错信息
Row size too large (> 8126). Changing some columns to TEXT or BLOB
分析原因
- 因为 mysql 默认的 page 最大是 16k,而 page 中单行最大不能超过 8k
- 因为 text 或者 blob 字段太多也会导致一行数据大于 8k,因为 innodb 默认的 approach(羚羊)存储格式会把每个 blob 字段的前 864 个字节存储在 page 里。这样的话一旦有很多个text 或者 blob字段,还是有可能超过 8k
解决方案
1、可以尝试将 varchar 字段改成 text 或者 blob
2、表结构需要重新设计,减少字段个数
3、修改配置方案1
SET INNODB_STRICT_MODE = 0;4、修改配置方案2
SET GLOBAL innodb_file_format='Barracuda'
SHOW GLOBAL VARIABLES LIKE '%file_format%';
ALTER TABLE 表名 ROW_FORMAT=COMPRESSED
SHOW TABLE STATUS LIKE '表名'边栏推荐
猜你喜欢

指定区域内随机填充圆之matlab实现

狗都能看懂的CenterNet讲解及代码复现

Database: Organize Four Practical SQL Server Scripting Functions

mysql:列类型之float、double

Faster RCNN原理及复现代码

舍不得花钱买1stOpt,不妨试试这款免费的拟合优化神器【openLU】

狗都能看懂的Vision Transformer的讲解和代码实现

ERROR 2003 (HY000) Can‘t connect to MySQL server on ‘localhost3306‘ (10061)解决办法
![[漏洞问题] log4j漏洞 关于2.17.0升级到2.18.0 方案](/img/f2/2052277ae440279b33248ae51a970f.png)
[漏洞问题] log4j漏洞 关于2.17.0升级到2.18.0 方案

花了近70美元入手的学生版MATLAB体验到底如何?
随机推荐
网络技巧:教你给路由器装上电池,断电照样可以上网!
Logical Address & Physical Address
Memory limit should be smaller than already set memoryswap limit, update the memoryswap at the same
Database knowledge: SQLServer creates non-sa user notes
Error occurred while trying to proxy request项目突然起不来了
EfficientNet解读:神经网络的复合缩放方法(基于tf-Kersa复现代码)
什么是多态。
Network skills: teach you to install batteries on the router, you can still surf the Internet when the power is cut off!
用matlab打造的摩斯电码加解码器音频版,支持包括中文在内的任意字符
DOM的12中节点类型,通过关系或方法获取DOM节点,渲染到浏览器页面的一些特效功能,获取DOM节点来改变属性,点击图片,切换为所点击的图片为背景图,页面上的表单验证,点击底部导航栏切换界面
软件稳定性思考
NelSon:一款新的适配matlab编程语法的编程工具
网页中常用的两种绘图技术,用canvas绘图,绘制出一个三角形,矩形,柱状图,扇形图
SQL存储过程详解
VS 2017编译 QT no such slot || 找不到*** 问题
IoU, GIoU, DIoU and CIoU in target detection
matlab封闭曲线拟合 (针对一些列离散点)
秒杀系统设计
Scheduler (Long-term,Short-term, Medium-term Scheduler) & Dispatcher
在线公众号文章内容转音频文件实用小工具