Perl DBI 是一個讓 Perl 存取各種不同資料庫的套件,因為在 Linux 上使用 MySQL 的人也比較多,加上常見的 Blog 寫作軟體 Movable 也是採用 Perl ,習慣 MySQL 資料庫的使用者,也就必需裝上 DBD::MySQL 這個套件才能正常運作。
為什麼要採用 tarball 安裝呢? 我之前也有提過採用 perl -MCPAN -e”force install DBD::mysql” 線上安裝方法,但是在只有安裝 Perl 套件的情況下,這個指令是行不通的。
如果遇到這個狀況,就只好一個個手動加上去囉。
要安裝 DBD::MySQL,一定要先裝好 MySQL-Server 跟一組壓縮套件(libz-devel 、zlib-devel 都可以),如果是 RedHat 的最小安裝,您就必須安裝 zlib-devel,可至
http://www.gzip.org/zlib/ 下載,或是有 apt 的可以下 apt-get install zlib-devel 直接安裝。
另外要注意的是,安裝過程會用到 mysql_config 指令。所以用 tarball 安裝 MySQL 則可以正常運作,但如果 MySQL 是用 RPM 安裝,就要確定你有 mysql-devel 套件,沒裝的話可至 MySQL 的下載網頁下載您目前版本的「Libraries and header files」。
確定以上套件都有安裝,就可以到 http://search.cpan.org/dist/DBD-mysql 下載最新的 DBD-mysql 來安裝了。
# cd /usr/local/src
# tar -zxvf /root/DBD-mysql-2.9003.tar.gz
# cd DBD-mysql-2.9003
# export LANG=C 設定字元編碼,不然會出現一堆錯誤訊息
# perl Makefile.PL
請注意,因安裝程式預設是以「資料庫test」做連線測試,若MySQL有設帳號權限的話,必須在這裡指定一個測試資料庫讓安裝程式確定連線正常。
參數如下:
testdb 測試資料庫,預設為 test
testuser 連線使用者,預設為為空
testpassword 使用者密碼
testhost 資料庫位址,預設為 localhost
testport 資料庫 port
範例:
# perl Makefile.PL –testdb=資料庫 –testuser=使用者 –testpassword=密碼
這個動作只是做連線測試而已,並不會更動到資料庫。
再來 make 之後就完工了。
# make
# make test
# make install
官方安裝說明:
http://search.cpan.org/src/RUDY/DBD-mysql-2.9003/INSTALL.html
1 comments On tarball 安裝 Perl DBI DBD::MySQL
我在安装DBD::mysql的时候出现了以下错误,您看看知道怎么设置吗?
Can’t exec “mysql_config”: No such file or directory at Makefile.PL line 76.
Cannot find the file ‘mysql_config’! Your execution PATH doesn’t seem
not contain the path to mysql_config. Resorting to guessed values!
Can’t exec “mysql_config”: No such file or directory at Makefile.PL line 465.
Can’t exec “mysql_config”: No such file or directory at Makefile.PL line 465.
Can’t exec “mysql_config”: No such file or directory at Makefile.PL line 465.
Failed to determine directory of mysql.h. Use
perl Makefile.PL –cflags=-I
to set this directory. For details see the INSTALL.html file,
section “C Compiler flags” or type