2010-11-17 94 views
7

我正在尋找一個很好的指南,介紹在Windows XP上安裝Perl草莓,MySQL和DBD :: mysql的順序和詳細步驟。在Windows XP上安裝Perl草莓,MySQL和DBD :: mysql的順序步驟

主要目標在這裏我要做到的是有創建數據庫,並通過使用Perl的草莓執行對他們的常規操作DBD

我發現this到目前爲止能力:: MySQL的,但它是一個小過時,我不想通過所有這些只是爲了發現它不起作用。

我自己在另一臺計算機上獲得的最遠距離是安裝了Perl草莓並正常工作,安裝了MySQL,並嘗試使用cpan DBD::mysql來安裝該模塊(由於找不到該模塊而無法找到MySQL - 我也嘗試了--with-mysql=C:\path\to\mysql這個選項,但是這對我不起作用)

+0

我結束了使用'DBI'而不是 – CheeseConQueso 2010-11-24 23:57:11

+0

你說*「我結束了使用DBI」*。這是一種奇怪的說法,因爲DBI使用適當的DBD模塊與數據庫進行通信。所以,'DBI'需要'DBD :: mysql'才能夠與MySQL數據庫連接。 – 2010-12-06 19:18:02

+0

@Sinan - 這是我缺乏的關鍵信息。我有'使用DBI;'和'DBI-> connect('DBI:mysql:db','','',\%dbattr)''所以我認爲dbd完全是一個不同的模塊。感謝您清除 – CheeseConQueso 2010-12-07 03:01:30

回答

7

AFAIK,草莓的最新版本與DBD::mysql捆綁在一起。

另外,Strawberry Perl提供了ppm來安裝預編譯的二進制包。

+0

是的,StrawberryPerl捆綁了MySQL,PostgreSQL和ODBC的驅動程序。只需安裝StrawberryPer就足夠了。 – MichielB 2010-12-06 11:47:14

+1

實際上,我們不推薦在Strawberry上使用'ppm'來安裝預編譯的二進制文件,只需使用cpan或cpanm和捆綁的編譯工具自己編譯它們即可。 – MichielB 2010-12-06 11:48:26

0

如果你正在尋找一個「just works」解決方案,你可以嘗試ActivePerl,你可以在其中安裝DBD :: mysql通過ppm預編譯的二進制文件。

0

還有DWIM Perl其中包含許多流行的附加模塊,如Moose,Dancer,Perl Critic,Perl Tidy,甚至Perl IDE - Padre。

看來,使用這些安裝之一是最簡單的方法 - 因爲您仍然可以獲得工作cpan的好處,並且可以自己編譯大部分模塊以滿足您的perl需求。 上次我使用activestate的perl + cpan我記得通過cpan安裝了一些模塊後,一堆東西停止工作,所以我放棄了它。通過ppm安裝所有軟件包,或使用可怕的ppm GUI管理器,與我無關,因爲無論我在哪個系統,我本能地使用cpanm,並希望將所有模塊編譯/安裝爲Perl方式。

9

我想在我的本地Windows 7機器上安裝bugzilla,並有類似的問題與MySQL。

儘管草莓perl的自動更新機制工作得很好,並安裝了所有缺少的軟件包,但似乎像某個草莓perl版本(我使用5.16.1.1),mysql驅動程序有問題。

我會得到一個錯誤說:

install_driver(mysql) failed: Can't load 'C:/Perl/site/lib/auto/DBD/mysql/mysql.dll' for module DBD::mysql: load_file:The specified module could not be found at C:/Perl/lib/DynaLoader.pm line 230. at (eval 34) line 3 Compilation failed in require at (eval 34) line 3.

但所需的文件在那裏,所以很多在網絡上搜索後,我發現在文章的評論部分的解決方案(http://lpsolit.wordpress.com/2010/05/15/installing-dbdmysql-what-a-pain/ ):

"For the record, and thanks to glob, the way to fix the problem with Strawberry Perl is to copy C:\strawberry\c\bin\libmysql_.dll to C:\strawberry\perl\vendor\lib\auto\DBD\mysql\libmysql_.dll. Yay!"

它的工作原理!

我希望這可以幫助其他人有同樣的問題。

+0

感謝幫助!我檢查了目錄並在那裏看到了一個DLL,但不知道第二個DLL也需要在那裏複製。一旦我完成了它,Bugzilla就工作了! – paul 2015-05-06 12:03:51