【Linux资源管理】iotop命令监控磁盘使用情况

一、iotop工具介绍

I/O可谓是数据库\服务器的最大瓶颈问题了,在使用top、nmon、zabbix、sar等工具监控I/O时,要么没有I/O监控(如top、zabbix),要么仅仅监控到磁盘层面(如nmon、sar)。然而,当服务器出现问题时,我们更想了解的是哪个进程占用了较多的I/O,这种情况下就可以使用iotop命令来监控。

redhat linux 5.5自带了iotop工具,无需手动安装。查看是否安装了iotop工具:

[root@OCP ~]# which iotop
/usr/sbin/iotop

如果要了解iotop如何使用,可以使用man命令:

[root@OCP ~]# man iotop

 

二、iotop工具用法

iotop [-选项]

选项有:

选项解释示例
-o只显示有I/O操作的进程或线程,即存在disk read或disk write。iotop -o
-b批量显示,无交互,主要用于记录到文件iotop -b >> iotop.txt
-n NUM显示NUM次,主要用于非交互模式iotop -b -n 3 >> iotop.txt
-d SEC间隔SEC秒更新一次数据,默认1siotop –d 5
-p PID列出监控的进程,默认全部iotop –p 3313(仅监控3313进程)
-u USER列出需要监控的用户,默认所有用户iotop –u oracle
  

 

iotop的快捷键:

左右箭头:改变排序,默认按照IO使用百分比排序

r         :反转排序结果

o        :只显示有I/O的进程和线程

a        :显示累积使用量

q        :退出

 

三、iotop工具展示

image

第一行是总的I/O统计信息,描述总的I/O读写情况。

第二行是列名称,从左到右依次是:

TID  :线程编号

PRIO :未知

USER:用户信息

DISK READ  :磁盘读,以对用户友好的方式显示

DISK WRITE:磁盘写,以对用户友好的方式显示

SWAPIN     : swap空间使用百分比

IO>           :IO使用百分比,“>”代表以IO排序,可以使用左右光标键调整使用哪一列来排序

COMMAND  :进程发起程序名

 

四、iotop使用测试

(1)写数据模拟

image

往数据库插入大量数据测试,可以看到,此时lgwr进程与dbwn还有arch进程磁盘写非常的高。但是无法看到用户进程信息。

(2)读数据模拟

对无索引的大表(2千万行)进行查询。SELECT * FROM   lijiaman.t_iotop  a WHERE  a.t_name = 'M';

image

可以看到用户进程消耗的IO非常的高,LOCAL=NO是oracle的直连用户进程。

 

【完】

转载于:https://www.cnblogs.com/lijiaman/p/10518000.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值