当我尝试获取大型 SQL 文件(大型 INSERT
查询)时出现此错误。
mysql> source file.sql
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id: 2
Current database: *** NONE ***
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id: 3
Current database: *** NONE ***
表格中的任何内容都没有更新。我试过删除和取消删除表/数据库,以及重新启动 MySQL。这些都不能解决问题。
这是我的最大数据包大小:
+--------------------+---------+
| Variable_name | Value |
+--------------------+---------+
| max_allowed_packet | 1048576 |
+--------------------+---------+
这是文件大小:
$ ls -s file.sql
79512 file.sql
当我尝试其他方法时...
$ ./mysql -u root -p my_db < file.sql
Enter password:
ERROR 2006 (HY000) at line 1: MySQL server has gone away
最佳答案
max_allowed_packet=64M
将此行添加到 my.cnf
文件中解决了我的问题。
这在列具有较大值的情况下很有用,这会导致问题,您可以找到解释 here .
On Windows this file is located at: "C:\ProgramData\MySQL\MySQL Server 5.6"
On Linux (Ubuntu): /etc/mysql
关于mysql - 错误 2006 (HY000) : MySQL server has gone away,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10474922/