电脑技术学习

详细讲解Linux下实时监控MySQL的工具Mtop

dn001

所需模块:


Curses http://cpan.linuxforum.net/authors/id/G/GI/GIRAFFED

DBI Distributed as Bundle::DBI: http://www.cpan.org/authors/id/TIMB

DBD::mysql http://www.cpan.org/modules/by-module/DBD

Getopt::Long (Distributed with Perl 5)

Net::Domain Part of libnet: http://www.cpan.org/authors/id/GBARR

# perl -e 'use Curses'

# perl -e 'use DBI'

# perl -e 'use DBD::mysql'

# perl -e 'use Getopt::Long'

# perl -e 'use Net::Domain'

没有输出就是模块已经安装了,有错误就是相应的模块没有安装。


可以在上面给出的地址下载相应模块的最新版本。

安装所需的 Perl 模块:

# tar zxvf Curses-x.xx.tar.gz

# cd Curses*

# perl Makefile.PL

# make

# make install

yum仓库里有 perl-DBI ,所以直接 yum 安装


# yum -y install perl-DBI

因为是编译安装的 MySQL ,所以需要把 lib 的路径加入 ld.so.conf


# vi /etc/ld.so.conf

/usr/local/mysql/lib/mysql

# ldconfig

虽然yum仓库里有 perl-DBD-MySQL ,但其依赖 mysql ,所以还是编译安装


# tar zxvf DBD-mysql-x.xxxx.tar.gz

# cd DBD-mysql*

# perl Makefile.PL --mysql_config=/usr/local/mysql/bin/mysql_config

# make

# make install

安装mtop:


# tar zxvf mtop-0.6.6.tar.gz

# cd mtop-0.6.6

# perl Makefile.PL

# make

# make install

添加相应的MySQL数据库用户:

# mysql -uroot -pPASSWORD

mysql> GRANT RELOAD,PROCESS,SUPER ON *.* TO 'mtop'@'localhost' IDENTIFIED BY 'mtop';

mysql> FLUSH PRIVILEGES;

mysql> exit

运行:


因为自定义了 mysql.sock 的位置,所以需要做个链接 mtop 才能运行,


# ln -s /var/run/mysqld/mysql.sock /tmp/mysql.sock

# mtop --dbuser=mtop --password=mtop