第46问:MySQL 使用的文件句柄突增, 该如何诊断
2021/10/12 19:16:06
本文主要是介绍第46问:MySQL 使用的文件句柄突增, 该如何诊断,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
问
MySQL 使用的文件句柄数 突然增加, 我们该如何诊断
实验
我们接着宽油起一个数据库:
翻倍法造表 a :
将 a 表造的大一点:
给 a 表追加一列:
再造个表 b :
让我们来下一个 SQL :
在 SQL 执行的过程中, 观察 MySQL 的文件句柄数, 发现文件句柄在不断上升:
现在我们来诊断 为什么 MySQL 的文件句柄数会上升.
我们动用 perf , 来追踪 打开句柄的系统调用
然后我们调用 perf script , 经过一段等待后我们会得到不少结果, 我们摘取其中片段:
我们可以看到, 句柄的使用与 Hash Jo in 相关: Hash Join 过程中, 需要将 Probe Row 写入磁盘.
我们查找一下 MySQL Work Log (https://dev.mysql.com/worklog/task/?id=2241), 来理解一下 Hash Join 的设计:
赠送章节
我们还可以通过 performance_schema 来查看文件句柄的使用:
select * from performance_schema.file_instances;
输出如下:
我们可以看到这些句柄与 Hash Join 有关, 但具体与哪个步骤有关, 我们还是要通过 perf 才能分析.
关于 MySQL 的技术内容,你们还有什么想知道的吗?赶紧留言告诉小编吧!
这篇关于第46问:MySQL 使用的文件句柄突增, 该如何诊断的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-04-26MySQL查出时间比实际晚8小时的解决方案
- 2024-04-01JPA不识别MySQL的枚举类型
- 2024-03-30mysql数据库表卡死解决方法
- 2024-03-15MySQL多数据源笔记5-ShardingJDBC实战
- 2024-03-11natural join mysql
- 2024-03-11关于VS2017,VS2015 中利用 EF使用Mysql 不显示数据源问题解决方案
- 2024-02-26mysql 阿里云xb后缀备份文件恢复-icode9专业技术文章分享
- 2024-02-22docker mysql 5.7
- 2024-02-18从 20 多套 MySQL 到 1 套 TiDB丨骏伯网络综合运营管理平台应用实践
- 2024-02-07mysql 外键索引入门介绍,为什么工作中很少有人使用?