Quick and Dirty MySQL Performance Troubleshooting
Quick and Dirty MySQL Performance Troubleshooting
Author:Jeremy Zawodny
from: his Blog
如何快速简单进行MySQL 的Performance Troubleshooting呢,Jeremy提供了以下思路和经验:
一,检查是否是硬件瓶颈
使用工具:top vmstat iostat
top - 看看是什么进程在消耗CPU,如果不是MySQL,那就单独找解决方案(限制使用或者迁移服务).如果是MySQL,可能就需要进一步检查.
vmstat - 查看CPU和内存的使用情况,主要是在峰值时CPU wio的数值.
iostat - 查看磁盘子系统繁忙情况,观察Blk_wrtn/s和Blk_read/s 数值.
二,检查MySQL
需要快速检查并主要关注的是:
1,当前每秒有多少查询量被处理
使用 SHOW PROCESSLIST 命令 或者 SHOW GLOBAL STATUS 查看.
还有可以通过一些工具,比如:
innotop
2,当前有多少客户端连接
3,当前有多少慢查询
打开mysql slow query log 以及配置long_query_time 参数值
4,是否有什么异常日志
做完以上步骤之后,接着就分析数据库引擎的状态数据,现在多数都是选择InnoDB,所以查看命令可以用 SHOW ENGINE INNODB.最需要关心的是输出最后几行,一般来说缓冲池的命中率越高越好.
最后Jeremy表示,MySQL 多数故障或者性能下降发生之前,通过定期的执行以上操作,以及完善自身的监控系统,和做好日常状态统计,就可以及时的发现并有针对性的去解决这些问题(比如升级硬件,修复应用BUG,优化MySQL参数等等).
相关日志:
- pure-ftpd MySQL on FreeBSD Dirty Howto
- Proftpd MySQL Quota Openssl On FreeBSD [Detailed]
- Linux System and Performance Monitoring(总结篇)
- Linux System and Performance Monitoring(CPU篇)
本文链接地址: http://www.sanotes.net/html/y2009/400.html


测试
测试Reply