今天在创建表的时候报错:“ Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.”

建表语句:

CREATE TABLE IF NOT EXISTS `test` (`_markid` VARCHAR(64),`__task_id` VARCHAR(32),`id` VARCHAR(40) COMMENT '自增id',`name` VARCHAR(20) COMMENT '学生名字',`english_name` VARCHAR(30) COMMENT '英文名',`birthday` VARCHAR(40) COMMENT '出生日期',`age` VARCHAR(40) COMMENT '学生年龄',`gender` VARCHAR(10) COMMENT '性别',`id_card` VARCHAR(20) COMMENT '身份证号码',`phone` VARCHAR(20) COMMENT '电话号码',`phonenumber_prefix` VARCHAR(5) COMMENT '手机号段',`email` VARCHAR(64) COMMENT '家庭网络邮箱',`year` VARCHAR(40) COMMENT '入学年份',`month` VARCHAR(20) COMMENT '随机月份',`century` VARCHAR(20) COMMENT '世纪',`school` VARCHAR(40) COMMENT '学校名称',`address` text COMMENT '家庭地址',`ip` VARCHAR(32) COMMENT 'IP地址',`credit_card` text COMMENT '完整信用卡信息',`score` VARCHAR(40) COMMENT '成绩',`height` VARCHAR(40) COMMENT '身高',`weight` VARCHAR(40) COMMENT '体重',`marital_status` VARCHAR(10) COMMENT '婚姻状况',`career` VARCHAR(20) COMMENT '职业',`work_unit` VARCHAR(50) COMMENT '工作单位',`job_nature` VARCHAR(20) COMMENT '工作性质',`trade` VARCHAR(20) COMMENT '行业',`first_degree` VARCHAR(25) COMMENT '学历',`salary` VARCHAR(25) COMMENT '薪资',`graduation_year` VARCHAR(40) COMMENT '毕业年份',`work_year` VARCHAR(40) COMMENT '工作年份',`work_experience` VARCHAR(40) COMMENT '工作年限',`hobby` VARCHAR(20) COMMENT '兴趣爱好',`credit_card_number` VARCHAR(20) COMMENT '信用卡号',`credit_card_provider` text COMMENT '信用卡类型',`credit_card_security_code` VARCHAR(10) COMMENT '信用卡安全码',`currency_code` VARCHAR(20) COMMENT '货币编码',`credit_card_expire` VARCHAR(20) COMMENT '信用卡到期日',`common_web_site` VARCHAR(20) COMMENT '常用网站',`time_online` VARCHAR(40) COMMENT '上线时间',`time_downline` VARCHAR(40) COMMENT '下线时间',`view_time` VARCHAR(40) COMMENT '浏览时长',`subject` VARCHAR(20) COMMENT '学科',`subject_code` VARCHAR(40) COMMENT '学科代码',`student_code` VARCHAR(40) COMMENT '学号',`chinese_grade` VARCHAR(40) COMMENT '语文成绩',`english_grade` VARCHAR(40) COMMENT '英语成绩',`math_grade` VARCHAR(40) COMMENT '数学成绩',`physics_grade` VARCHAR(40) COMMENT '物理成绩',`chemical_grade` VARCHAR(40) COMMENT '化学成绩',`biology_grade` VARCHAR(40) COMMENT '生物成绩',`historical_grade` VARCHAR(40) COMMENT '历史成绩',`politics_grade` VARCHAR(40) COMMENT '政治成绩',`geology_grade` VARCHAR(40) COMMENT '地理成绩',`physical_grade` VARCHAR(40) COMMENT '体育成绩',`arts_grade` VARCHAR(40) COMMENT '美术成绩',`music_grade` VARCHAR(40) COMMENT '音乐成绩',`color_name` VARCHAR(30) COMMENT '喜欢颜色',`library_record_id` VARCHAR(40) COMMENT '借书记录',`book_barcode` VARCHAR(40) COMMENT '图书条形码',`book_name` text COMMENT '书名',`call_number` text COMMENT '索书号',`library_cand_number` VARCHAR(40) COMMENT '借书证号',`department` VARCHAR(30) COMMENT '部门',`borrow_date` VARCHAR(40) COMMENT '借出日期',`should_return_date` VARCHAR(40) COMMENT '应还日期',`return_date` VARCHAR(40) COMMENT '归还日期',`living_area` VARCHAR(20) COMMENT '居住区域',`plot` VARCHAR(30) COMMENT '小区',`house_type` VARCHAR(30) COMMENT '户型',`towards` VARCHAR(20) COMMENT '朝向',`floor` VARCHAR(40) COMMENT '楼层',`decoration` VARCHAR(20) COMMENT '装修情况',`elevator` VARCHAR(20) COMMENT '有无电梯',`floor_space` VARCHAR(40) COMMENT '面积',`price` VARCHAR(40) COMMENT '价格',`discount` VARCHAR(40) COMMENT '折扣',`house_year` VARCHAR(40) COMMENT '房屋年份',`password` VARCHAR(40) COMMENT '个人密码',`uuid4` text COMMENT '个人随机码',`ipv4` text COMMENT 'IPV4',`ipv6` text COMMENT 'IPV6',`mac_address` text COMMENT 'MAC地址',`isbn10` VARCHAR(20) COMMENT '随机ISBN(10位)',`isbn13` VARCHAR(20) COMMENT '随机ISBN(13位)',`country` VARCHAR(30) COMMENT '国家名',`country_code` VARCHAR(10) COMMENT '国家代码',`province` VARCHAR(40) COMMENT '省份',`city` VARCHAR(40) COMMENT '城市名',`city_suffix` VARCHAR(20) COMMENT '城市的后缀',`district` VARCHAR(30) COMMENT '区',`postcode` VARCHAR(10) COMMENT '邮编',`street_address` text COMMENT '街道地址',`street_name` VARCHAR(40) COMMENT '街道名',`education` VARCHAR(40) COMMENT '学历',`major` VARCHAR(40) COMMENT '专业',`whether_recruitment` VARCHAR(40) COMMENT '是否统招',`test_num` VARCHAR(40) COMMENT '数据条数',`test_auth` VARCHAR(40) COMMENT '账号密码',`test_meta` text COMMENT '元数据文件',`sale_year` VARCHAR(40) COMMENT '销售年份',`sale_month` VARCHAR(40) COMMENT '销售月份',`sale_quarter` VARCHAR(40) COMMENT '销售季度',`sale_province` VARCHAR(30) COMMENT '销售省份',`sale_city` VARCHAR(30) COMMENT '销售城市',`sale_city_level` VARCHAR(20) COMMENT '销售城市级别',`restriction` VARCHAR(20) COMMENT '是否限购',`sale_region` VARCHAR(20) COMMENT '销售区域',`vehicle_models` VARCHAR(20) COMMENT '车辆型号',`production_place` VARCHAR(30) COMMENT '车辆产地',`enterprise_group` VARCHAR(20) COMMENT '企业集团',`enterprise_name` VARCHAR(50) COMMENT '企业名称',`manufacture_factory` VARCHAR(20) COMMENT '生产厂',`car_brand` VARCHAR(30) COMMENT '汽车品牌',`car_models` VARCHAR(20) COMMENT '车型',`car_types` VARCHAR(20) COMMENT '车辆类型',`car_level` VARCHAR(20) COMMENT '车辆级别',`car_dept` VARCHAR(20) COMMENT '车辆系别',`car_brand_attributes` VARCHAR(20) COMMENT '品牌属性',`car_body_type` VARCHAR(20) COMMENT '车身类型',`transmission_type` VARCHAR(20) COMMENT '变速器类型',`car_shift` VARCHAR(40) COMMENT '档位',`vehicle_displacement` VARCHAR(20) COMMENT '排量',`vehicle_displacement_cc` VARCHAR(40) COMMENT '排量cc',`intake_type` VARCHAR(10) COMMENT '进气方式',`seating_capacity` VARCHAR(40) COMMENT '乘员数',`fuel_types` VARCHAR(20) COMMENT '燃料种类',`energy_category` VARCHAR(20) COMMENT '能源类别',`guide_price_min` VARCHAR(40) COMMENT '指导价Min',`guide_price_max` VARCHAR(40) COMMENT '指导价Max',`bearing_form` VARCHAR(20) COMMENT '承载形式',`torque` VARCHAR(40) COMMENT '扭矩',`wheel_base` VARCHAR(40) COMMENT '轴距',`transmitter_model` VARCHAR(20) COMMENT '发动机型号',`emission_standard` VARCHAR(20) COMMENT '排放标准',`engine_made` VARCHAR(20) COMMENT '发动机产地',`engine_manufacturer` VARCHAR(20) COMMENT '发动机制造商',`engine_power` VARCHAR(40) COMMENT '功率',`curb_weight` VARCHAR(40) COMMENT '整备质量',`cross_weight` VARCHAR(40) COMMENT '汽车总质量',`car_length` VARCHAR(40) COMMENT '长',`car_width` VARCHAR(40) COMMENT '宽',`car_height` VARCHAR(40) COMMENT '高',`driver_type` VARCHAR(20) COMMENT '驱动型式',`driver_type_full_name` VARCHAR(20) COMMENT '驱动型式全称',`announcement_batch` VARCHAR(40) COMMENT '公告批次',`city_working_condition` VARCHAR(40) COMMENT '市区工况',`outskirts_working_condition` VARCHAR(40) COMMENT '市郊工况',`comprehensive_working_condition` VARCHAR(40) COMMENT '综合工况',`car_name` VARCHAR(20) COMMENT '车辆名称',`car_speed_max` VARCHAR(40) COMMENT '最高车速',`car_controlled_axis` VARCHAR(40) COMMENT '轴数',`car_tire_number` VARCHAR(40) COMMENT '轮胎数',`tyre_size` text COMMENT '轮胎规格',`front_tread` VARCHAR(40) COMMENT '前轮距',`rear_tread` VARCHAR(40) COMMENT '后轮距',`axle_load` VARCHAR(20) COMMENT '轴荷',`approach_angle_departure` VARCHAR(20) COMMENT '接近角与离去角',`front_back_suspension` VARCHAR(20) COMMENT '前悬与后悬',`spring_leaf_number` VARCHAR(40) COMMENT '弹簧片数',`ABS` VARCHAR(10) COMMENT '防抱死系统',`function` VARCHAR(10) COMMENT '使用性质',`ownership` VARCHAR(10) COMMENT '所有权',`body_color` VARCHAR(10) COMMENT '车身颜色',`sales_volume` VARCHAR(40) COMMENT '销量',`MSRP` VARCHAR(40) COMMENT 'MSRP',`price_tier` VARCHAR(20) COMMENT '价格段',`purchase_tax` VARCHAR(10) COMMENT '是否免征购置税',`single_double_row` VARCHAR(10) COMMENT '单双排',`motor_type` VARCHAR(20) COMMENT '驱动电机类型',`motor_model` VARCHAR(20) COMMENT '电机型号',`energy_storage_device_model` VARCHAR(20) COMMENT '储能装置型号',`energy_storage_device_type` VARCHAR(20) COMMENT '储能装置种类',`battery_manufacturer` VARCHAR(40) COMMENT '电池生产企业',`battery_energy_density` VARCHAR(40) COMMENT '电池能量密度',`clues_to_source` VARCHAR(20) COMMENT '客户信息来源',`interested_models` VARCHAR(40) COMMENT '意向车型',`interested_brand` VARCHAR(40) COMMENT '意向品牌',`budget_price_min` VARCHAR(40) COMMENT '价格预算Min',`budget_price_max` VARCHAR(40) COMMENT '价格预算Max',`car_use` VARCHAR(20) COMMENT '购车用途',`purchase_date` VARCHAR(40) COMMENT '购车时间',`referrer` VARCHAR(20) COMMENT '推荐人姓名',`referrer_phone` VARCHAR(20) COMMENT '推荐人联系电话',`referrer_email` VARCHAR(64) COMMENT '推荐人电子邮箱',`referrer_card_number` VARCHAR(20) COMMENT '推荐人卡号',`sales_consultant` VARCHAR(20) COMMENT '销售顾问',`sales_consultant_phone` VARCHAR(20) COMMENT '销售顾问电话',`sales_consultant_group` VARCHAR(20) COMMENT '销售顾问所在组',`agency_id` VARCHAR(40) COMMENT '经销商ID',`agency_name` VARCHAR(40) COMMENT '经销商名称',`agency_phone` VARCHAR(20) COMMENT '经销商电话',`agency_area` VARCHAR(20) COMMENT '经销商所在区域',`agency_level` VARCHAR(20) COMMENT '经销商级别',`agency_address` text COMMENT '经销商地址',`visit_number` VARCHAR(40) COMMENT '客户到店次数',`first_follow_time` VARCHAR(40) COMMENT '首次跟进时间',`recently_follow_time` VARCHAR(40) COMMENT '最近跟进时间',`wether_test_drive` VARCHAR(10) COMMENT '是否试乘试驾',`wether_follow` VARCHAR(10) COMMENT '是否继续跟进',`purchase_status` VARCHAR(10) COMMENT '购车状态',`license_plate` VARCHAR(20) COMMENT '车牌号码',INDEX `__task_id` (`__task_id`), PRIMARY KEY(`_markid`)) ENGINE=InnoDB  DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;
有大神分析原因是:
大致是因为mysql-innodb是按照page存储数据的,每个page max size是16k,然后每个page两行数据,所以每行最大8k数据。如果你的字段是blob之类的话,会存储在page之外的溢出区里。
1、innodb默认的approach(羚羊)存储格式会把每个blob字段的前864个字节存储在page里,所以你的blob超过一定数量的话,单行大小就会超过8k;
2、innodb的Barracuda(梭鱼) 存储格式对blob字段的处理方式是在page里头只存储一个20byte大小的指针,其它全存在溢出区,所以你轻易超不了8k;

