在恢复数据库时的表错误

27 浏览
0 Comments

在恢复数据库时的表错误

我之前曾在问题中询问如何将数据库分成单独的表进行转储。好吧,我成功地使用mysqldump命令完成了这个操作,但是当我尝试在本地还原数据库以提取一些数据时,它在某个点出现了错误。一个包含超过2GB数据的表。我甚至尝试逐个还原每个表,看它是否成功。但结果还是一样...还是同一个表出错。

有人可以告诉我是否有修复下载的转储文件或检查每个表的方法吗?

提前感谢。

编辑:我得到的错误是“ERROR 2006 (HY000) at line 5855099: MySQL server has gone away

编辑2:当我通过SSH在我的VPS上尝试时,它给了我这个错误“ERROR 1153 (08S01) at line 4215: Got a packet bigger than 'max_allowed_packet' bytes

0
0 Comments

在恢复数据库时出现表错误的问题,通常是由于max_allowed_packet变量引起的。虽然我不是这个领域的专家,但我很高兴我找到了解决方法。我想分享一下帮助我解决这个问题的链接以及我是如何解决的。

链接 - MySQL Error 1153 - Got a packet bigger than 'max_allowed_packet' bytes

以下是我的解决方法:

1.首先使用mysql -u user -p命令以用户名和密码登录mysql服务器。

2.然后执行以下命令:

set global net_buffer_length=1000000;
set global max_allowed_packet=1000000000;

3.最后,我保持终端不变,另开一个终端,并执行以下命令,这样就可以顺利完成恢复数据库的操作:

mysql --max_allowed_packet=100M -u root -p database < dump.sql

希望这对其他遇到类似问题的人有所帮助。

谢谢。

0