我试图通过phpMyAdmin导入一个大的sql文件…但它一直显示错误
“MySql服务器已经消失”
怎么办呢?
我试图通过phpMyAdmin导入一个大的sql文件…但它一直显示错误
“MySql服务器已经消失”
怎么办呢?
当前回答
如果你在XAMPP上工作,那么你可以修复MySQL服务器已经消失的问题。
打开my.ini文件 my.ini的位置是(D:\xampp\mysql\bin\my.ini)
修改以下变量值
max_allowed_packet = 64M
innodb_lock_wait_timeout = 500
其他回答
我得到一个类似的错误。要解决这个问题,只需打开my.ini文件,在第36行更改最大允许数据包大小的值。max_allowed_packet = 20M
如果你使用默认值运行,那么你有很多空间来优化你的mysql配置。
我建议的第一步是将max_allowed_packet增加到128M。
然后下载MySQL Tuning Primer脚本并运行它。它将为您的配置提供几个方面的建议,以获得更好的性能。
另外,还要在MySQL和PHP中调整超时值。
你要导入的文件有多大(文件大小),你能使用mysql命令行客户端而不是PHPMyAdmin导入文件吗?
如果你在OS X上使用MAMP,你需要改变MySQL模板中的max_allowed_packet值。
你可以在文件>编辑模板> MySQL my.cnf 然后只需搜索max_allowed_packet,更改值和 保存。
对我来说,这个解决方案不可行,所以我执行了
SET GLOBAL max_allowed_packet=1073741824;
在我的SQL客户端。
如果不能改变MYSql服务运行,你应该停止服务,并改变my.ini文件中的变量。
例如:
max_allowed_packet=20M
我也有同样的问题
$image_base64 = base64_encode(file_get_contents($_FILES['file']['tmp_name']) );
$image = 'data:image/jpeg;base64,'.$image_base64;
$query = "insert into images(image) values('".$image."')";
mysqli_query($con,$query);
在phpmyadmin的\xampp\mysql\bin\my.ini文件中,我们只得到
[mysqldump]
max_allowed_packet=110M
这只是mysqldump -u root -p dbname。我通过替换上面的代码来解决我的问题
max_allowed_packet=110M
[mysqldump]
max_allowed_packet=110M