一、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秒更新一次数据,默认1s iotop –d 5
-p PID 列出监控的进程,默认全部 iotop –p 3313(仅监控3313进程)
-u USER 列出需要监控的用户,默认所有用户 iotop –u oracle
   

iotop的快捷键:

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

r         :反转排序结果

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

a        :显示累积使用量

q        :退出

三、iotop工具展示

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

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

TID  :线程编号

PRIO :未知

USER:用户信息

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

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

SWAPIN     : swap空间使用百分比

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

COMMAND  :进程发起程序名

四、iotop使用测试

(1)写数据模拟

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

(2)读数据模拟

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

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

【完】

【Linux资源管理】iotop命令监控磁盘使用情况的更多相关文章

  1. Linux/Unix shell 脚本监控磁盘可用空间

    Linux下监控磁盘的空闲空间的shell脚本,对于系统管理员或DBA来说,必不可少.下面是给出的一个监控磁盘空间空间shell脚本的样本,供大家参考. 1.监控磁盘的空闲空间shell脚本 robi ...

  2. linux实现shell脚本监控磁盘内存达到阈值时清理catalina.out日志

    想在服务器上写一个shell脚本,在磁盘使用率达到80%时,自动清理掉一些没有用的日志文件,根据这个想法,在生产环境上写了一个以下脚本,按照该流程,可实现在linux环境做一个定时任务来执行shell ...

  3. iotop实时监控磁盘io

    介绍 Linux下的IO统计工具如iostat, nmon等大多数是只能统计到per设备的读写情况, 如果你想知道每个进程是如何使用IO的就比较麻烦. iotop 是一个用来监视磁盘 I/O 使用状况 ...

  4. Linux 使用 free 命令查看内存使用情况

    1.free 命令的选项 使用 free 命令查看服务器内存使用情况. free [-b|-k|-m|-g|-h] [-l] [-o] [-t] [-s delay] [-c count] [-V] ...

  5. Linux下top命令监控性能状态

    1.性能分析因素:CPU.内存.网络.磁盘读写 2.系统对应的应用类型主要分为以下两种: IO Bound:一般都是高负荷的内存使用以及存储系统,IO范畴的应用就是一个大数据处理的过程:通常数据库软件 ...

  6. Linux中df命令查询磁盘信息和fdisk命令分区的用法

    df - 报告文件系统磁盘空间的使用情况  总览 df [OPTION]... [FILE]... POSIX 选项: [-kP] GNU 选项 (最短方式): [-ahHiklmPv] [-t fs ...

  7. 【Linux】dd命令进行磁盘备份

    运用dd命令,将/dev/sdb磁盘中所有的数据全部备份到/dev/sdc磁盘上,需要的命令如下 dd  if=/dev/sdb of=/dev/sdc bs=1024k 说明,if是需要备份的磁盘  ...

  8. Linux如何查看文件系统(磁盘使用情况)

    查看磁盘剩余空间: df -Th 用法:df [选项]… [文件]… 显示每个<文件>所在的文件系统的信息,默认是显示所有文件系统. 长选项必须用的参数在使用短选项时也是必须的. -a, ...

  9. linux下top命令查看cpu占用情况

    可以通过 top 命令来查看 CPU 使用状况.运行 top 命令后,CPU 使用状态会以全屏的方式显示,并且会处在对话的模式 -- 用基于 top 的命令,可以控制显示方式等等.退出 top 的命令 ...

随机推荐

  1. php里单引和双引的用法区别和连接符(.)

    " "双引号里面的字段会经过编译器解释,然后再当作HTML代码输出. ' '单引号里面的不进行解释,直接输出. 例如: $abc='my name is tome'; echo $ ...

  2. Grunt入门学习之(2) -- Gruntfile的编写

    Gruntfile由以下几部分构成: "wrapper" 函数 项目与任务,目标配置 加载grunt插件和任务 自定义任务 1.wrapper函数(包装函数) 每一个 Gruntf ...

  3. ubuntu桌面安装常用软件&及常见问题

    自己从windows转向ubuntu桌面开发,根据需求安装以下文件: ubuntu 桌面版下载:http://www.ubuntu.org.cn/download/desktop 有的公司设置静态ip ...

  4. centos 7.2 Apache+mysql+php step by step备忘

    1. 如何允许laravel程序执行sudo shell脚本? chmod u+w /etc/sudoers ; echo "apache ALL=(ALL) NOPASSWD:ALL&qu ...

  5. 机器学习入门线性回归 岭回归与Lasso回归(二)

    一 线性回归(Linear Regression ) 1. 线性回归概述 回归的目的是预测数值型数据的目标值,最直接的方法就是根据输入写出一个求出目标值的计算公式,也就是所谓的回归方程,例如y = a ...

  6. webpack笔记一 起步

    webpack笔记一 起步 安装 对于大多数项目,我们建议本地安装(--save-dev).这可以在引入突破式变更(breaking change)版本时,更容易分别升级项目. 起步 初始化项目 mk ...

  7. JavaScript学习---JavaScript基础知识

    JavaScript的引入方式 JavaScript的引入方式: 1.直接在script里面写: 2.使用<script src="JS的文件位置"> {#1 直接编写 ...

  8. 沉淀再出发:java的文件读写

    沉淀再出发:java的文件读写 一.前言 对于java的文件读写是我们必须使用的一项基本技能,因此了解其中的原理,字节流和字符流的本质有着重要的意义. 二.java中的I/O操作 2.1.文件读写的本 ...

  9. python 反转字符串 [::-1]的问题

    >>> a = '12345' >>> a[:-1]'1234' -1表示最后一个,所以取第一个到最后且不包含最后一个 >>> a[1:4:2]' ...

  10. redis下的adlist

    //adlist.h #ifndef __ADLIST__H__ #define __ADLIST__H__ typedef struct listNode_ { struct listNode_ * ...