情景:有一个包含19万条数据的sql文件,通过文件导入用 mysqli_multi_query($con, $sql) 执行插入数据表,插入失败,返回false。
原因:Mysql有个max_allowed_packet 参数,直译为“最大允许数据包”,即最大允许上传的数据包大小,修改前这里的值是36M,sql文件大小为169M,超出了限制,把这里的值改大为200M再次导入sql文件执行成功。
注意:修改完一定要重启mysql服务,否则不生效。
修改方法:找到mysql的配置文件,搜索max_allowed_packet,以下为宝塔示例