Perl的DBD :: mysql - 安装冲突

时间:2011-02-23 16:56:19

标签: perl installation perl-module

尝试在Windows 7上安装Perl模块DBD::mysql

从我执行的Windows命令行

perl -MCPAN -e 'install DBD::mysql'

下载并解压缩文件 - 然后给了我这个错误:

  CPAN.pm: Going to build C/CA/CAPTTOFU/DBD-mysql-4.018.tar.gz

Set up gcc environment - 3.4.5 (mingw-vista special r3)
C:\PROGRA~1\MySQL\MYSQLS~1.1\bin\MYSQLA~1.EXE: connect to server at 'localhost'
failed
error: 'Access denied for user 'ODBC'@'localhost' (using password: NO)'
Problem running C:\PROGRA~1\MySQL\MYSQLS~1.1\bin\MYSQLA~1.EXE - aborting ...
Warning: No success on command[C:\Perl\bin\perl.exe Makefile.PL INSTALLDIRS=site
]

猜测问题是MySQL的root用户有密码,但我不清楚的是我如何解决这个问题。

问题,反馈,请求 - 只是评论,谢谢!!

---------- 更新(1): RE:强制安装DBD :: mysql

cpan> force install DBD::mysql
Running install for module 'DBD::mysql'
Running make for C/CA/CAPTTOFU/DBD-mysql-4.018.tar.gz
  Has already been unwrapped into directory C:\Perl\cpan\build\DBD-mysql-4.018-A
1T8Uh
  'C:\Perl\bin\perl.exe Makefile.PL INSTALLDIRS=site' returned status 256, won't
 make
Running make test
  Make had some problems, won't test
Running make install
  Make had some problems, won't install

4 个答案:

答案 0 :(得分:2)

在其他平台上,构建过程运行mysql_config命令以获取有关mysql安装的必要信息,而无需用户和密码;在win32上,如果你有一个mysql_config命令,你必须使用--mysql_config yourpathname参数显式告诉Makefile.PL。如果不这样做,它会查找mysqladmin程序并使用其位置尽可能多地确定,但运行mysqladmin version以获取mysql版本。您可以使用--testuser和--testpassword参数为Makefile.PL提供用户/密码,以便能够执行此操作。

答案 1 :(得分:2)

跟进“Robert P”评论,我检查了installing DBD::MySQL in ActivePerl on Win32的安装指南; 64岁,但似乎并不重要。

完成这项工作的命令是:

ppm install DBD::mysql

答案 2 :(得分:1)

我过去唯一能解决这个问题的方法是强制安装。它总是像一个小屋,但我找不到更好的方式。

打开一个CPAN shell:

perl -MCPAN -e 'shell'

然后执行强制安装

force install DBD::mysql

退出让你退出shell。

答案 3 :(得分:1)

正如ysth所说,也许试试这个:

cd  C:\Perl\cpan\build\DBD-mysql-4.018-A

并运行

perl Makefile.PL  --testuser validuser  --testpassword validpassword

然后尝试制作 - make test - make install, 或其在Windows上的等价物