网上搜索了很多方法,逐一试过之后都不适用,可能是大家情况不同,有作者对这几种方法都汇总了:https://blog.csdn.net/weixin_42024325/article/details/88994230
(但我逐一试过之后,依然没有解决,可能情况也不大相同的原因。最后把几种方案都综合了一下成功了,O(∩_∩)O哈哈~,在这里记录一下步骤)
我这里的MySQL是基于docker容器部署的,修改了配置文件,如果配置文件不正确,mysql服务器不来,进不去容器就没法修改配置了,只能重启一个CONTAINER了,这个比较难搞。
1. 拉取MySQL5.7镜像

docker pull mysql:5.7


2. 查看镜像

docker images


3. 创建并启动mysql服务

docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD='123456' --name mysql mysql:5.7


4. 查看全部容器

docker ps -a


5. 进入mysql容器

docker exec -it “CONTAINER ID” /bin/bash


6. 进入mysql配置文件路径

cd  /etc/mysql/
ls


注:docker容器里没法使用vi命令,需要使用vim命令编辑文件,如果提示:“bash: vim: command not found”,则需要安装一下vim

安装步骤如下:

apt-get update

apt-get install vim


7. 编辑mysql配置文件my.cnf

vim my.cnf

添加如下内容:

[mysqld]
max_allowed_packet=16M
innodb_file_per_table=1
innodb_file_format=Barracuda
internal_tmp_disk_storage_engine=MyISAM


