最新要闻
- 韩国西江大学留学条件和费用是什么?韩国西江大学怎么样?
- 代课老师的养老保险什么时候启动?代课教师养老保险政策有哪些?
- 焦点热门:可抵抖音干半年!TVB淘宝直播间首播销售额达2350万
- 全球看点:一年脱轨1000次!美国俄亥俄州再发生铁路事故 卡车撞上火车
- 满满正能量!小学生拾得价值16万黄金后续:物归原主、获助学礼包
- 向残疾熊猫福菀泼水3游客身份未确定:初步断定为3女娃
- 一键开盖 耐热抗摔:哈尔斯Tritan材质单手开盖水杯15.9元发车
- 光棍节的由来和含义是什么?光棍节活动策划书
- 办公室副主任是什么级别?办公室副主任年度述职报告
- 手机厂商钟情的黄色配色 原来诺基亚十年前就有了
- 大小仅3.7GB:大佬基于Win10魔改经典WinXP系统
- 每日快报!为眼睛降低ISO感光度!万新偏光太阳镜大促:39.4到手 原价139元
- 焦点速递!跑车底盘+大电池!开了两天哪吒S 想把我的油车卖了
- 行走的27寸超大平板!小度推出添添闺蜜机 首发4999元
- 环球速读:A股异动 | 上海电影涨7% 拟收购上影元文化51%股权 拓展IP运营业务
- 视讯!国产CPU龙芯3A6000上半年流片明年出货 已评估7nm工艺
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
信息:mysql invalid conn排查
mysql invalid conn排查
服务监控系列文章
(资料图片仅供参考)
服务监控系列视频
问题背景
服务使用golang ,客户端库是go-mysql-driver ,系统测试环境频繁但是不总是报出invalid conn 错误,但实际拿sql执行时却是正常执行。
排查思路
原因分析
客户端使用了无效连接
由于连接无效,首先考虑客户端使用了过期连接。
mysql服务器端和客户端都能配置各自连接的最大生命周期。
如果客户端配置的连接最大生命周期大于服务端,并且客户端没有无效连接重连的机制,则会导致服务端的连接在过期以后,客户端使用已经过期的连接,从而引发invalid conn。
查询mysql 连接的最大空闲生命周期 s为单位
show global variables like "wait_timeout";
客户端最大生命周期配置
db.SetConnMaxLifetime(time.Duration(timeout) * time.Hour) //reconnect after 1 hour
mysql server的最大生命周期大于golang客户端的连接最大生命周期,所以排除此原因。
连接被莫名的原因关掉了,抓包分析
一时间陷入僵局,连接究竟是为何无效。直接抓包分析。
sudo tcpdump -i lo port 3306 -w conn.pcap
专家系统发现异常包
将pcap文件用wireshark打开,用专家系统对抓到的包做一个整体的分析。看到有8个异常的RST包,正常的连接开关是不会有RST产生的,着重分析下RST产生的原因。
发现问题
看到具体发生异常的地方,mysql服务器在回复客户端一个ACK消息后,客户端等了10s对mysql服务器发起了Request Quit(mysql 协议)关闭连接的命令。
具体看下异常前后。选择菜单栏的Statistics->Flow Graph,就可以打开数据流图窗口。可以看到过程如下:1,11:55:49.05 在客户端向mysql 发起 Request Execute Statement 执行sql的命令,2,mysql 恢复Ack3, 但是mysql并没有把执行结果返回给客户端,所以客户端等待了10s后发起关闭连接的命令。4,mysql 在11:55:59.27才返回了执行结果。5,但是这个时候客户端已经把连接关闭了,对已经关闭的连接发送数据触发了RST信号,所以客户端回应服务器RST
看到这里,已经可以很明确的任务是服务器执行sql超时了,或者说是服务器返回结果时超时了。
回到客户端代码确认报错原因
在进一步,是不是超时导致的报警呢?可以看到在读取缓冲区数据时,有可能报出ErrInvalidConn
// read packet headerdata, err := mc.buf.readNext(4)if err != nil {if cerr := mc.canceled.Value(); cerr != nil {return nil, cerr}errLog.Print(err)mc.Close()return nil, ErrInvalidConn}
继续查看mc.buf.readNext,发现超时代码
if b.timeout > 0 {if err := b.nc.SetReadDeadline(time.Now().Add(b.timeout)); err != nil {return err}}
mysql受到什么因素导致sql过长
因为是数据库,首先想到了磁盘,再次回到top,iostat ,iotop分析。此次发现异常。发现磁盘io使用率偶尔会飙高,所以mysql执行速率受到了影响。
解决问题
占用磁盘使用率的几个项目主要是视频转码项目,转码的时间不是固定的,所以当转码的时候,在同一台主机上的mysql受到了影响,引发了超时,导致应用层报出invalid conn 错误。
经过确认,测试环境可暂时关闭转码功能,关闭后,再也没有报警出现。
正常情况下,当抓包看到mysql返回超时是,应该立即就去看系统io等硬件指标了,这里由于是测试环境,所以我还是去看了go-mysql-client 库的代码,进一步确认。
反思
测试环境监控体系不够完善,没有监控界面,不然应该一眼能看出磁盘io异常。
其次是回归到应用层看代码的时机较晚,还是被invalid conn迷惑了,其实如果go-mysql库报错为超时错误可能会更符合这个场景。
其实从一开始,就用了top和iostat 去分析系统磁盘占用情况,但是由于那段时间内指标并无异常,加上报错信息是invalid conn 导致我首先把问题定位到是网络连接上出的问题,并抓包分析。看到这种偶发的错误,应该持续性的观察系统指标,这次只是看了十几秒钟就转而去分析其他因素了,实属不该。
测试环境开启慢日志
show variables like "slow_query%";
开启慢日志
set global slow_query_log=1
关键词:
信息:mysql invalid conn排查
全球观速讯丨CNStack 多集群服务:基于 OCM 打造完善的集群管理能力
即时看!关于docker中-容器的管理操作-删除
韩国西江大学留学条件和费用是什么?韩国西江大学怎么样?
代课老师的养老保险什么时候启动?代课教师养老保险政策有哪些?
焦点热门:可抵抖音干半年!TVB淘宝直播间首播销售额达2350万
全球看点:一年脱轨1000次!美国俄亥俄州再发生铁路事故 卡车撞上火车
满满正能量!小学生拾得价值16万黄金后续:物归原主、获助学礼包
向残疾熊猫福菀泼水3游客身份未确定:初步断定为3女娃
一键开盖 耐热抗摔:哈尔斯Tritan材质单手开盖水杯15.9元发车
光棍节的由来和含义是什么?光棍节活动策划书
办公室副主任是什么级别?办公室副主任年度述职报告
手机厂商钟情的黄色配色 原来诺基亚十年前就有了
大小仅3.7GB:大佬基于Win10魔改经典WinXP系统
每日快报!为眼睛降低ISO感光度!万新偏光太阳镜大促:39.4到手 原价139元
焦点速递!跑车底盘+大电池!开了两天哪吒S 想把我的油车卖了
行走的27寸超大平板!小度推出添添闺蜜机 首发4999元
win7电脑怎么开启telnet命令?telnet命令的作用是什么?
暖暖环游世界怎么看收集度?暖暖环游世界兑换码2023
Win10系统怎么安装杜比音效驱动?杜比音效和普通音效有什么区别
中兴天机7哪个版本音质最好?中兴天机7手机参数
iphone怎么设置勿扰模式?iphone灵动岛怎么养宠物?
Liunx Vim常用命令
天天看点:C++笔记--控制语句
Windows 11提示“无法枚举容器中的对象。”
环球速读:A股异动 | 上海电影涨7% 拟收购上影元文化51%股权 拓展IP运营业务
视讯!国产CPU龙芯3A6000上半年流片明年出货 已评估7nm工艺
泰国电动车市场被国产车包了!2月销量哪吒、比亚迪双霸榜
5499元 华硕无畏15i轻薄本开卖:12核i5、2.8K 120Hz OLED好屏
不得杀疯了?曝比亚迪海鸥4月上市:仅6.58万起
世界快消息!苹果等级森严:标准版iPhone 15将不支持全天候显示功能
【世界速看料】无穷大符号
Spring Boot + MybatisX = 王炸!!
每日消息!(数据库系统概论|王珊)第十章数据库恢复技术:习题
焦点速读:前端设计模式——发布订阅模式
微资讯!《寂静岭2:重制版》新版护士形象曝光!身材依旧火辣
今热点:苹果、谷歌抢市场 Windows份额创美国史低:绝对垄断没了
NVIDIA紧急推送531.26修复补丁:解决N卡CPU占用异常问题
2月销量3863台 长安马自达CX-50本月下线:还能救市吗?
24岁高颜值女孩回应大学毕业养猪:父母支持 年薪10万
世界热讯:一次惨痛教训让我写了个Windows定期备份文件脚本
天天微速讯:模块简介、模块的两种导入语句、导入文件的补充、判断文件类型、模块的查找顺序
全球热点!自动化离线交付在云原生的应用和思考
今日要闻!Python常见面试题009. 元组和列表有什么区别
每日速递:地图标准先行 自动驾驶识途
大疆发布Ronin 4D Flex分体拓展系统:手持重量仅1/3 实现运镜自由
环球速看:你真离不开苹果!全球最畅销手机Top 10:iPhone无敌 安卓阵营被摩擦
全球热讯:落后中国几十年!H3运载火箭发射失败自毁 日本首相社交平台谢罪
环球新消息丨妇女节快乐!《中国妇女报》:妇女节不是什么女神节 不放假有加班费吗?
当前消息!12万就有自动上电 埃安AION Y Younger上市:续航430km
世界看热讯:江苏一男子醉驾用脚刹车 竟然“刹”住了
世界速读:苹果推出黄色款iPhone 14:对比小米13飓风黄 哪个好看?
15万特斯拉要来了!马斯克自曝新车:成本降50% 自动驾驶
成人教育大专
焦点短讯!读Java性能权威指南(第2版)笔记10_原生内存
我国多地取消中考男女生长跑 800米对健康不利:教育部喊话不得停止体育教学
强烈建议收藏,python库大全
js数据类型判断、unll和undefined
全球通讯!女足来了!FIFA23将加入15个女足联赛
李杰:一加最擅长做旗舰 同等价格段我们能提供最优秀产品
景区回应瀑布源头是水管放水:看破不说破 不要在意细节
全球速递!《阿凡达2》宣布3月28日上线数字平台:收录3小时额外内容
在网上口述一生:86岁老奶奶成了年轻人的“偶像”
世界速读:埃及出土古罗马时期笑脸迷你版狮身人面像:脸颊还有酒窝
“90后”小伙画下长江泸州段!目标是画遍中国
全球热推荐:那年夏天 电影
第126篇: 异步函数(async和await)
环球速讯:思科防火墙5506-x基础
男子疑因抽烟错过高铁不停拍车门 网友:怨不得别人
热点!40岁985硕士求职被怼不招大妈 求职者:感觉是歧视
【LeetCode回溯算法#01】图解组合问题
报道:效仿微软XGP:Meta为Quest准备订阅制服务
每日短讯:健身猪一只最高能卖8万元:看完再也不配说胖得像猪了
环球百事通!联想小新Pro 16 2023酷睿独显版预售:7299元起 可选RTX4050
环球即时看!年度优秀员工评语简短(年度优秀员工评语)
[NOIP2017 普及组] 棋盘
AspNet Core MVC项目接入AdminLTE
世界动态:京东百亿补贴大杀器亮剑后 尚“无人伤亡”
奥斯卡影帝陨落“烂片之王” 凯奇:不愿加入漫威宇宙
信阳农专
精准管控|AIRIOT数字油库智能化解决方案
今日热门!k8s对外服务之Ingress
开发中用到的配置文本文件
当前通讯!Python定制对象的独有特征
动态:3.8节大促:腾讯视频、QQ、绿钻、B站、百度网盘会员五折起
看点:钢琴弹出的声音怎么这么好听啊?离不开这四大件!
我国多地将体验超前温暖:郑州要破29℃ 但秋裤还不能脱
环球速看:当下最完美全面屏!京东方宣布独家供应努比亚Z50 Ultra
丧心病狂!这些人利用AI声音冒充亲人诈骗1100万美元
5步绘制高质量流程图
世界消息!朴素贝叶斯与Laplace平滑
一篇搞懂cookie和session
【环球速看料】生成你的自定义密码本Python
快看点丨8个月宝宝像打冷颤一样头抖_婴儿偶尔腿打颤正常吗
被批恶俗烂梗 鸡你太美商标无一注册成功:超20枚被判无效
即时看!AMD Yes!FSR 2.2插件已适用于虚幻引擎
环球焦点!V12自吸发动机+三电机!兰博基尼旗舰跑车动力信息公布:超千匹
天天即时看!招不到人!新加坡软件工程师月薪基本都超4.6万 跑不赢房租
微动态丨今晚打老虎!周杰伦用《赌侠2》梗回应周星驰喊话
当前快播:记一次影视cms黑盒CSRF->RCE