iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySQL中异常的客户端连接怎么处理
  • 257
分享到

MySQL中异常的客户端连接怎么处理

2024-04-02 19:04:59 257人浏览 薄情痞子
摘要

这篇文章主要介绍Mysql中异常的客户端连接怎么处理,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!背景1: 程序反馈数据库出现了max_connection的错误, 导致client

这篇文章主要介绍Mysql中异常的客户端连接怎么处理,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!


背景1:
程序反馈数据库出现了max_connection的错误, 导致client无法连接到db;
根据程序的说法, 使用大量的连接是历史遗留问题, 遂调高了max_connection的参数;

背景2:
另外一个业务的程序发现数据库中出现了一些连接时间很长的sleep连接, 但是应用层已经把所有的进程全部重启了;
如截图:
MySQL中异常的客户端连接怎么处理

10s多的是重启后新建的连接, 3000左右的是异常链接;

场景:
未搭建复现场景;

分析:
第一时间考虑的就是应用服务器上还有遗漏的进程没有关闭, 所以导致了这些连接一直保持着;
程序在检查之后一再保证确实没有连接数据库的进程以后, 开始顺着网络链路进行分析;

首先让程序停掉了应用层的所有进程, 然后发现mysql上确实只留下了持续好几千秒的sleep连接;
在DB的服务器上也能看到EST的tcp/IP连接, 确认了连接还是存在的;
然后检查了Mysql前端的haproxy服务器, 比对了一下端口, 也找到了haproxy上的连接;
反查haproxy的连接信息, 找到了应用服务器的IP和对应的端口, 如截图:
MySQL中异常的客户端连接怎么处理
MySQL中异常的客户端连接怎么处理

奇怪的是, 应用服务器上并没有端口38710的这些信息, 新创建的端口都已经到48000以后去了;
那么haproxy上, 这些与不存在端口的连接到底是什么原理?

和网络部分的同事说明情况以后, 最终给出了一个解释:
client在连接DB的时候会经由LVS转发到haproxy, 其中LVS的超时时间设置比haproxy短;
因此client在保持空闲一段时间以后, 再访问LVS时, LVS会告知client重新向haproxy发起新的连接,
迩haproxy上旧的连接因为还没有到haproxy的超时时间, 所以也没有断开, 那么在查询的时候就会出现这种没有源头的链接;

处理方式:
在发现了这个问题的haproxy实例上, 调整了haproxy的超时时间, 比LVS略高, 之后的几天内, 这种连接不再出现;
且haproxy断开连接时, MySQL的error log中出现了一些NOTE提醒有连接被断开了;

背景2中, 其实也是这个原因, 导致了在MySQL端堆积了大量的sleep连接, 结果把可用的connection都挤占了, 导致client无法再连接DB;
统一修改了haproxy的超时时间以后, 这种现象不再出现, 问题解决~

以上是“MySQL中异常的客户端连接怎么处理”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网数据库频道!

您可能感兴趣的文档:

--结束END--

本文标题: MySQL中异常的客户端连接怎么处理

