mysql连接错误2013_打开数据库异常

mysql连接错误2013_打开数据库异常MYSQL数据库的连接故障

	MYSQL数据库连接异常【ERROR:2013】[数据库教程]

1丶故障描述

客户跟我反馈他们的数据库通过客户端数据库工具连接不上了,并且截图我看了,数据库是mysql
报错内容"MySQL error: 2013, “Lost connection to MySQL server at ‘reading initial communication packet‘, system error: 0""

2丶思路分析

  • 查看数据库错误日志
  • 查看系统日志

3丶开始排查

【第一步】
开启两个"session",一个用于实时监控mysql的错误日志,而且奇怪的是错误日志最后一条信息的输出时间为2020/08/04,
我就觉得很奇怪,今天都8月5号来了,难道这段时间数据库都不输出日志的吗?
但是由于间隔时间不长,然后数据库也连接不上,我先入为主的认为可能数据库已经假死,
导致日志信息都不输出,所以我并没有在意!
【第二步】
我开始启动数据库,但是还是启动失败,但是错误日志还是没有任何输出,我就觉得很奇怪,
"磁盘空间也没满",为什么我连重启数据库怎么也不输出错误日志呢,没错误日志排查不就是盲查吗?
【第三步】
错误日志行不通,于是我就去看了下系统日志message,或许能找到点有用的信息,
突然发现里面打印了一条"no many open file",难道是因为进程打开的文件数超过了默认的设置限制吗?
我通过"ulimit -n" 看了下发现进程打开的文件数是65535而我mysql这刚启动怎么可能出现超过"65535"的可能,
于是我判断应该是有某个进程打开了文件数超过了"65535",但是我又不想也不对啊,
即使某个进程超过了"65535"的限制但是我"mysql"不受影响啊,难道是说系统打开的文件数达到了上限?
于是我通过"sysctl -a|grep fs.file"查看系统的限制发现也是"65535",原来是系统达到了临界点了,
于是我就通过"lsof |wc -l "查看当时系统打开的文件数,发现已经达到"70000"多了,终于找到了原因了
  • 排序当前系统中打开文件数前十的进程
    lsof |awk ‘{print $1}‘|sort|uniq -c |sort -nr|head -10
    MYSQL数据库连接异常【ERROR:2013】

  • 确认java进程打开的文件数
    MYSQL数据库连接异常【ERROR:2013】
    MYSQL数据库连接异常【ERROR:2013】
【第四步】
找到了原因接下来就是查看哪个进程打开的文件数最多了,发现是"java程序导致"的,
于是就反馈给我们客户让他找相关的开发同事着重排查下,
是不是打开文件的时候未"close"文件

总结

1丶由于系统打开文件数上限,导致mysql错误日志无任何日志输出
2丶不要盲目的去尝试,通过看日志排错是最好的选择
3丶当自己的才华不足以满足自己的野心时,记得静下心来学习

MYSQL数据库连接异常【ERROR:2013】

原文地址:https://blog.51cto.com/12898848/2517419

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/6837.html

(0)
上一篇 2023-04-01
下一篇 2023-04-01

相关推荐

  • 列存储索引_索引存储和散列存储

    列存储索引_索引存储和散列存储作者:李红建 责编:宇亭 在第一期研发分享中,我们解释了,为什么Tinamu作为一款列式存储引擎在初期不支持 Delete 功能的原因,然后对一些友商列式存储引擎的 Delete 方案进行了一些调研和

    2023-06-19
    154
  • 如何卸载PyCharm

    如何卸载PyCharmPyCharm是一款用于Python开发的IDE(集成开发环境)。它被广泛应用于Python开发、数据科学、机器学习等领域。然而,在使用过程中,很多人可能会出现需要卸载PyCharm的情况。可能是因为需要更换版本,或是需要卸载不需要的插件,又或者是因为需要释放更多的磁盘空间。在这篇文章中,我们将详细阐述如何卸载PyCharm。

    2024-04-16
    68
  • Python中删除非空目录的方法

    Python中删除非空目录的方法在Python中,我们可以利用os模块实现删除非空目录。具体操作方法是调用os模块的rmtree()函数,该函数可以递归地删除目录及其子目录下的所有文件和文件夹。下面是代码示例:

    2024-03-01
    94
  • Python split函数用于字符串分割

    Python split函数用于字符串分割在Python中,字符串是一种常见的数据类型,而字符串分割是在操作字符串时经常需要用到的操作之一。Python提供了一个内置的split()函数,可以对字符串进行分割。该函数非常灵活,可以以指定的分隔符为基础,对字符串进行分割,并返回一个分隔后的列表。在本文中,我们将详细介绍Python split函数的使用。

    2023-12-15
    100
  • 提升创意和想象力:用Python创建你的tulpa

    提升创意和想象力:用Python创建你的tulpa有可能你从未听说过 “tulpa”,在藏传佛教中,tulpa是一种通过思考来创造的虚构生物。它是在你的意识中形成的,当你不断地思考它时,它会成为现实。这不仅是一种有趣的想象力游戏,也是一个真正的精神实践。

    2024-03-26
    86
  • Mysql复习

    Mysql复习DDL(DATA Definition language) 数据定义语言,用来定义数据库对象:库、表、列、等 数据库或表的结构操作 操作数据库 查看所有数据库:SHOW DATABASE; 切换数据…

    2023-02-02
    139
  • postgres环境搭建http://mirrors.aliyun.com/centos/7/isos/x86_64/[通俗易懂]

    postgres环境搭建http://mirrors.aliyun.com/centos/7/isos/x86_64/[通俗易懂]1、postgres源码下载 https://www.postgresql.org 2、下载centos系统 https://www.centos.org/download/ 3、下载依赖: ubu…

    2023-02-27
    177
  • nosql介绍_iaas paas saas举例

    nosql介绍_iaas paas saas举例王奇 顾问软件工程师 目前从事 PaaS 中间件服务(Redis / MongoDB / ELK 等)开发工作,对 NoSQL 数据库有深入的研究以及丰富的二次开发经验,热衷对 NoSQL 数据库领域

    2023-05-03
    164

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注