Mysql 出现Error 1118的一种解决方法
来源:互联网 发布:matlab智能算法 编辑:程序博客网 时间:2024/06/07 04:01
Mysql 出现Error 1118的一种解决方法
版权声明:本文为博主原创文章,未经博主允许不得转载。
首先声明,对MySQL不懂,很多都不知道原因
设计了一个表,里面很多text字段,然后填进去的东西太多(用的是Python的MySQLdb),报错:
_mysql_exceptions.OperationalError: (1118, 'Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs')
内容是填进去的数据太长了,需要将部分列类型改为text或者blob,相应的mysql的长度限制参考https://dev.mysql.com/doc/refman/5.1/en/column-count-limit.html
显然,我已经有了一大堆的text,算来算去都不会超过长度的。搜了下最终的解决方法http://www.cnblogs.com/gaizai/archive/2012/09/20/2695663.html
以下仅作一些记录
1.windows下mysql的配置文件在对应的X:\ProgramData\MySQL文件夹下面,找了半天都没找到
2.在配置文件中添加以下内容
[mysqld]
max_allowed_packet=16M
innodb_file_per_table=1
3.然后修改全局变量SET GLOBAL innodb_file_format='Barracuda';
4.创建表格时添加上压缩方式ROW_FORMAT=COMPRESSED,例如CRATE TABLE test(id int)ROW_FORMAT=COMPRESSED;
具体原因不懂,可能是没有对表格使用压缩的方式存储,导致长度过长
- Mysql 出现Error 1118的一种解决方法
- Mysql 出现Error 1118的一种解决方法
- Mysql 出现Error 1118的一种解决方法
- Mysql 出现Error 1118的一种解决方法
- Mysql出现 “ERROR 1062” 的解决方法
- mysql出现ERROR 1819 (HY000)的解决方法
- Ubuntu下出现Mysql error(2002)的解决方法
- MySQL安装时出现apply security setting error的解决方法
- MySQL配置出现error nr. 1130问题的解决方法
- Ubuntu下出现Mysql error(2002)的解决方法
- Ubuntu下出现Mysql error(2002)的解决方法
- 连接到MySql出现ERROR 1045 (28000)的解决方法
- SVN出现错误“error running context: an error occurred during ssl communication”的一种可能的解决方法
- Mysql创建存储过程时,出现ERROR 1064 (42000):的原因的一种
- ajax出现乱码的一种解决方法
- java使用axis调用webservice时出现Connection reset by peer: socket write error的一种解决方法
- mysql Error 1153的解决方法
- mysql error 1045 的解决方法
- eclipse中FreeMarker插件的在线安装
- 实现多线程4种方法
- 【CodeM初赛A 6】二分图染色 题解
- ajax同步异步的区别
- 通过内部接口监控服务
- Mysql 出现Error 1118的一种解决方法
- 数据模型
- 推荐系统中冷启动问题
- Linux下安装redis-2.8.3
- MYSQL BLOB 字段大小以及个数的限制测试。
- linux c 进程学习
- C语言基础之编码规范---排版
- 对于Git中用命令删除分支时的注意事项
- JavaEE复习笔记(7)——Struts:异常处理