今天在虛擬機測試shell腳本的時候,有些命令使用不了。
比如說 mysqlhotcopy ,它提示Perl的版本太低。
我用的 RedHat9 的Perl才5.8.0版本。。。(2002年以前的)
嚴重過時。所以重新安裝了新版本的 Perl,過程記錄如下:
1、在官方網站下載新版本的源碼包:
http://www.perl.org/get.html,版本自己選擇,我下載的是perl-5.18.2.tar.gz
2、解壓/usr/local/src下的perl-5.18.2.tar.gz
# tar zxvf perl-5.18.2.tar.gz
3、建立文件目錄,以供安裝時使用
# mkdir /usr/local/perl
4、設置源碼
進入perl-5.18.2.tar.gz的解壓目錄,執行:
# ./Configure --help的提示如下
查看過后,使用這個指令來設置源碼:
# ./Configure -des -Dprefix=/usr/local/perl -Dusethreads -Uversiononly
5、編譯
# make //這個過程會比較久,因為源碼文件有那么大,我的這個有17M。
# make install
等待這個命令完成后,基本安裝就完成了。
6、替換掉舊的perl命令
# cd /usr/bin
# mv perl perl.old //把原來的perl更名為perl.old,棄用。
# ln -s /usr/local/perl/bin/perl /usr/bin/perl //做一個軟鏈接,使用新的perl
7、完成
# perl -version //使用這個命令查看perl的版本,可以看到,已經更新到5.12.2版本了:
8、安裝DBI
打算熟悉下perl,自然主要用於數據庫管理和監控方面的,所以需要連接數據庫。Perl連接數據庫需要安裝DBI模塊和相應數據庫的DBD驅動,Linux上默認安裝的Perl是沒有該模塊的。可以從CPAN下載DBI模塊進行安裝。
安裝過程很簡單,下載解壓:
gzip -d DBI-1.604.tar.gz
tar xvf DBI-1.604.tar
tar xvf DBI-1.604.tar
然后進入DBI-1.604目錄,執行:
perl Makefile.PL
make
make test
make install
make
make test
make install
以下腳本可以用來檢測系統中已經安裝的Perl模塊:
#!/usr/bin/perl use strict; use ExtUtils::Installed; print "Start Test ----\n"; my $inst = ExtUtils::Installed->new(); print join "\n",$inst->modules(); print "\n";
安裝完DBI后執行該腳本的結果如下:

DBI的文檔可以通過perldoc查看:
#perldoc DBI