mysql内存报警_[MySQL生产环境] Innodb存储引擎内存报警问题处理过程

1 不停的收到email报警,内存值超过阀值80%了。

2 top下,mysqld进程确实占据了77.5%,再加上一些其他的辅助进程,内存usage到了81%也可以理解。

[xxx@00903 5.5.25a]$ top

top - 03:48:55 up 51 days, 17:11,  2 users,  load average: 0.09, 0.09, 0.11

Tasks: 202 total,   1 running, 201 sleeping,   0 stopped,   0 zombie

Cpu(s):  0.2%us,  0.1%sy,  0.0%ni, 98.8%id,  0.8%wa,  0.0%hi,  0.0%si,  0.0%st

Mem:  28743468k total, 28452540k used,   290928k free,   467048k buffers

Swap:  4194296k total,        0k used,  4194296k free,  4589332k cached

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND

23956 mysql     20   0 24.1g  21g 5408 S  1.0 77.5 390:56.59 mysqld    9 root      20   0     0    0    0 S  0.3  0.0 203:16.51 ksoftirqd/1

23971 mmmd      20   0  687m  64m 1960 S  0.3  0.2  73:53.23 perl

1 root      20   0 21444 1232  928 S  0.0  0.0   1:29.37 init

2 root      20   0     0    0    0 S  0.0  0.0   0:00.44 kthreadd

3 看看free -m吧[xxx@00903 ~]$ free -m

total       used       free     shared    buffers     cached

Mem:         28069      27828        240          0        440

-/+ buffers/cache:      22820       5249

Swap:         4095          0       4095

[xxx@00903 ~]$

4 简要分析理解free -m参数值意义total: 28069,总内存大小。

used: 27828,已经使用过的内存大小。

free:240,剩余的内存大小。

total值是used+free的值总合:

mysql> select 27828+240;

+-----------+

| 27828+240 |

+-----------+

| 28068 |

+-----------+

1 row in set (0.00 sec)

-- 总和28068与28069差了一个1,可能是-m四舍五入造成的。

mysql>

shared 不同进程间用来进行数据交换的地方,一般都是0(多个进程共享的内存总额)。

cached:4568,经常被用在磁盘的I/O请求上,如果有多个进程都要访问某个文件,于是该文件便被做成cache以方便下次被访问,这样可提供系统性能。

我们监控的是-/+ buffers/cache:中的useed一项22820, 总内存大小是 28069,因此一计算,确实为81%

mysql>

mysql> SELECT 22828/28069;

+-------------+

| 22828/28069 |

+-------------+

| 0.8133 |

+-------------+

1 row in set (0.00 sec)

mysql>

而且-/+ buffers/cache中的后面的used+free的总合也与第一行的Mem的total值相等:

mysql> SELECT 22820+5249;

+------------+

| 22820+5249 |

+------------+

| 28069 |

+------------+

1 row in set (0.00 sec)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值