赞
踩
开发时遇到的数据无法入库问题,报错:
(1118, ‘Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help . In current row format, BLOB prefix of 768 bytes is stored inline.’)
主要是由于某条记录超过了mysql默认引擎的最大存储。
mysql默认的Innodb引擎的页结构大小为16kb,可以存储多条记录。
当记录的大小超过页结构对记录大小的限制时,就会报次问题的错误。
首先,页结构对记录大小的限制默认为略小于8k,即最少存两条8kb左右的记录。
可以使用compressed行格式,barracuda格式来处理。
但实际上出现这个问题可能是MySQL的innodb引擎的一个bug。
在修改行格式无效的情况下,除了将引擎改为MylSAM,行格式设置为DYNAMIC格式外,其他的办法都没用(比如使用compressed行格式或者barracuda行格式都没用)
https://bugs.mysql.com/bug.php?id=77398
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。