在 mysql 导入sql文件时报错该信息;
有 sql 备份文件 大概 104G左右。再倒入时发现报错;
最后排查结果修改信息如下:
解决办法
- 修改max_allowed_packet值大小
max_allowed_packet的协议限制为1GB。这个值必须是1024的倍数;如果不是1024倍数的值,mysql就会自动四舍五入为最接近的1024的倍数。# 查看 配置大小 show global variables like '%wait_timeout'; # 修改配置大小 ,my.cnf 修改方式 max_allowed_packet = 900M # 命令行修改方式 set global max_allowed_packet = 2*1024*1024*10; # (注意,这里的大小只能填写字节。重启mysql服务后,配置将会失效!)
- 修改 mysql innodb_buffer_pool_size 大小
建议修改为 可用内存的 60% 左右,我最终的解决方案就是修改的 innodb_buffer_pool_size 配置;因为我机器可用内存少于该配置分配的值,之后修改为 可用内存 60% 之后解决了 sql 导入问题;innodb_buffer_pool_size = 23552M
- 另外一个就是修改 mysql 的连接超时
show global variables like '%timeout';
该配置一般不会是 导入 sql 文件报错的原因;
原创文章,作者:306829225,如若转载,请注明出处:https://blog.ytso.com/tech/database/275378.html