问题
因为业务需求,一个表里一个字段需要存在默认图片的base64,这样数据多了,导致单张表的过大
单张表size 过大,导致导入失败
解决:
mysql 命令行模式下
set global max_allowed_packet = 1024*1024*160;
设置单张表的大小为 160 M;
详解:
mysql 命令行模式下:
show VARIABLES like '%max_allowed_packet%';
捕获.PNG
max_allowed_packet : 单张表的最大允许大小为 4 M;
slave_max_allowed_packet:最大允许值 1 G
max_allowed_packet 针对的是一个事务中的一行记录大小,当一行记录超过了限制的大小,将会报错。sql文件中每次insert完进同一张表的所有数据被称为一个数据包(packet),max_allowed_packet就是来限制这个的大小的阈值,大于这个值,mysql的I/O连接会关闭,就会报这个错。
set global max_allowed_packet = 1024*1024*160;
以上指令为:设置packet 的大小
结果如图:
捕获.PNG
经过测试,MySQL 服务重启,packet 大小恢复默认 4M
作者:lconcise
链接:https://www.jianshu.com/p/13b6f37ddefb
點擊查看更多內容
為 TA 點贊
評論
評論
共同學習,寫下你的評論
評論加載中...
作者其他優質文章
正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