查看那个进程消耗IO较大

如果是高版本我们可以使用iotop但是如果版本较低就没这么幸运了,当然我们可以使用如下命令进程查看


要先停掉syslog
/etc/init.d/syslog stop
echo 1 > /proc/sys/vm/block_dump

 dmesg | egrep "READ|WRITE|dirtied" | egrep -o '([a-zA-Z]*)' | sort | uniq -c | sort -rn | head

[root@localhost ~]# dmesg | egrep "READ|WRITE|dirtied" | egrep -o '([a-zA-Z]*)' | sort | uniq -c | sort -rn | head
   1794 mysqld
    789 kjournald
     92 pdflush
     28 mongod
      8 a
      5 awk
      3 dmesg

      2 head



不要忘记在抓完之后关掉block_dump和启动syslog
echo 0 > /proc/sys/vm/block_dump
/etc/init.d/syslog start




前面这一列数字就是对于的线程号,我们可以通过命令来查看详情:

[root@localhost ~]# ps -Lef |grep 1794
mysql    11662 11447 11794  0  326 Jul27 ?        00:00:00 /usr/local/mysql/libexec/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var21004 --user=mysql --server-id=21004 --log-slow-queries=/usr/local/mysql/var21004/slowquery.log --log=/usr/local/mysql/var21004/mysql.log --skip-external-locking --skip-name-resolve --back_log=256 --key_buffer_size=2048M --table_cache=512K --max_allowed_packet=16M --table_open_cache=256 --sort_buffer_size=16M --myisam_sort_buffer_size=512M --net_buffer_length=1M --read_buffer_size=8M --read_rnd_buffer_size=4M --join_buffer_size=16M --thread_stack=512K --query_cache_size=128M --thread_concurrency=16 --character-set-server=GBK --wait-timeout=31536000 --max_connections=10000 --max_connect_errors=10000000 --long_query_time=1 --log-error=/usr/local/mysql/var21004/localhost.err --pid-file=/usr/local/mysql/var21004/localhost.pid --socket=/usr/local/mysql/tmp/mysql-21004.sock --port=21004
root     31156 31113 31156  0    1 11:32 pts/0    00:00:00 grep 1794


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值