首页 > 数据库技术 > 详细

MySQL 内存监控

时间:2014-07-24 22:42:03      阅读:422      评论:0      收藏:0      [点我收藏+]

上一篇blog介绍了因为sql查询information_schema表而导致内存暴涨的case。

今天顺便做了一个thd内存的监控:

 

先来介绍下MySQL的内存:

  1. 线程内内存:thd->mem_root, 线程在执行sql的过程中,申请的内存从thd->mem_root进行分配,在sql结束的时候释放。

  2. 线程外内存:对象专有的mem_root; 比如,table, table_share,st_transactions等都有专有的mem_root。

 

所以: 对于sql引起的内存暴涨,可以监控thd->mem_root的变化情况。 但对于其它,比如创建的临时表等,需要另外监控。

在sql/sql_show.cc show processlist调用的函数中添加一个thd_size字段。

 

最终的结果如下:

  bubuko.com,布布扣

MySQL 内存监控,布布扣,bubuko.com

MySQL 内存监控

原文:http://www.cnblogs.com/xpchild/p/3866403.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!