innotop-数据库性能动态查看工具

栏目: 数据库 · Mysql · 发布时间: 6年前

innotop-数据库性能动态查看工具

Innotop 是一款十分强大的 MySQL 监控工具,用 perl 所写,通过文本模式展示 MysQL 服务器和 Innodb 的运行状况。

安装 innotop

下载地址 https://github.com/innotop/innotop

Github 上提供两种版本 一种是开发版 innotop-master ), 一种是稳定版 innotop-gtid 。在这里,我们使用的是开发版。

注意: 网上提供的下载地址是 http://code.google.com/p/innotop/ ,但这个是原先的维护地址,该项目现已迁移到 Github 上,而且, innotop-1.9.0.tar.gz 这个版本也测试了下( google code 上面的最新版本是 1.9.1 ),很多功能都无法使用,可能与 MySQL 的版本有关,建议还是直接从 Github 上下载。

# unzip innotop-master.zip

# cd innotop-master

# perl Makefile.PL

Checking if your kit iscomplete...

Looks good

Warning: prerequisiteTerm::ReadKey 2.1 not found.

Writing Makefile for innotop

报以上错误 缺少 ReadKey 包。

# yum search ReadKey   -- 注意 基本上缺失的 Perl Module 都可以通常 yum 获取

Loaded plugins:fastestmirror

Loading mirror speedsfrom cached hostfile

* base: centos.ustc.edu.cn

* extras: centos.ustc.edu.cn

* updates: centos.ustc.edu.cn

=================================================N/S matched: ReadKey ==================================================

perl -TermReadKey.x86_64 :A perl module for simple terminalcontrol

Name and summary matches only, use "searchall" for everything.

yum install -yperl-TermReadKey

yum install perl-Time-HiRes

#perl Makefile.PL

Writing Makefile for innotop

#make

#make test

# make install

cp innotop blib/script/innotop

/usr/bin/ perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/innotop

Manifying blib/man1/innotop. 1

Installing /usr/local/share/ man /man1/innotop. 1

Installing /usr/local/bin/innotop

Appending installation info to /usr/lib64/perl5/perllocal.pod

如何使用 Innotop

首先我们通过 innotop --help 查看其常见的启动参数

# innotop --help

Usage: innotop <options> <innodb-status- file >

--[no]color   -C   Use terminal coloring (default)

--config      -c   Config file to read

--count            Number ofupdates before exiting

--delay       -d   Delay between updates in seconds

--help             Show this helpmessage

--host        -h   Connect to host

--[no]inc     -i   Measure incremental differences

--mode        -m   Operating mode to start in

--nonint      -n   Non-interactive, output tab-separated fields

--password    -p   Password to use for connection

--port        -P   Port number to use for connection

--skipcentral -s   Skip readingthe central configuration file

--socket      -S   MySQL socket to use for connection

--spark            Length ofstatus sparkline (default 10 )

--timestamp   -t   Print timestamp in -n mode ( 1 :per iter; 2 : per line)

--user        -u   User for login if not current user

--version          Output versioninformation and exit

-- write       - w   Write running configuration into home directory if no config files were loaded

其中,

-d :多久时间更新一次

-h :连接的主机名

-p :连接的端口

-S socket 的位置

-u 连接的用户

熟悉 MysQL 的童鞋不难理解。

登录进来后 默认是 Dashboard Innotop 支持多种模式, Dashboard 只是其中一种模式。通过 “?” 键我们可以查看所有模式

innotop-数据库性能动态查看工具

通过上述字母可切换到不同的状态下。

如何查看 innotop 的文档

1. #man innotop

2. #perldoc innotop

如何监控多个 MySQL 服务器

有两种方式

一、直接在 innotop 交互式界面中添加 步骤如下

# innotop

进入到交互式界面后 点击 @ 会进入到连接配置界面

innotop-数据库性能动态查看工具

下面开始填写,主要有以下几项:

innotop-数据库性能动态查看工具

说明如下

Chooseconnections for this mode 选择连接 如果连接不存在 则手动创建。所以下面会有提示 “There is no connection called'master26',create it?:”

填写 y ,然后回车,会提示填写 DSN string ,按格式来即可。

