MySQL server has gone away 的原因分析

MySQL服务器消失的最常见原因是服务器超时并关闭了连接。在这种情况下,您通常会得到以下错误代码之一(您获得的错误代码与操作系统相关)。

默认情况下,如果没有发生任何事情,服务器会在八小时后关闭连接。您可以通过在启动mysqld时设置wait_timeout变量来更改时间限制。

如果您有脚本,则只需再次发出查询,客户端就可以自动重新连接。这假设您在启用的客户端中具有自动重新连接(这是mysql命令行客户端的默认设置)。

MySQL服务器消失的一些其他常见原因是:

1、您(或数据库管理员)已使用KILL语句或mysqladmin kill命令终止正在运行的线程。

2、您尝试在关闭与服务器的连接后运行查询。这表示应该更正的应用程序中存在逻辑错误。

3、在不同主机上运行的客户端应用程序没有从该主机连接到MySQL服务器的必要权限。

4、您从客户端的TCP / IP连接获得超时。如果您一直在使用以下命令,则可能会发生这种情况:mysql_options(...,MYSQL_OPT_READ_TIMEOUT,...)或mysql_options(...,MYSQL_OPT_WRITE_TIMEOUT,...)。在这种情况下,增加超时可能有助于解决问题

5、您在服务器端遇到超时,并且客户端中的自动重新连接被禁用(MYSQL结构中的重新连接标志等于0)。

6、您正在使用Windows客户端,并且在发出命令之前服务器已断开连接(可能是因为wait_timeout已过期)。Windows上的问题是,在某些情况下,MySQL在写入到服务器的TCP / IP连接时不会从操作系统中获得错误,而是在尝试从连接中读取答案时收到错误。

7、如果向服务器发送不正确或太大的查询,也可能会出现这些错误。如果mysqld收到的数据包太大或无序,则会假定客户端出现问题并关闭连接。如果需要大查询(例如,如果使用大型BLOB列),可以通过设置服务器的max_allowed_pa​​cket变量来增加查询限制,该变量的默认值为64MB。您可能还需要增加客户端的最大数据包大小。

插入大量行的INSERT或REPLACE语句也可能导致这些类型的错误。这些语句中的任何一个都向服务器发送单个请求,而不管要插入的行数是多少;因此,您通常可以通过减少每个INSERT或REPLACE发送的行数来避免错误。

8、如果主机名查找失败(例如,如果您的服务器或网络所依赖的DNS服务器发生故障),也可能会看到此错误。这是因为MySQL依赖于主机系统进行名称解析,但无法知道它是否正常工作 - 从MySQL的角度来看,问题与任何其他网络超时无法区分。

如果使用--skip-networking选项启动MySQL,您可能还会看到MySQL服务器已经消失。

如果MySQL端口(默认3306)被防火墙阻止,则可能导致此错误的另一个网络问题,从而阻止任何连接到MySQL服务器。

9、您也可以使用fork子进程的应用程序遇到此错误,所有这些进程都尝试使用与MySQL服务器相同的连接。通过为每个子进程使用单独的连接可以避免这种情况。

10、您遇到了执行查询时服务器死机的错误。

您可以通过执行mysqladmin版本并检查服务器的正常运行时间来检查MySQL服务器是否已死亡并重新启动。如果因为mysqld崩溃并重新启动而导致客户端连接中断,则应集中精力查找崩溃的原因。首先检查是否再次发出查询会再次杀死服务器。

如果要创建有关此问题的错误报告,请确保包含以下信息:

1、指示MySQL服务器是否已死亡。您可以在服务器错误日志中找到有关此内容的信息。

2、如果特定查询杀死mysqld并且在运行查询之前使用CHECK TABLE检查了所涉及的表,那么您是否可以提供可重现的测试用例?

3、MySQL服务器中wait_timeout系统变量的值是多少?(mysqladmin变量为您提供此变量的值。)您是否尝试在启用常规查询日志的情况下运行mysqld以确定问题查询是否出现在日志中?

以上翻译自mysql官方文档

https://dev.mysql.com/doc/refman/8.0/en/gone-away.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,163评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,301评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,089评论 0 352
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,093评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,110评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,079评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,005评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,840评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,278评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,497评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,667评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,394评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,980评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,628评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,796评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,649评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,548评论 2 352