1、OS版本:Red Hat Enterprise Linux Server release 5.3
MySQL版本:4.0.26 2、安装文件列表: MySQL-shared-compat-5.1.57-1.rhel5.i386.rpm mytop-1.6.tar.gz perl-DBD-MySQL-3.0007-2.el5.i386.rpm perl-DBI-1.52-2.el5.i386.rpm TermReadKey-2.30.tar.gz 3、相关文件下载链接: wget wget wget wget wget 4、安装流程如下: [root@tech tmp]# tar zxvf TermReadKey-2.30.tar.gz && cd TermReadKey-2.30 [root@tech TermReadKey-2.30]# perl Makefile.PL && make && make install [root@tech TermReadKey-2.30]# cd .. [root@tech tmp]# rpm -Uvh MySQL-shared-compat-5.1.57-1.rhel5.i386.rpm perl-DBD-MySQL-3.0007-2.el5.i386.rpm perl-DBI-1.52-2.el5.i386.rpm [root@tech tmp]# tar zxvf mytop-1.6.tar.gz && cd mytop-1.6 [root@tech mytop-1.6]# perl Makefile.PL && make && make install 5、配置mytop并运行 [root@tech mytop-1.6]# mytop Cannot connect to MySQL server. Please check the:* database you specified "test" (default is "test")
* username you specified "root" (default is "root") * password you specified "" (default is "") * hostname you specified "localhost" (default is "localhost") * port you specified "3306" (default is 3306) * socket you specified "" (default is "")The options my be specified on the command-line or in a ~/.mytop
config file. See the manual (perldoc mytop) for details.Here's the exact error from DBI. It might help you debug:
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
[root@tech mytop-1.6]# cat << EOF >/root/.mytop > user=root > pass=123456 > host=127.0.0.1 > db=cacti > delay=10 > port=3306 > resolve=0 > socket=/tmp/mysql.sock > EOF [root@tech mytop-1.6]# mytop 6、更详细的参数选项请参考man手册,这里不再赘述。 [root@tech mytop-1.6]# man mytop 7、以下是我的安装和配置过程: [root@tech ~]# uname -a Linux tech 2.6.18-128.el5PAE #1 SMP Wed Dec 17 12:02:33 EST 2008 i686 i686 i386 GNU/Linux [root@tech ~]# lsb_release -a LSB Version: :core-3.1-ia32:core-3.1-noarch:graphics-3.1-ia32:graphics-3.1-noarch Distributor ID: RedHatEnterpriseServer Description: Red Hat Enterprise Linux Server release 5.3 (Tikanga) Release: 5.3 Codename: Tikanga [root@tech ~]# cat /etc/issue Red Hat Enterprise Linux Server release 5.3 (Tikanga) Kernel \r on an \m[root@tech ~]# cd /tmp
[root@tech tmp]# ll total 6144 -rw-r--r-- 1 root root 5443408 Mar 24 19:17 MySQL-shared-compat-5.1.57-1.rhel5.i386.rpm -rw-r--r-- 1 root root 19720 Mar 24 18:39 mytop-1.6.tar.gz -rw-r--r-- 1 root root 150649 Oct 16 2008 perl-DBD-MySQL-3.0007-2.el5.i386.rpm -rw-r--r-- 1 root root 613929 Mar 24 19:06 perl-DBI-1.52-2.el5.i386.rpm -rw-r--r-- 1 root root 37006 Jun 13 10:56 TermReadKey-2.30.tar.gz -rw-r--r-- 1 root root 0 Jun 16 14:42 typescript [root@tech tmp]# tar zxvf TermReadKey-2.30.tar.gz && cd TermReadKey-2.30 TermReadKey-2.30/ TermReadKey-2.30/genchars.pl TermReadKey-2.30/Makefile.PL TermReadKey-2.30/Configure.pm TermReadKey-2.30/test.pl TermReadKey-2.30/ReadKey.pm TermReadKey-2.30/META.yml TermReadKey-2.30/ReadKey.xs TermReadKey-2.30/ppport.h TermReadKey-2.30/MANIFEST TermReadKey-2.30/README [root@tech TermReadKey-2.30]# perl Makefile.PL && make && make install Checking if your kit is complete... Looks good Writing Makefile for Term::ReadKey cp ReadKey.pm blib/lib/Term/ReadKey.pm AutoSplitting blib/lib/Term/ReadKey.pm (blib/lib/auto/Term/ReadKey) /usr/bin/perl -I/usr/lib/perl5/5.8.8 genchars.plWriting termio/termios section of cchars.h... Done.
Checking for sgtty... Sgtty NOT found. Writing sgtty section of cchars.h... Done. /usr/bin/perl /usr/lib/perl5/5.8.8/ExtUtils/xsubpp -noprototypes -typemap /usr/lib/perl5/5.8.8/ExtUtils/typemap ReadKey.xs > ReadKey.xsc && mv ReadKey.xsc ReadKey.c gcc -c -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -DVERSION=\"2.30\" -DXS_VERSION=\"2.30\" -fPIC "-I/usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE" ReadKey.c In file included from ReadKey.xs:6: ppport.h:230:1: warning: "PERL_UNUSED_DECL" redefined In file included from ReadKey.xs:4: /usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE/perl.h:163:1: warning: this is the location of the previous definition In file included from ReadKey.xs:375: cchars.h: In function 'XS_Term__ReadKey_GetControlChars': cchars.h:244: warning: unused variable 'i' ReadKey.xs: In function 'ReadMode': ReadKey.xs:770: warning: unused variable 'Perl___notused' ReadKey.c: In function 'XS_Term__ReadKey_SetTerminalSize': ReadKey.c:1999: warning: unused variable 'targ' Running Mkbootstrap for Term::ReadKey () chmod 644 ReadKey.bs rm -f blib/arch/auto/Term/ReadKey/ReadKey.so gcc -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -L/usr/local/lib ReadKey.o -o blib/arch/auto/Term/ReadKey/ReadKey.so \ \ chmod 755 blib/arch/auto/Term/ReadKey/ReadKey.so cp ReadKey.bs blib/arch/auto/Term/ReadKey/ReadKey.bs chmod 644 blib/arch/auto/Term/ReadKey/ReadKey.bs Manifying blib/man3/Term::ReadKey.3pm Installing /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Term/ReadKey/ReadKey.bs Installing /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Term/ReadKey/ReadKey.so Files found in blib/arch: installing files in blib/lib into architecture dependent library tree Installing /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Term/ReadKey/autosplit.ix Installing /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Term/ReadKey.pm Installing /usr/share/man/man3/Term::ReadKey.3pm Writing /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Term/ReadKey/.packlist Appending installation info to /usr/lib/perl5/5.8.8/i386-linux-thread-multi/perllocal.pod [root@tech TermReadKey-2.30]# cd .. [root@tech tmp]# rpm -Uvh MySQL-shared-compat-5.1.57-1.rhel5.i386.rpm perl-DBD-MySQL-3.0007-2.el5.i386.rpm perl-DBI-1.52-2.el5.i386.rpm warning: perl-DBD-MySQL-3.0007-2.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186 warning: perl-DBI-1.52-2.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID e8562897 Preparing... ########################################### [100%] 1:perl-DBI ########################################### [ 33%] 2:MySQL-shared-compat ########################################### [ 67%] 3:perl-DBD-MySQL ########################################### [100%] [root@tech tmp]# tar zxvf mytop-1.6.tar.gz && cd mytop-1.6 mytop-1.6/ mytop-1.6/MANIFEST mytop-1.6/test.pl mytop-1.6/mytop mytop-1.6/Changes mytop-1.6/INSTALL mytop-1.6/README mytop-1.6/Makefile.PL mytop-1.6/META.yml [root@tech mytop-1.6]# perl Makefile.PL && make && make install Checking if your kit is complete... Looks good Writing Makefile for mytop cp mytop blib/script/mytop /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mytop Manifying blib/man1/mytop.1 Installing /usr/share/man/man1/mytop.1 Installing /usr/bin/mytop Writing /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/mytop/.packlist Appending installation info to /usr/lib/perl5/5.8.8/i386-linux-thread-multi/perllocal.pod [root@tech mytop-1.6]# mytop Cannot connect to MySQL server. Please check the:* database you specified "test" (default is "test")
* username you specified "root" (default is "root") * password you specified "" (default is "") * hostname you specified "localhost" (default is "localhost") * port you specified "3306" (default is 3306) * socket you specified "" (default is "")The options my be specified on the command-line or in a ~/.mytop
config file. See the manual (perldoc mytop) for details.Here's the exact error from DBI. It might help you debug:
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
[root@tech mytop-1.6]# cat << EOF >/root/.mytop
> user=root > pass=123456 > host=127.0.0.1 > db=cacti > delay=10 > port=3306 > resolve=0 > socket=/tmp/mysql.sock > EOF [root@tech mytop-1.6]# mytopMySQL on 127.0.0.1 (4.0.26) up 10+22:18:53 [14
:52:13] Queries: 81.6k qps: 0 Slow: 810.0 Se/In/Up/De(%): 23/36/40/01Cache Hits: 6.8k Hits/s: 0.0 Hits now: 0.0 Ratio: 35.8% Ratio now: 0.0%
Key Efficiency: 100.0% Bps in/out: 73.3/ 2.6kId User Host/IP DB Time Cmd Query or State
-- ---- ------- -- ---- --- ---------- 156 root localhost cacti 0 Query show full processlist 8、总结:将以上安装过程写成脚本进行快速安装,由于IDC做了ACL限制,不能直接进行wget对安装文件进行下载,个人是首先将安装文件下载到个人电脑,然后上传到服务器的,以下是脚本示例, [root@tech ~]# cat mytop_install.sh _DIR=/tmp/wyq cd ${_DIR} tar zxvf TermReadKey-2.30.tar.gz && cd TermReadKey-2.30 perl Makefile.PL && make && make install cd .. rpm -Uvh MySQL-shared-compat-5.1.57-1.rhel5.i386.rpm perl-DBD-MySQL-3.0007-2.el5.i386.rpm perl-DBI-1.52-2.el5.i386.rpm tar zxvf mytop-1.6.tar.gz && cd mytop-1.6 perl Makefile.PL && make && make install cd .. rm -rf TermReadKey-2.30 mytop-1.6 cat << EOF >/root/.mytop user=root pass=123456 host=127.0.0.1 db=cacti delay=10 port=3306 resolve=0 socket=/tmp/mysql.sock EOF 9、提示:请根据自己的实际环境修改mytop的配置文件以及安装脚本注:2012年06月18号增加安装效果图,如下