mysql 增加字段或修改字段长度、报错 [Err] 1118 - Row size too large

mysql 增加字段或修改字段长度、报错 [Err] 1118 - Row size too large

一般出现该问题的原因是因为超过了mysql允许的最大表单长度65535

最近本人也遇到过该问题上网收了一堆相关的解决办法,最终总结出了正确的解决方案:

解决办法如下:

  1. 很明想导致该问题的原因是表单总长度过大,那么第一种解决方法就是将某些长度为500+的字段类型改为 longtext 可以有效的解决。
  2. 当1方法不好用时,可以执行一条sql语句 et global innodb_strict_mode = 0; 通过关闭严格模式跳过检测
  3. 如果第二种方法不好用的情况下,修改数据库配置文件 vi/etc/my.cnf
  1. 查看系统参数:show variables like ‘%innodb_strict_mode%’;

                 Show variables like ‘%innodb_log_file_size%’;

  1. 修改前:innodb_strict_mode=on

           innodb_log_file_size=4G(注意每个配置文件的值可能不一样)

  1. 修改数据库配置文件的参数:
  2.         innodb_strict_mode=0

           innodb_log_file_size=1024M(该可以任意修改)

修改完后,重启mysql就可以了

你可能感兴趣的:(数据库)