MySQL错误2013是什么意思?

我在cron(作为备份)在MySQL服务器上运行mysqldump,我收到类似的警告消息

mysqldump: Got error: 2013: Lost connection to MySQL server during query when doing refresh 

这个MySQL错误(2013)是什么意思? 我做了一些Googlesearch,这不是很有帮助…

为了logging,mysqldump正在连接到一个MySQL Slave服务器,它在连接到主服务器时用于工作。

这可能是非常糟糕的, 2013意味着服务mysqldump进程的线程已经死亡。 这可能是因为服务器上的InnoDB引擎在为您的数据库读取数据库文件时检测到错误。 由于mysqldump必须读取所有数据库的所有页面才能进行备份,因此可能会触发应用程序在日常活动中可能会避免的任何潜在损坏。

如果你运行你的mysql命令,并且报告你的连接ID是一个很低的数字,那么你的服务器可能已经重新启动了。 你应该立即检查你的mysqld.log来找出原因。

2013年意味着到服务器的连接消失了。 有几种可能:

  1. 有人KILL了查询
  2. networking问题导致连接死亡
  3. 服务器崩溃/死亡
  4. 你的连接空闲wait_timeout并被杀害
  5. 客户端没有足够快的速度为net_wait_timeout提取数据并被杀死

你打开连接,做一个冗长的操作不涉及连接,然后尝试查询? 如果是这样的话,由于wait_timeout,mysql可能会丢失连接。 只需在发出查询之前重新连接即可。