推荐使用mtop

mtop是一个类似于unix系统下top命令的小工具,针对mysql的运行情况进行动态显示。

1.可去官站下载

2.安装可参考其安装包中的README文件

安装此工具之前,有些软件环境需要布置:

mtop requires the following perl modules:

    Module        Available At
    ------------  --------------------------------------------------------
    Curses        http://www.cpan.org/authors/id/WPS
    DBI           Distributed as Bundle::DBI: http://www.cpan.org/authors/id/TIMB
    DBD::mysql    http://www.cpan.org/authors/id/JWIED
    Getopt::Long  (Distributed with Perl 
5 )
    Net::Domain   Part of libnet: http://www.cpan.org/authors/id/GBARR/

 可以先进行安装,如果少什么,它会提示的。我少的是Curses与DBD::mysql。

2.1 安装Curses 

说起来这个东东其它是比较难安装的,方法有很多,但是有时候能折腾好长时间。为了节省时间,我一般选择使用CPAN或yum安装。

使用CPAN安装时遇到了一些麻烦,没有make成功。所以直接使用yum(第三方源)

 安装导入第三方源:

# wget http://packages.sw.be/rpmforge-release/rpmforge-release- 0.5.2 - 2 .el5.rf.x86_64.rpm   
# rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt 
# rpm -k rpmforge-release-
0.5.2 - 2 .el5.rf.x86_64.rpm 
# rpm -ivh  rpmforge-release-
0.5.2 - 2 .el5.rf.x86_64.rpm 
# yum install perl-Curses
 

2.2 DBD::mysql 使用CPAN安装:

# perl -MCPAN -e shell 
cpan> install DBD::mysql 

2.3 安装mtop

# cd mtop- 0.6.6  
# perl Makefile.PL
# make && make install

 

参考:

http://mtop.sourceforge.net/ 

http://fosschef.com/2011/03/making-pseudo-screensaver-under-cli/ 

转载于:https://www.cnblogs.com/minglog/archive/2011/05/11/2043050.html

`mtop`(MySQL Top)是一个用于实时监控 MySQL 数据库服务器状态的命令行工具,其功能类似于 Linux 系统中的 `top` 命令。它能够动态展示当前正在运行的 SQL 查询、连接状态、查询执行时间、客户端 IP 地址等信息,是数据库管理员和开发人员排查性能瓶颈、优化 SQL 语句的重要工具之一[^1]。 ### mtop 的主要用途 1. **监控实时查询状态** `mtop` 可以显示当前正在运行的 SQL 查询,包括查询语句本身、执行时间、客户端地址、用户以及当前的状态(如 Sending data、Sorting result 等)。 2. **识别长查询或慢查询** 通过 `mtop` 的界面可以快速识别出执行时间较长的查询,帮助进行性能调优。 3. **终止异常或耗时查询** 用户可以在 `mtop` 界面中选择某个查询线程并发送 `KILL` 命令,强制终止该查询的执行,避免对数据库造成进一步影响。 4. **查看服务器性能统计信息** 包括连接数、缓存命中率、InnoDB 状态、查询缓存使用情况等,有助于全面了解数据库运行状况。 5. **提供优化建议** `mtop` 会根据当前的查询状态和系统资源使用情况提供一些优化建议,例如调整配置参数等。 ### 使用方法 #### 安装 `mtop` 通常不是系统默认安装的工具,需要手动安装。可以从其官方网站下载并安装: ```bash wget http://mtop.sourceforge.net/software/releases/mtop-0.6.6.tar.gz tar -zxvf mtop-0.6.6.tar.gz cd mtop-0.6.6 perl Makefile.PL make make install ``` 安装完成后,确保 MySQL 的用户具有 `PROCESS` 权限,以便 `mtop` 能够访问线程信息。 #### 启动 mtop 启动 `mtop` 的基本命令如下: ```bash mtop --user=root --password=your_password --host=localhost ``` 其中: - `--user` 指定连接 MySQL 的用户名; - `--password` 指定对应的密码; - `--host` 指定 MySQL 服务器的地址(默认为 `localhost`)。 #### 常用操作 在 `mtop` 界面中,可以使用以下按键进行操作: - `k`:选择一个线程并终止它; - `q`:退出程序; - `r`:刷新显示; - `h`:显示帮助信息; - `d`:切换显示详细信息模式; - `f`:过滤查询结果(例如按用户、IP 等)。 #### 示例输出 ```text MySQL Threads: 5 running, 25 total Queries: 12345/s, 67890 total Threads: 25 active, 0 sleeping Query Cache Hitrate: 95% InnoDB Buffer Pool Hitrate: 99% ... ``` 该输出展示了当前数据库的运行状态,包括线程数、查询频率、缓存命中率等关键指标。 ### 注意事项 - 使用 `mtop` 需要对 MySQL 有一定的了解,尤其是 SQL 优化和系统资源管理方面; - 在生产环境中使用 `mtop` 时,应确保具有足够的权限,并避免频繁刷新或误操作; - `mtop` 对数据库性能影响较小,但仍建议在排查问题时使用,而非长期运行。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值