Perl DBD :: mysql - конфликт установки - PullRequest
1 голос
/ 23 февраля 2011

Попытка установить модуль Perl DBD::mysql в Windows 7

Из командной строки 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
]

Я думаю, проблема в том, что у пользователя root MySQL есть пароль, но что не ясно, так это как я могу решить эту проблему.

Вопросы, отзывы, запросы- просто комментарий, спасибо !!

---------- ОБНОВЛЕНИЕ (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 ]

2 голосов
/ 23 февраля 2011

После комментария "Robert P" я проверил руководство по установке установки DBD :: MySQL в ActivePerl на Win32 ; на 64, но, похоже, не имело значения.

Команда, которая выполнила задание:

ppm install DBD::mysql
2 голосов
/ 23 февраля 2011

На других платформах процесс сборки запускает команду mysql_config, чтобы получить необходимую информацию об установке mysql без необходимости ввода имени пользователя и пароля; на win32, если у вас есть команда mysql_config, вы должны явно сообщить об этом Makefile.PL с параметром --mysql_config yourpathname. Если вы этого не сделаете, она ищет программу mysqladmin и использует ее местоположение, чтобы определить как можно больше, но запускает mysqladmin version для получения версии mysql. Вы можете предоставить имя пользователя / пароль, чтобы он мог это сделать, используя параметры --testuser и --testpassword для Makefile.PL.

1 голос
/ 23 февраля 2011

, как сказал ysth, возможно попробуйте это:

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

и запустите

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

, а затем попробуйте сделать - сделать тест - сделать установку, или ее эквиваленты в windows

1 голос
/ 23 февраля 2011

Единственный способ обойти это в прошлом - принудительная установка.Это всегда похоже на уловку, но я не смог найти лучшего способа.

Откройте оболочку CPAN:

perl -MCPAN -e 'shell'

Затем выполните принудительную установку

force install DBD::mysql

и выйдите из оболочки.

...