mysql数据库内存告警_为MySQL数据库增加线程内存监控

news/2024/11/29 7:04:48/

使用MySQL中我经常发现mysqld的内存使用会涨的很快(Buffer Pool是大页分配的),以至于使用SWAP,到底Server层用了多少内存,没有一个监控机制,所以第一步我编写了个patch(基于5.6.6)来监控每个线程用了多少内存,一旦mysqld进程使用太多内存,就去看哪些线程用的多,杀掉这些线程。

打上补丁后的效果像这样:

This is the effect after patched:

2012-04-28-10-23-31.jpg

代码可以看patch

基本方法就是在my_malloc和my_free中增加回调函数,获取调用my_malloc和my_free函数的THD描述符,用THD中新加的malloc_size字段去记录申请和释放内存,其实my_realloc也应该去更新malloc_size,暂时还没加进去。

然后使用malloc_usable_size函数在free时判断指针申请了多少内存,在GCC 4.2以上可以使用malloc_size(pointor)去判断。

下一步我会分类监控,把每个线程sort_buffer/join_buffer/net_buffer等线程级内存都分类统计出来占用多少,方便更直观的监控。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget

官方微博

TechTarget中国


http://www.ppmy.cn/news/164032.html

相关文章

java内存一直在涨_java 内存一直增长,直到内存溢出

-vmargs -Xms256m -Xmx512m -XX:PermSize256M -XX:MaxPermSize512M -vmargs 说明后面是VM的参数,所以后面的其实都是JVM的参数了 -Xms256m JVM初始分配的堆内存 -Xmx512m JVM最大允许分配的堆内存,按需分配 -XX:PermSize256M JVM初始分配的非堆内存 -XX:…

VS2019 内存占用高

VS2019 内存占用高 在VS2019 16.1.3 中内存占用过高处理方式 在VS2019 16.1.3 中内存占用过高处理方式 我是用VS2019 开发 .net Framework 的应用, 在开发调试一段时间后发现内存占用快到2个G ! 在Windows 任务管理器中查看这个VS进程发现Node.js Server-Side 一个…

为什么SQLServer数据库内存会不断增加

当 SQL Server 数据库引擎在 Microsoft Windows NT 或 Windows 2000 上运行时,其默认内存管理行为并不是获取特定的内存量,而是在不产生多余换页 I/O 的情况下获取尽可能多的内存。为此,数据库引擎获取尽可能多的可用内存,同时保留…

linux调查java内存泄漏_记一次Java内存泄漏排查

起因: 最近新上线的服务内存(部署在linux平台)每天一天都会上涨一点点,现象如下图所示。想到每天要通过一个SO库与一个数据源进行TCP的连接与断开,于是便展开排查工作。 现象.jpg 因为不是紧急的线上问题,于是在开发站搭建环境进行问题重现。主站上面程序是每天9点进行连接…

固态硬盘能提高服务器内存吗,内存涨疯了!固态硬盘能替代内存吗?

原标题:内存涨疯了!固态硬盘能替代内存吗? Intel第八代酷睿处理器即将在10月5日上市,不过网友们讨论的最热门话题却是内存贵上天了,买得起CPU买不起内存啦!单条8G DDR4内存从299一路涨到829,天了…

python吃显卡还是内存条_Python 内存分配时的小秘密

作者:小小程序员 链接:https://zhuanlan.zhihu.com/p/87965987 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 Python 中的sys模块极为基础而重要,它主要提供了一些给解释器使用(或…

android—性能优化2—内存优化

文章目录 性能优化:工具:memory profilerLeakCanaryarthookepic 库 java内存管理机制java 内存回收机制Android内存管理机制Dalvik与 Art区别Low Memory Killer 内存抖动解决内存泄漏解决第一个内存泄漏点内存很大的bitmap第一个地方 生成二维码的时候每隔一定时间会动态创建二…

vue项目中的内存泄漏

vue中内存泄漏的问题 Q:前几天项目遇到了一个问题,访问页面导致内存不断上涨。 A:原因是在跳转路由销毁页面的时候,并没有释放内存。 接下来就开始查找资料,去排查到底是哪部分的问题,导致内存不释放。 以…