UNIX* + Moveable + MySQL 注意事項
首先要注意的就是 perl-dbd-mysql 套件一定要存在,在 Red Hat 9 已有預設安裝,如果你曾經移除過 Red Hat Linux 中的 MySQL RPM 套件,因為相依性的關係,這個套件也會一併被移除掉,這時就會發生 Perl 的 DBD::mysql 無法啟動的狀況。也就是在執行 mt-load.cgi 時就會出現以下的錯誤:
載入初始系統資料中...
載入資料時發生錯誤:
install_driver(mysql) failed: Can't locate DBD/mysql.pm
in @INC (@INC contains: /var/www/cgi-bin/mt/extlib /var/www/cgi-bin/mt/lib
/usr/lib/perl5/5.8.0/i386-linux-thread-multi /usr/lib/perl5/5.8.0 /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.0 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.0 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.0/i386-linux-thread-multi
/usr/lib/perl5/5.8.0 .) at (eval 4) line 3.
Perhaps the DBD::mysql perl module hasn't been fully installed,
or perhaps the capitalisation of 'mysql' isn't right.
Available drivers: ExampleP, Pg, Proxy.
at /var/www/cgi-bin/mt/lib/MT/ObjectDriver/DBI/mysql.pm line 48
|
這時就必須安裝 perl-dbd-mysql 了,但是在這之前,必須要有 mysql_config,這個是包在 mysql-devil
套件裡面,如您尚未安裝,請先到
http://www.mysql.com/downloads 選定您的 MySQL 版本及作業系統後下載。
確定無誤後可以用 perl 線上安裝的方式來幫你安裝 perl-dbd-mysql 套件,連同套件相依性的問題也會一併檢查。
只要在您的 Linux 主機連在Internet上的話,直接執行以下的指令即可!
perl -MCPAN -e"force install DBD::mysql"
接下來就是要注意 MySQL 裡面的使用者 root@localhost 跟 test 資料庫一定要存在,而且 root@localhost
不可以設定密碼,否則預設測試的安裝資料庫會失敗。
(若您不想更動 MySQL 的設定,您就必須去修改 Makefile.PL,這個檔案應該放在 /root/.cpan/build/ 裡的 DBD
安裝資料夾裡面,修改的方式請自行下 perl Makefile.PL --help 來看)
請注意,若您出現一堆 Unsuccessful stat on filename containing newline at
/usr/lib/perl5/5.8.0/ExtUtils/Liblist/Kid.pm line 97.
的訊息,請先下以下的指令後再重新執行線上安裝的動作:
export LANG=C
到這邊大概就 dbd-perl-mysql 就大功告成啦,執行 mt-load.cgi 時 Movable 就可以正確的將資料寫進 MySQL 啦!