本节主要内容:
top命令统计CPU的利用率
一,问题分析
MySQL在Linux下是多线程的,而且只能将多个线程分布到一个CPU上。
因此,使用小型服务器,或者PC SERVER,多个CPU利用率并不高。
基本上有1~2个在使用。
本节分享下统计CPU的利用率的方法,供大家学习参考。
相关阅读:
查看Linux系统资源占用(top、free、uptime)
top命令显示内容的详细解释
二,shell脚本实现
1.输入 top -bn1 (b控制输出格式为文本格式,非交互格式)
[mysql@jbxue]$ top -bn1
2.输入top ,进入交互模式,为下一步设置输出格式做准备
[mysql@jbxue]$ top
然后输入 1
可以查看多个CPU利用率:
top - 21:40:51 up 25 days, 9:32, 1 user, load average: 0.15, 0.30, 0.33
Tasks: 101 total, 1 running, 96 sleeping, 0 stopped, 4 zombie
Cpu0 : 0.8% us, 0.3% sy, 0.0% ni, 98.4% id, 0.3% wa, 0.0% hi, 0.0% si
Cpu1 : 1.1% us, 0.2% sy, 0.0% ni, 98.6% id, 0.1% wa, 0.0% hi, 0.0% si
Cpu2 : 0.5% us, 0.1% sy, 0.0% ni, 99.4% id, 0.0% wa, 0.0% hi, 0.0% si
Cpu3 : 0.4% us, 0.1% sy, 0.0% ni, 99.5% id, 0.0% wa, 0.0% hi, 0.0% si
Cpu4 : 0.3% us, 0.1% sy, 0.0% ni, 99.5% id, 0.0% wa, 0.0% hi, 0.0% si
Cpu5 : 0.3% us, 0.1% sy, 0.0% ni, 99.6% id, 0.0% wa, 0.0% hi, 0.0% si
Cpu6 : 0.3% us, 0.1% sy, 0.0% ni, 99.6% id, 0.0% wa, 0.0% hi, 0.0% si
Cpu7 : 0.2% us, 0.1% sy, 0.0% ni, 99.7% id, 0.0% wa, 0.0% hi, 0.0% si
3.保存当前输出格式的参数(配置输出)
在2的基础上按W ,然后按ctri+c
保存退出
按q
(会在/home/mysql 下有.toprc文件)
4.编写 shell 程序cpu.sh
#!/bin/bash
while true
do
top -bcisSn1 >>cpu.log
sleep 10
done
5.部署 cpu.sh 程序
sh cpu.sh &
三.分析日志
cat cpu.log| grep cpu 等操作,就可以分析过去时间,各个cpu的利用率了。
这里省略…..,依个人爱好,输出,甚至可以把输出用cacti绘图出来。
四.删除配置文件
如果不想使用上述的top 输出格式,可以删除配置文件
rm /home/mysql/.toprc
有兴趣的话,可以cat下.toprc中的内容。
手机扫一扫
移动阅读更方便
你可能感兴趣的文章