我有两个MySQL安装。 一个在我的本地Linux笔记本电脑上,另一个在我们的开发Linux服务器上。 两个安装都是相同的版本(mysql Ver 14.14 Distrib 5.6.23)。 当我在本地安装上为表运行create语句时,它成功完成。 当我尝试在服务器上运行相同的创建时,它失败并出现以下错误:
Error Code: 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.
显然这两个安装有不同的my.cnf配置和硬件规格来支持它们。 是否有任何my.cnf特定设置会影响行大小限制或如何计算? 我尝试更改“innodb-log-file-size”设置,但它对错误没有任何影响。 如果可能的话,我宁愿不把我的桌子分成多个桌子。
I have two installs of MySQL. One is on my local Linux laptop and the other is on our Development Linux server. Both installs are the same version (mysql Ver 14.14 Distrib 5.6.23). When I run a create statement for a table on my local install it completes successfully. When I try to run that same create on the server it fails with the following error:
Error Code: 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.
Obviously the two installs have different my.cnf configurations and hardware specs to back them. Are there any my.cnf specific settings that affect the row size limit or how it is calculated? I tried altering the "innodb-log-file-size" setting but it didn't have any affect on the error. I would rather not chunk my table into multiple tables if at all possible.
最满意答案
这个问题在服务器之间不同的最常见原因是字符集或innodb_log_file_size。
请参阅此前的答案: “Mysql行大小太大”的更改限制
The most common cause of this issue being different between servers is character set or innodb_log_file_size.
See previous answers here: Change limit for "Mysql Row size too large"
更多推荐
发布评论