现象是:生产环境的内存使用率经常超过85%阀值,nagios不停报警,以往的处理办法就是restart,一切memery使用率回到65%。还得研究找到问题所在,所以在测试环境进行问题测试分析。
1 先查看问题当前的内存使用情况:
[novamysqladminlt@test-by7db2 ~]$ free -m
total used free shared buffers cached
Mem: 32108 24792 7316 0 824 11019
-/+ buffers/cache: 12948 19159
Swap: 32767 42 32725
[novamysqladminlt@test-by7db2 ~]$
2 去运行一个无索引的消耗资源的sql如下mysql> select * from tb01 where GROUP_ID>100 limit 10000000, 1000;
3 去运行一个无索引的消耗资源的sql如下mysql> select * from tb01 where GROUP_ID>100 limit 10000000, 1000;
4 然后去检查内存使用情况:
[mysql@test-by7db2 5.5.25a]$ free -m
total used free shared buffers cached
Mem: 32108 25358 6750 0 824 10976
-/+ buffers/cache: 13557 18550
Swap: 32767 44 32723
[mysql@test-by7db2 5.5.25a]$ free -m
total used free shared buffers cached
Mem: 32108 25399 6709 0 824 10976
-/+ buffers/cache: 13598 18510
Swap: 32767 44 32723
[mysql@test-by7db2 5.5.25a]$ free -m
total used free shared buffers cached
Mem: 32108 26807 5301 0 824 10943
-/+ buffers/cache: 15039 17069
Swap: 32767 44 32723
[mysql@test-by7db2 5.5.25a]$ free -m
total used free shared buffers cached
Mem: 32108 26841 5267 0 824 10939
-/+ buffers/cache: 15077 17031
Swap: 32767 44 32723
[mysql@test-by7db2 5.5.25a]$ free -m
total used free shared buffers cached
Mem: 32108 26862 5246 0 824 10931
-/+ buffers/cache: 15106 17002
Swap: 32767 44 32723
[mysql@test-by7db2 5.5.25a]$ free -m
total used free shared buffers cached
Mem: 32108 26894 5213 0 824 10931
-/+ buffers/cache: 15139 16969
Swap: 32767 44 32723
[mysql@test-by7db2 5.