其中在 Enter password 这一项需要注意,你输入密码的时候光标没有动,但实际上它是有输入,输入完毕,直接回车即可。

对于该种方法,简单,在监控机器较少的情况下,比较适用,但该方法的弊端在于一旦退出 innotop ,所有的配置信息都会丢失,重新进入,需重新配置。

所以 推荐的方法如下。

二、利用配置文件

# innotop--write 进入交互式界面后退出。会在当前目录下生成一个 .innotop/innotop.conf

# ls .innotop/

innotop.conf  plugins

# vim.innotop/innotop.conf 

该配置文件中有关连接的配置信息,默认有一个 localhost

[connections]

localhost=user= have_user= have_pass=dsn=DBI:mysql:;host=localhost;mysql_read_default_group=client savepass=dl_table=test.innotop_dl

[/connections]

当然 这个对我们编辑自己的配置信息没有多大用处 可以删除掉。

在此 可根据第一种方式添加一个 connection 信息 然后根据该信息进行相应的编辑。

以第一种方式中的 master26 为例 添加后 innotop.conf 中的信息如下

[connections]

localhost=user= have_user= have_pass=dsn=DBI:mysql:;host=localhost;mysql_read_default_group=client savepass=dl_table=test.innotop_dl

master26=user=root have_user= 1 pass=123 have_pass= 1 dsn=DBI:mysql:;host= 192.168 . 91.26 ;port= 3306 savepass= 1

[/connections]

根据实际生产的需求,编辑 innotop.conf 文件。

[connections]

master26=user=root have_user= 1 pass=123 have_pass= 1 dsn=DBI:mysql:;host= 192.168 . 91.26 ;port= 3306 savepass= 1

slave25=user=root have_user= 1 pass=123 have_pass= 1 dsn=DBI:mysql:;host= 192.168 . 91.25 ;port= 3306 savepass= 1

slave22=user=root have_user= 1 pass=123 have_pass= 1 dsn=DBI:mysql:;host= 192.168 . 91.22 ;port= 3306 savepass= 1

[/connections]

启动 innotop ,默认监控的是 master26 的信息。

innotop-数据库性能动态查看工具

可通过 “n” “@” 选择相应的服务器。

好虽好,但不够直观,我们希望本例中三个服务器的信息能显示在一个屏幕里,这样就不需要进行来回的切换,更直观。这里,就需要用到 SERVER GROUPS 的功能。

SERVER GROUPS

顾名思义 就是讲服务器进行分组 这种信息展示的粒度就不在是服务器 而是整个组了。

同样有两种方式添加:

一、直接在 innotop 交互式界面中添加

使用 “#” 键,首先创建组的名字,然后添加服务器,如下所示:

innotop-数据库性能动态查看工具

二、编辑配置文件

[server_groups]

master-slave=master26 slave22 slave25

[/server_groups]

下面 我们来看看集群显示的效果

innotop-数据库性能动态查看工具

对于监控主从集群的状况,完全够用。

注意   innotop 交互式界面中配置完毕后 需退出 innotop 再进入 不然就不会显示 CXN 列。

总结:

1. 可能有人有疑虑,将密码保存到配置文件中,是否不安全,尤其是在生产环境下。其实,密码也可以不保存在配置文件中,配置如下:

[connections]

server144=user=root have_user= 1 have_pass= 1 dsn=DBI:mysql:;host= 192.168 . 244.144 ;port= 3306 savepass= dl_table=

[/connections]

如果是在 innotop 交互式界面中添加,则最后一步 Save password in plain text in theconfig file?: “n” 即可。

2. 除了上述功能 innotop 还是蛮强大的。譬如在 M 模式 Replication Status 可通过 “o” 键给服务器发送命令。如下所示:

innotop-数据库性能动态查看工具

innotop-数据库性能动态查看工具


以上所述就是小编给大家介绍的《innotop-数据库性能动态查看工具》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Pro JavaScript Design Patterns

Pro JavaScript Design Patterns

Dustin Diaz、Ross Harmes / Apress / 2007-12-16 / USD 44.99

As a web developer, you’ll already know that JavaScript™ is a powerful language, allowing you to add an impressive array of dynamic functionality to otherwise static web sites. But there is more power......一起来看看 《Pro JavaScript Design Patterns》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具