Innotop是一个优秀的命令行程序,类似于top命令可以用于监视在InnoDB引擎下运行的本地和远程 MySQL 服务器。Innotop具有许多功能和不同类型的模式/选项,能帮助监控MySQL性能的多个方面,并帮助数据库管理员来识别MySQL服务器的问题。如Innotop可以监控MySQL复制状态、用户统计信息、查询列表、innoDB缓冲区、innoDB/O信息、打开表、锁定表等。会定期刷新其数据,让用户可以看到更新的结果。
Innotop具有强大的功能和灵活性,不需要任何额外的配置,只需要从中断运行“Innotop”命令即可执行。
Linux中安装Innotop工具,Innotop在发行版的包管理器可用的话,可以直接使用包管理器来安转:
sudo apt install innotop [在Debian、Ubuntu 和 Mint上]
sudo yum install innotop [在RHEL/CentOS/Fedora和Rocky/AlmaLinux上]
如果发行版的软件包存储库中没有innotop,可以克隆Git存储库并按照指示来完成安装:
git clone https://github.com/innotop/innotop.git
cd innotop
然后,需要使用CPAN或者cpanminus安装一些Perl依赖项,如果没有安装cpanminus可以使用包管理器来进行安装:
sudo apt install cpanminus [在Debian、Ubuntu 和 Mint 上]
sudo dnf install cpanminus [在RHEL/CentOS/Fedora和Rocky/AlmaLinux上]
最后,使用 cpanminus 安装所需的 Perl 模块:
cpanm Term::ReadKey DBI DBD::mysql
安装依赖项后,可以使用以下命令运行Innotop:
perl innotop
先安装cpanminus,这是CPAN轻量级友好客户端,是Perl模块和软件的存储库,能简化Perl模块及其依赖项的安装:
sudo ap install cpanminus # 对于 Debian/Ubuntu
sudo yum install cpanminus # 对于 CentOS/RHEL
再安装以下Perl模块依赖项:
cpanm Term::ReadKey DBI DBD::mysql
再安装 Perl 模块依赖项。
cpanm Term::ReadKey DBI DBD::mysql
然后安装 Innotop:
sudo cpanm innotop
要启动innotop,只需在命令行中输入“ innotop ”并分别指定选项-u(用户名)和-p(密码),然后按 Enter。
# innotop -u root -p 'tecm1nt'
一旦连接到MySQL服务器,会看到类似于以下内容。
[RO] Dashboard (? for help) localhost, 61d, 254.70 QPS, 5/2/200 con/run/cac thds, 5.1.61-log
Uptime MaxSQL ReplLag Cxns Lock QPS QPS Run Run Tbls Repl SQL
可以继续按“?”获取更多命令行选项和用法的摘要。
Switch to a different mode:
A Dashboard I InnoDB I/O Info Q Query List
B InnoDB Buffers K InnoDB Lock Waits R InnoDB Row Ops
C Command Summary L Locks S Variables & Status
D InnoDB Deadlocks M Replication Status T InnoDB Txns
F InnoDB FK Err O Open Tables U User Statistics
Actions:
d Change refresh interval p Pause innotop
k Kill a query's connection q Quit innotop
n Switch to the next connection x Kill a query
Other:
TAB Switch to the next server group / Quickly filter what you see
! Show license and warranty = Toggle aggregation
# Select/create server groups @ Select/create server connections
$ Edit configuration settings \ Clear quick-filters
Press any key to continue
这个模式显示按读取次数排序的用户统计信息和索引统计信息:
CXN When Load QPS Slow QCacheHit KCacheHit BpsIn BpsOut
localhost Total 0.00 1.07k 697 0.00% 98.17% 476.83k 242.83k
此模式显示SHOW FULL PROCESSLIST的输出,类似于mytop 的查询列表模式。此功能不显示InnoDB信息,最适合一般用途。
When Load Cxns QPS Slow Se/In/Up/De% QCacheHit KCacheHit BpsIn BpsOut
Now 0.05 1 0.20 0 0/200/450/100 0.00% 100.00% 882.54 803.24
Total 0.00 151 0.00 0 31/231470/813290/188205 0.00% 99.97% 1.40k 0.22
Cmd ID State User Host DB Time Query
Connect 25 Has read all relay system u 05:26:04
以下命令可以显示InnoDB 的 I/O 统计信息、待处理 I/O、I/O 线程、文件 I/O和日志统计表。
____________________ I/O Threads ____________________
Thread Purpose Thread Status
0 insert buffer thread waiting for i/o request
1 log thread waiting for i/o request
2 read thread waiting for i/o request
3 write thread waiting for i/o request
____________________________ Pending I/O _____________________________
Async Rds Async Wrt IBuf Async Rds Sync I/Os Log Flushes Log I/Os
0 0 0 0 0 0
________________________ File I/O Misc _________________________
OS Reads OS Writes OS fsyncs Reads/Sec Writes/Sec Bytes/Sec
26 3 3 0.00 0.00 0
_____________________ Log Statistics _____________________
Sequence No. Flushed To Last Checkpoint IO Done IO/Sec
0 5543709 0 5543709 0 5543709 8 0.00
产科有关InnoDB 缓冲池、页面统计信息、插入缓冲区和自适应哈希索引的信息。数据从SHOW INNODB STATUS中获取。
__________________________ Buffer Pool __________________________
Size Free Bufs Pages Dirty Pages Hit Rate Memory Add'l Pool
512 492 20 0 -- 16.51M 841.38k
____________________ Page Statistics _____________________
Reads Writes Created Reads/Sec Writes/Sec Creates/Sec
20 0 0 0.00 0.00 0.00
______________________ Insert Buffers ______________________
Inserts Merged Recs Merges Size Free List Len Seg. Size
0 0 0 1 0 2
__________________ Adaptive Hash Index ___________________
Size Cells Used Node Heap Bufs Hash/Sec Non-Hash/Sec
33.87k 0 0.00 0.00
InnoDB 行操作、行操作杂项、信号量和等待数组表的输出。
________________ InnoDB Row Operations _________________
Ins Upd Read Del Ins/Sec Upd/Sec Read/Sec Del/Sec
0 0 0 0 0.00 0.00 0.00 0.00
________________________ Row Operation Misc _________________________
Queries Queued Queries Inside Rd Views Main Thread State
0 0 1 waiting for server activity
_____________________________ InnoDB Semaphores _____________________________
Waits Spins Rounds RW Waits RW Spins Sh Waits Sh Spins Signals ResCnt
2 0 41 1 1 2 4 5 5
____________________________ InnoDB Wait Array _____________________________
Thread Time File Line Type Readers Lck Var Waiters Waiting? Ending?
算统计数据,例如每秒查询次数,并以多种不同的模式显示出来。
QPS Commit_PS Rlbck_Cmt Write_Commit R_W_Ratio Opens_PS Tbl_Cch_Usd Threads_PS Thrd_Cch_Usd CXN_Used_Ever CXN_Used_Now
0 0 0 18163174 0 0 0 0 0 1.99 1.32
0 0 0 18163180 0 0 0 0 0 1.99 1.32
0 0 0 18163188 0 0 0 0 0 1.99 1.32
0 0 0 18163192 0 0 0 0 0 1.99 1.32
0 0 0 18163217 0 0 0 0 0 1.99 1.32
0 0 0 18163265 0 0 0
0 0 1.99 1.32
0 0 0 18163300 0 0 0 0 0 1.99 1.32 0 0 0 18163309 0 0 0 0 0 1.99 1.32
0 0 0 18163321 0 0 0 0 0 1.99 1.32
0 0 0 18163331 0 0 0 0 0 1.99 1.32
更多内容请继续阅读华纳云帮助中心!