龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 数据库类 > MySQL 技术 >

MySQL数据库负荷较高时的原因排查思路

时间:2011-04-12 23:18来源:未知 作者:admin 点击:
分享到:
MySQL数据库 的 负荷较高 时,可能的原因有哪些呢?该如何排查呢?本文我们就来介绍一下MySQL数据库负荷较高时的排查思路,接下来就让我们来一起了解一下这一过程吧。 排查思路如

MySQL数据库负荷较高时,可能的原因有哪些呢?该如何排查呢?本文我们就来介绍一下MySQL数据库负荷较高时的排查思路,接下来就让我们来一起了解一下这一过程吧。

排查思路如下:

1:内存是否占用较多swap分区。

2:i/o压力大不大,最好把top显示的信息贴出来。

3:数据库引擎是myisam还是innodb。

4:如果是i/o压力,反解binlog分析写入频繁度。

5:如果不是i/o压力,采样查询请求分析查询频繁度。

show status;查看具体的状态值,然后对查出的状态值进行分析,找出原因并解决。

用nmon监控一下,看看磁盘IO,用loadrunner强压一段时间。没有1秒以上的慢查询,不代表索引就没问题。解决好索引问题,负荷应该会降低很多。

iostat -dx 1观察磁盘读写情况,如果有十几M的读/写就要留意了。

vmstat 1看看CPU 的Idle情况 ,如果idle很低,有可能是MySQL的语句很耗CPU。

top看看有啥大损耗的进程否。

总结:

1、首先使用最基本的top看看CPU忙在哪里,是iowait严重,还是usr用的多,还是被sys消耗了。

2、再根据问题使用针对新监测工具如:vmstat,dstat 等工具看看系统最繁忙的是什么设备。

3、最后再不断深入,将问题解决。

关于MySQL数据库负荷较高的排查思路就介绍到这里了,如果您想了解更多关于MySQL数据库的知识,可以看一下这里的文章:http://database.51cto.com/mysql/,相信一定可以带给您收获的!


精彩图集

赞助商链接