How to install innotop on centos

转自
http://blog.chinaunix.net/uid-24086995-id-3199333.html,非常感谢,另外所需安装都在附件里
引用
#各种依赖包下载地址
http://www.cpan.org/modules/by-module

#一共要安装的依赖包:Time::HiRes,Term::ReadKey,DBI,DBD::mysql

#下载,解压缩
[bzuo@devdb7 ~]$ wget http://innotop.googlecode.com/files/innotop-1.8.0.tar.gz
[bzuo@devdb7 ~]$ tar zxvf innotop-1.8.0.tar.gz

#安装,报错
[bzuo@devdb7 innotop-1.8.0]$ perl Makefile.PL
Can't locate ExtUtils/MakeMaker.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at Makefile.PL line 1.
BEGIN failed--compilation aborted at Makefile.PL line 1.

#下载依赖包
[bzuo@devdb7 ~]$ wget http://files.directadmin.com/services/9.0/ExtUtils-MakeMaker-6.31.tar.gz
[bzuo@devdb7 ~]$ tar zxvf ExtUtils-MakeMaker-6.31.tar.gz

#安装依赖包报错
[bzuo@devdb7 ~]$ cd ExtUtils-MakeMaker-6.31
[bzuo@devdb7 ExtUtils-MakeMaker-6.31]$ perl Makefile.PL
Checking if your kit is complete...
Looks good
Could not open '': No such file or directory at lib/ExtUtils/MM_Unix.pm line 2697.

#yum安装依赖包
[root@devdb7 ExtUtils-MakeMaker-6.31]# yum install perl-ExtUtils-MakeMaker

[root@devdb7 ExtUtils-MakeMaker-6.31]# perl Makefile.PL
Writing Makefile for ExtUtils::MakeMaker

#安装,提示报错
[root@devdb7 innotop-1.8.0]# perl Makefile.PL
Warning: prerequisite DBD::mysql 1 not found.
Warning: prerequisite DBI 1.13 not found.
Warning: prerequisite Term::ReadKey 2.1 not found.
Writing Makefile for innotop

#安装DBD,需要先安装DBI
[root@devdb7 bzuo]# wget http://search.cpan.org/CPAN/authors/id/C/CA/CAPTTOFU/DBD-mysql-4.020.tar.gz
[root@devdb7 bzuo]# tar zxvf DBD-mysql-4.020.tar.gz
[root@devdb7 bzuo]# cd DBD-mysql-4.020
[root@devdb7 DBD-mysql-4.020]# perl Makefile.PL
Can't locate DBI/DBD.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at Makefile.PL line 25.

#安装DBI,提示没有安装gcc,yum 安装gcc
[root@devdb7 bzuo]# wget http://www.cpan.org/modules/by-module/DBI/DBI-1.618.tar.gz
[root@devdb7 bzuo]# tar zxvf DBI-1.618.tar.gz
[root@devdb7 bzuo]# cd DBI-1.618
[root@devdb7 DBI-1.618]# perl Makefile.PL
[root@devdb7 DBI-1.618]# make
/bin/sh: gcc: command not found
make: *** [Perl.o] Error 127
[root@devdb7 DBI-1.618]# yum install gcc
[root@devdb7 DBI-1.618]# make && make install (正常了)

#在安装inotop,发现对DBI的提示没有了
[root@devdb7 innotop-1.8.0]# perl Makefile.PL
Warning: prerequisite DBD::mysql 1 not found.
Warning: prerequisite Term::ReadKey 2.1 not found.

#再安装DBD,正常了,
[root@devdb7 DBD-mysql-4.020]# perl Makefile.PL
[root@devdb7 DBD-mysql-4.020]# make
[root@devdb7 DBD-mysql-4.020]# make install

#安装innotop只提示一个依赖包没有了
[root@devdb7 innotop-1.8.0]# perl Makefile.PL
Warning: prerequisite Term::ReadKey 2.1 not found.
Writing Makefile for innotop

#下载TermReadKey
[root@devdb7 bruce]# wget http://www.cpan.org/modules/by-module/Term/TermReadKey-2.30.tar.gz
[root@devdb7 bruce]# tar zxvf TermReadKey-2.30.tar.gz
[root@devdb7 bruce]# cd TermReadKey-2.30
[root@devdb7 TermReadKey-2.30]# perl Makefile.PL
[root@devdb7 TermReadKey-2.30]# make && make install

#再来运行makefile.pl,就没报错了
[root@devdb7 innotop-1.8.0]# perl Makefile.PL
Writing Makefile for innotop
[root@devdb7 innotop-1.8.0]# make && make install

#运行innotop 提示缺少HiRes
[root@devdb7 innotop-1.8.0]# innotop --help
Can't locate Time/HiRes.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /usr/local/bin/innotop line 1354.
BEGIN failed--compilation aborted at /usr/local/bin/innotop line 1354.


#安装Time-HiRes
[root@devdb7 bruce]# wget http://www.cpan.org/modules/by-module/Time/Time-HiRes-1.9725.tar.gz
[root@devdb7 bruce]# tar zxvf Time-HiRes-1.9725.tar.gz
[root@devdb7 bruce]# cd Time-HiRes-1.9725
[root@devdb7 Time-HiRes-1.9725]# perl Makefile.PL
[root@devdb7 Time-HiRes-1.9725]# make && make install

#到此安装完成
[root@devdb7 Time-HiRes-1.9725]# innotop --help
Usage: innotop <options> <innodb-status-file>

  --[no]color -C Use terminal coloring (default)
  --config -c Config file to read
  --count Number of updates before exiting
  --delay -d Delay between updates in seconds
  --help Show this help message
  --host -h Connect to host
  --[no]inc -i Measure incremental differences
  --mode -m Operating mode to start in
 
#运行报错
[root@devdb7 Time-HiRes-1.9725]# innotop -uroot -pondemand -hlocalhost
/usr/bin/perl: symbol lookup error: /usr/local/lib64/perl5/auto/DBD/mysql/mysql.so: undefined symbol: mysql_init

#解决办法
mkdir /tmp/mysql-static
  cp /usr/lib64/mysql/*.a /tmp/mysql-static
  perl Makefile.PL --libs="-L/tmp/mysql-static -lmysqlclient"
  make
  make test
  make install
  rm -rf /tmp/mysql-static

#至此,运行正常了
[root@devdb7 DBD-mysql-4.020]# innotop
[RO] Query List (? for help) localhost, 00:00, 0 QPS, 0/0/0 con/run/cac thds, !localhost

When Load QPS Slow Se/In/Up/De% QCacheHit KCacheHit BpsIn BpsOut
Total 0/ 0/ 0/ 0 0.00% 0.00%
localhost: Access denied for user 'root'@'localhost

http://www.linuxidc.com/Linux/2008-08/14678.htm
http://www.perlmonks.org/?node_id=128077
转自 http://blog.chinaunix.net/uid-26446098-id-3410139.html

猜你喜欢

转载自dodomail.iteye.com/blog/1874030