[ERR] 1118 - Row size too large (> 8126). Changing some columns to TEXT or BLOB or using
相关手册:MySQL官方手册
因为开启了严格模式才会报错,具体内容看MySQL官方手册。
当innodb_strict_mode启用时,InnoDB将返回错误,而不是警告了一定的条件。
严格模式有助于防止SQL中的拼写错误和语法错误,或操作模式和SQL语句的各种组合带来的其他意外后果。当 innodb_strict_mode启用时,InnoDB提出了在某些情况下错误条件,而不是发出警告和处理指定的声明(也许无意的行为)。这类似于 sql_modeMySQL,后者控制MySQL接受的SQL语法,并确定它是否静默忽略错误,或验证输入语法和数据值。
【解决方法】
修改数据库配置文件/etc/my.cnf
sql_mode=*
或sql-mode=*
改成sql_mode=
或sql-mode=
innodb_strict_mode = 1
改成innodb_strict_mode = 0
如果没有找到文本。
[mysqld]
下方添加sql_mode=
或sql-mode=
[mysqld]
下方添加innodb_strict_mode = 0
修改后重启数据库即可。
[ERR] 2006 - MySQL server has gone away
可能是数据过大导致错误,可以增加max_allowed_packet
试试。
【解决方法】
修改数据库配置文件/etc/my.cnf
max_allowed_packet=*
改成max_allowed_packet=128M
如果没有找到文本。
[mysqld]
下方添加max_allowed_packet=128M
修改后重启数据库即可。
评论