8. 保存配置,重启mysql服务

如果要退出bash有2种操作:1)Ctrl + d 退出并停止容器;2)Ctrl + p + q 退出并在后台运行容器;
重启mysql服务:docker restart “CONTAINER ID”


可使用 docker logs “CONTAINER ID” 查看docker容器运行日志(加上-f 可实时查看)

9. 再次进入mysql容器,连接mysql服务创建表成功



PS:后来发现这种方式还是不稳定,在删除表之后又创建不了了。。。
解决方案:
更改数据库引擎为MyISAM。即上述代码中Engine=MyISAM

这两种引擎的区别:

  1. https://blog.csdn.net/aschulianwuyanzu/article/details/77879665
  2. https://blog.csdn.net/qq_27607965/article/details/79925288

MySQL5.7(Linux)创建表报错:“Row size too large (> 8126). Changing some columns to TEXT or BLOB may help.”相关推荐

  1. Mysql数据库报错:Row size too large ( 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DY

    1.问题描述: Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DY ...

  2. ERROR 1118 (42000): Row size too large (8126). Changing some columns to TEXT or BLOB or using ROW_

    ERROR 1118 (42000): Row size too large (> 8126). Changing some columns to TEXT or BLOB or using R ...

  3. 亲身实践已解决:Mysql Row size too large ( 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT

    今天在把一个数据库的数据导出sql在另外一个库中执行的时候出现了这个问题, 查看当前的表类型为innodb 找到mysql的安装目录,找到配置文件my.ini 进行如下修改: innodb_file_ ...

  4. Row size too large ( 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC

    将InnoDB 改为MYISAM再重新执行就可以

  5. mysql的rows大小超过8126_Row size too large ( 8126). Changing some columns to TEXT or BLOB

    当插入的一行数据大于8k 时...mysql会提示错误 如下 Row size too large (> 8126). Changing some columns to TEXT or BLOB ...

  6. mysql报错 Row size too large ( 8126)

    报错信息 Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAM ...

  7. Mysql数据库报错:Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DY

    1.问题描述: Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DY ...

  8. MySQL导入数据库1118错误解决方案[ERR] 1118 - Row size too large (> 8126). Changing some columns to TEXT or BLOB

    导入SQL文件时报错(在执行创建表或者增加字段时,发现row size长度过长,会导致出现以下错误) [ERR] 1118 - Row size too large (> 8126). Chan ...

  9. ERROR 1118 (42000): Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ...

    在创建数据库表时报错 之前已经在数据库里创建了多张表,但在创建其中一张数据库表时报如下错: ERROR 1118 (42000): Row size too large (> 8126). Ch ...

最新文章

  1. Springboot前后端分离上传、下载压缩包、查看文件
  2. Android开发常用属性
  3. CentOS7 Apache调优之开启deflate压缩模块
  4. outlook地址薄导入到FOXMAIL
  5. Android学习----AndroidManifest.xml文件解析
  6. JS----JavaScript中的递归函数
  7. C++版的LLC代码
  8. python27怎么使用_pygtk:glade的使用(针对python27的第一个例子)
  9. json数据在js中的常见操作
  10. 【连载】如何掌握openGauss数据库核心技术?秘诀一:拿捏SQL引擎(1)
  11. 解决@media screen (自适应)IE浏览器不兼容问题
  12. java 映射servlet,java – 将映射或对象从jsp传递到servlet
  13. python线程和c++线程的区别_python 多线程和C++多线程的区别
  14. python如何操作oracle数据库_Python连接oracle数据库的基本操作
  15. python 读写西门子PLC 包含S7协议和Fetch/Write协议,s7支持200smart,300PLC,1200PLC,1500PLC...
  16. java 中如何检测异常_如何检测Java中何时全局抛出了异常?
  17. 关于碰到优盘插入电脑检测到病毒并且优盘里文件只显示System Volume Information文件夹的问题解决。
  18. C语言及程序设计[套餐]课程主页
  19. 使用mybatis-plus时容易出现的错误:java.sql.SQLSyntaxErrorException: Table ‘bookdata.book_data’ doesn’t exis异常处l
  20. 数字化门店管理|如何让门店数字化管理,更加贴合日常运营细节?

热门文章

  1. Easyconnect 选路连接失败,可能当前连接网络异常,请稍后重
  2. 【视频】javascript01
  3. 判断tableViewCell是否在可视区
  4. belle-sip源码分析
  5. 1111112222
  6. 五、努力与职业道德(三)
  7. 盖娅互娱测试工程师校招一面面经
  8. 技术 | 关于整流电路总结
  9. 北航软件工程考研非全上岸经验贴
  10. 淘宝接口API开发 taobao代购系统API接口调用