一次巡检过程中发现数据库使用内存有些过量,innodb_buffer_pool_size 设置值为 20G ,但实际物理内存消耗为 37G ,总虚拟内存消耗达 42G ,直接导致监控报警,于是开启了一次内存使用探究之旅,整理出来和大家分享一下
巡检过程中发现mysql内存使用过量
下面是 top 出来的信息,只截取了关键部分
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
14769 mysql 15 0 42.1g 37g 4792 S 58.1 79.5 25660:41 mysqld
innodb_buffer_pool_size 只设定了 20G
[root@abc ~]# grep innodb_buffer_pool_size /etc/my.cnf
innodb_buffer_pool_size = 20G
[root@abc ~]#
加上其它七七八八的参数总量也绝不会超过25G,那怎么会有那么大的差距呢?
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有