JAVA、PHP、前端、APP、网站开发 - 开发技术学习

文档标签: cpu使用率

linux监控cpu使用率,shell编程检测监控mysql的CPU占用率.

shell编程很强大! 网站访问量大的时候mysql的压力就比较大,当mysql的CPU利用率超过300%的时候就不能提供服务了,近乎卡死状态,这时候最好的方法就是重启mysql服务。由于这种事具有不可预见性,我们不知道什么时候mysql的占用率达到300%,还是写个程序定期判断比较靠谱。 学了shell编程,写了下面的脚本: #!/bin/bash cpu=`ps aux | grep 'mysqld$' | cut -d " " -f6 | cut -d. -f1` if [ $cpu -gt 300 ] then service mysql restart && date >> /tmp/mysql.log fi   稍微解释一下。首先执行"ps aux"命令获取所有系统进程的状态信息,包括CPU,内存等,如下图: 然后通过管道将信息传送给grep,$就是正则表达式结尾的意思,从所有的进程中找到以“mysqld”结尾的进程,其实就是mysql...

shell报错:"[: =: unary operator expected".

在计算apache占用cpu率的时候写了一脚本,以前没有接触过,由于读图网租用的服务cpu总是超频,所以想当 apache cpu使用率超过好多的时候就重启. 网上我看到也有现成 计算apache cpu使用率的sh文件下载,但是感觉自己写好一点,毕竟经常使用到服务器的,总得会点shell脚本吧! shell脚本报错:"[: =: unary operator expected" 在匹配字符串相等时,我用了类似这样的语句: if [ $STATUS == "OK" ]; then echo "OK"fi在运行时出现了 [: =: unary operator expected 的错误,就一直找不到 原因,尝试了删除等号两侧的空格和括号里的空格都不管用,最后baidu了一下,才找到原因。把语句改成这样就不会出错了 :if [[ $STATUS = "OK" ]]; then echo "OK"fi究其原因,是因为如果变量STATUS值为空,那么就成了 [ = "OK"] ,显 然 [ 和 "OK" 不相等并且缺...

站点声明:部分内容源自互联网,为传播信息之用,如有侵权,请联系我们删除。

© Copyright 2011-2024 www.kfju.com. All Rights Reserved.
超级字帖 版权所有。蜀ICP备12031064号