本文链接: https://www.lsjlt.com/news/62528.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL中异常的客户端连接怎么处理
    这篇文章主要介绍MySQL中异常的客户端连接怎么处理,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!背景1: 程序反馈数据库出现了max_connection的错误, 导致client...
    99+
    2024-04-02
  • Redis处理客户端连接的方法
    这篇文章给大家分享的是有关Redis处理客户端连接的方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Redis如何处理客户端连接  本文主要介绍了 Redis 处理客户端连接的...
    99+
    2024-04-02
  • MySQL客户端怎么连接服务器
    这篇文章主要介绍“MySQL客户端怎么连接服务器”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“MySQL客户端怎么连接服务器”文章能帮助大家解决问题。MySQL客户...
    99+
    2023-01-03
    mysql 服务器
  • MySQL client客户端的连接方式是什么
    这篇文章主要介绍“MySQL client客户端的连接方式是什么”,在日常操作中,相信很多人在MySQL client客户端的连接方式是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望...
    99+
    2024-04-02
  • mysql hikari连接池异常处理(com.zaxxer.hikari.pool.ProxyConnection)
    异常信息如下:com.mysql.cj.jdbc.exceptions.CommunicationsException: The last packet successfully received from the server was 6...
    99+
    2023-09-02
    mysql java 数据库
  • FeignClient服务器抛出异常客户端处理方案
    目录FeignClient服务器抛出异常客户端处理feign异常拦截器FeignClient异常合集Mark问题1问题2FeignClient服务器抛出异常客户端处理 在使用feig...
    99+
    2024-04-02
  • 怎么解决RAC数据库环境修改scanip后客户端连接异常
    这篇文章主要讲解了“怎么解决RAC数据库环境修改scanip后客户端连接异常”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么解决RAC数据库环境修改sca...
    99+
    2024-04-02
  • 怎么在python中使用socket连接客户端
    本篇文章给大家分享的是有关怎么在python中使用socket连接客户端,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Python的优点有哪些1、简单易用,与C/C++、Jav...
    99+
    2023-06-14
  • C#中怎么实现服务端与客户端连接
    这篇文章将为大家详细讲解有关C#中怎么实现服务端与客户端连接,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。C#服务端与客户端连接实现实例:class Client {&n...
    99+
    2023-06-17
  • Python中怎么实现服务端与客户端连接
    本篇内容主要讲解“Python中怎么实现服务端与客户端连接”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中怎么实现服务端与客户端连接”吧!服务端我们使用 socket 模块的&nbs...
    99+
    2023-06-08
  • Redis怎么远程连接Redis客户端
    本篇内容主要讲解“Redis怎么远程连接Redis客户端”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Redis怎么远程连接Redis客户端”吧!一 进入redis下的目录二 启动 redis服...
    99+
    2023-07-02
  • mysql客户端连接服务器出错怎么解决
    这篇文章主要介绍了mysql客户端连接服务器出错怎么解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇mysql客户端连接服务器出错怎么解决文章都会有所收获,下面我们一起来看看...
    99+
    2023-01-04
    mysql 服务器
  • Redis客户端连接池是怎么工作的
    Redis客户端连接池是一种管理连接的机制,它通过预先创建一定数量的连接,并在需要时从连接池中获取连接,使用完毕后再将连接放回连接池...
    99+
    2024-05-07
    Redis
  • 远程客户端连接MysqL数据库太慢怎么办
    这篇文章主要讲解了“远程客户端连接MysqL数据库太慢怎么办”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“远程客户端连接MysqL数据库太慢怎么办”吧!远程...
    99+
    2024-04-02
  • mysql多个客户端连接出现错误怎么解决
    当出现多个客户端连接mysql数据库时出现错误,通常是由于数据库连接数限制引起的。解决方法如下: 增加连接数限制:可以通过修改m...
    99+
    2024-04-09
    mysql
  • 怎么解决Mysql从客户端连接服务器连不上的问题
    这篇文章主要讲解了“怎么解决Mysql从客户端连接服务器连不上的问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么解决Mysql从客户端连接服务器连不上...
    99+
    2024-04-02
  • MyBatis怎么处理数据库连接异常
    MyBatis处理数据库连接异常的方式主要有以下几种: 使用异常处理器:在MyBatis中可以通过实现org.apache.ib...
    99+
    2024-03-08
    MyBatis 数据库
  • redis客户端连接的方法是什么
    Redis客户端连接方式有多种,常见的方式包括使用Redis官方提供的客户端库、使用第三方客户端库或者直接使用命令行工具连接。以下是...
    99+
    2024-05-06
    redis
  • 如何处理服务器上客户端断开连接的情况
    在Golang实战开发的过程中,我们经常会遇到一些这样那样的问题,然后要卡好半天,等问题解决了才发现原来一些细节知识点还是没有掌握好。今天编程网就整理分享《如何处理服务器上客户端断开连接的情况》,聊...
    99+
    2024-04-05
  • 怎么在python中利用socketserver处理客户端
    今天就跟大家聊聊有关怎么在python中利用socketserver处理客户端,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Python的优点有哪些1、简单易用,与C/C++、Jav...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作