pt-ioprofile

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: pt-ioprofile是属于percona-toolkit中的一个工具,用strace和lsof来查监视进程的IO情况并打印表文件和活动IO,默认监视mysqld进程30秒警告和风险:pt-ioprofile可能会冻结服务,crash进程,是进程变得更糟糕,或者使进程休眠。

pt-ioprofile是属于percona-toolkit中的一个工具,用strace和lsof来查监视进程的IO情况并打印表文件和活动IO,默认监视mysqld进程30秒


警告和风险:

pt-ioprofile可能会冻结服务,crash进程,是进程变得更糟糕,或者使进程休眠。

pt-ioprofile是一个有干扰的工具,一般不用在生产环境中,除非你能理解和接受风险。


格式:

pt-ioprofile [OPTIONS] [FILE]


默认参数:

--aggregate       The aggregate function, either C<sum> or C<avg>.


--cell            The cell contents.

有三个值:

count  Count of I/O operations

sizes  Sizes of I/O operations

times  I/O operation timing(默认)


--group-by        The group-by item.

有三个值:

all       Summarize into a single line of output

filename  One line of output per filename (默认)

pid       One line of output per process ID


  --profile-pid     The PID to profile, overrides L<"--profile-process">.

#指定监控的进程号

  --profile-process The process name to profile.

指定监控的进程名

  --run-time        How long to profile.

#监控时长,默认30S

  --save-samples    Filename to save samples in; these can be used for later  analysis.


例:


#用sysbench插入测试数据

[root@Darren1 lua]# sysbench --time=20 --threads=4  --mysql-host=localhost --mysql-user=root --mysql-password='147258' --mysql-db=sbtest --tables=10 --table_size=100000  /home/mysql/sysbench-1.0.3/src/lua/oltp_insert.lua prepare


#监控mysqld进程相关的IO:

[root@Darren1 sysbench-1.0.3]# pt-ioprofile --run-time=5

Thu Jun  1 22:46:29 CST 2017

Tracing process ID 5875

     total      pread       read     pwrite      write      fsync       open      close      lseek  ftruncate filename

  4.774836   2.253120   0.000000   1.855958   0.000000   0.665758   0.000000   0.000000   0.000000   0.000000 /data/mysql/mysql3306/data/ibdata1

  0.873437   0.000000   0.000000   0.000000   0.293659   0.000000   0.000000   0.000000   0.000045   0.579733 /data/mysql/mysql3306/data/innodb_status.5875

  0.615918   0.000000   0.000000   0.000000   0.000000   0.615918   0.000000   0.000000   0.000000   0.000000 /data/mysql/mysql3306/data/undo001

  0.420569   0.420518   0.000000   0.000000   0.000000   0.000051   0.000000   0.000000   0.000000   0.000000 /data/mysql/mysql3306/data/undo002

  0.224583   0.000000   0.000000   0.000000   0.000000   0.224583   0.000000   0.000000   0.000000   0.000000 /data/mysql/mysql3306/data/sbtest/sbtest4.ibd

  0.033272   0.000000   0.033259   0.000000   0.000000   0.000000   0.000000   0.000000   0.000013   0.000000 /data/mysql/mysql3306/logs/mysql-bin.000035

  0.028929   0.000000   0.000000   0.000000   0.000000   0.028929   0.000000   0.000000   0.000000   0.000000 /data/mysql/mysql3306/data/mysql/innodb_index_stats.ibd

  0.025752   0.000000   0.000000   0.000000   0.000000   0.025752   0.000000   0.000000   0.000000   0.000000 /data/mysql/mysql3306/data/sbtest/sbtest1.ibd

  0.007142   0.000000   0.000000   0.000000   0.000000   0.007142   0.000000   0.000000   0.000000   0.000000 /data/mysql/mysql3306/data/undo003

  0.006129   0.000000   0.000000   0.000318   0.000000   0.005811   0.000000   0.000000   0.000000   0.000000 /data/mysql/mysql3306/data/ib_logfile0

  0.004302   0.000000   0.000000   0.000000   0.000000   0.004302   0.000000   0.000000   0.000000   0.000000 /data/mysql/mysql3306/data/sbtest/sbtest2.ibd

  0.000350   0.000000   0.000152   0.000000   0.000000   0.000000   0.000119   0.000079   0.000000   0.000000 /dev/urandom

  0.000180   0.000000   0.000000   0.000000   0.000180   0.000000   0.000000   0.000000   0.000000   0.000000 /data/mysql/mysql3306/data/general.log

  0.000135   0.000000   0.000000   0.000000   0.000000   0.000135   0.000000   0.000000   0.000000   0.000000 /data/mysql/mysql3306/data/sbtest/sbtest3.ibd

  0.000053   0.000000   0.000000   0.000000   0.000000   0.000053   0.000000   0.000000   0.000000   0.000000 /data/mysql/mysql3306/data/mysql/innodb_table_stats.ibd

  0.000030   0.000000   0.000000   0.000000   0.000000   0.000000   0.000000   0.000000   0.000030   0.000000 /data/mysql/mysql3306/tmp/ib49MzXQ

  0.000024   0.000000   0.000000   0.000000   0.000024   0.000000   0.000000   0.000000   0.000000   0.000000 /data/mysql/mysql3306/data/error.log


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
6月前
【Simulink】报错:Size mismatch (size [2 x 1] ~= size [1 x 1]). The size to the left is the size of the l
【Simulink】报错:Size mismatch (size [2 x 1] ~= size [1 x 1]). The size to the left is the size of the l
|
关系型数据库 MySQL
pt-table-checksum原理详解
环境 MySQL: MySQL 5.6.27 OS: centos 6.6 tool: pt-table-checksum 2.2.15 它能做什么 业界最流行的MySQL主从数据对比工具,数据一致性检测最好的的工具,没有之一 如何使用 ./pt-table-che
7471 0
|
算法 C# C++
for (int i = 0; i < v.size() - 1; i++)
for (int i = 0; i < v.size() - 1; i++)
The Double Linknode for Linear table | Data
The some code in Data book (5th Edition) from the 54 page to 55 page
94 0
|
编译器
relocation value does not fit in 26 bits (offset: 0x10, type: 1)
relocation value does not fit in 26 bits (offset: 0x10, type: 1)
199 0
|
网络安全 Python
pwnable passcode 10pt
题目在 ssh passcode@pwnable.kr -p2222 (pw:guest) 先看passcode.c: #include #include void login(){ int ...
889 0
|
调度
pt-summary的使用
pt-summary 打印出来的信息包括:CPU、内存、硬盘、网卡等信息,还包括文件系统、磁盘调度和队列大小、LVM、RAID、网络链接信息、netstat 的统计,以及前10的负载占用信息和vmstat信息。
315 0
|
SQL 索引
pt-query-digest
pt-query-digest 可以用来分析binlog、General log、slowlog,也可以通过show processlist或者通过tcpdump抓取的MySQL协议数据来进行分析 用法: (1)直接分析slow日志:  pt-query-digest INDEX01184W-slow.
1287 0
|
关系型数据库 MySQL
pt-kill
pt-kill 是属于percona-toolkit中的一个工具,作用是kill mysql的连接,pt-kill连接mysql,通过show processlist获得查询. 参数: --kill #kill mysql的连接 --busy-time=m   #匹配运行时...
1062 0