当前位置:首页 > 开发 > 数据库 > 正文

Row size too large (> 8126). Changing some columns to TEXT or BLOB

发表于: 2015-05-30   作者:aigo   来源:转载   浏览:
摘要: 原文:http://stackoverflow.com/questions/15585602/change-limit-for-mysql-row-size-too-large   异常信息: Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAM

原文:http://stackoverflow.com/questions/15585602/change-limit-for-mysql-row-size-too-large

 

异常信息:

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.

 

解决方法:

The method that worked for the OP there was:

1,Add the following to the my.cnf file under [mysqld] section.

innodb_file_per_table
innodb_file_format = Barracuda

 

 

 

2,ALTER the table to use ROW_FORMAT=COMPRESSED.

ALTER TABLE nombre_tabla
    ENGINE=InnoDB
    ROW_FORMAT=COMPRESSED 
    KEY_BLOCK_SIZE=8;

 

 

如果以上方法还不行,扩大my.ini的配置项innodb_log_file_size。之前设置的是512M,本以为足够大了,按照上述方法修改无效,然后将innodb_log_file_size扩大到1024M,就正常了。

 

Row size too large (> 8126). Changing some columns to TEXT or BLOB

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号