Сбой install_driver (mysql): не удается найти DBD / mysql.pm - PullRequest
0 голосов
/ 21 февраля 2019

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

Я пытаюсь настроить redmine git на моем ec2-aws-instance с помощью ссылки ниже

https://docs.bitnami.com/installer/how-to/configure-advanced-integration-git-redmine/

Я могу правильно связать проекты Redmine с моими репозиториями Git, но как только я перехожу на третий шаг по вышеуказанной ссылке, я сталкиваюсь с проблемой, как показано ниже

step: - 3 Настройка управления доступом Git

Ниже приведена ошибка при попытке защитить мой git-репозиторий с помощью учетных данных пользователя Redmine.

[Чт 21 февраля 17: 46: 26.918619 2019] [perl: error] [pid 26820: tid139790464616192] [клиент 127.0.0.1:50156] сбой install_driver (mysql): невозможно найти DBD / mysql.pm в @INC (@INC содержит: /opt/bitnami/git/lib/site_perl/5.16.3 / opt /BitNami / Perl / Библиотека / 5.16.3 / x86_64-linux-thread-multi /opt/bitnami/perl/lib/5.16.3 /opt/bitnami/perl/lib/site_perl/5.16.3/x86_64-linux-thread-multi / opt / bitnami / perl / lib / site_perl/5.16.3 /opt/bitnami/perl/lib/5.16.3/x86_64-linux-thread-multi /opt/bitnami/perl/lib/site_perl/5.16.3/x86_64-linux-thread-multi / bitnami / ruby23stack-linux-x64 / output / perl / lib / site_perl / 5.16.3 / x86_64-linux-thread-multi /bitnami/ruby23stack-linux-x64/output/perl/lib/site_perl/5.16.3 / bitnami / ruby23stack-linux-x64 / output / perl / lib / 5.16.3 / x86_64-linux-thread-multi /bitnami/ruby23stack-linux-x64/output/perl/lib/5.16.3./ opt / bitnami / apache2) в строке 3. (eval 6). \ n Возможно, модуль perl DBD :: mysql не был полностью установлен, \ или, возможно, заглавная буква mysql неверна. \ nДоступные драйверы: DBM, ExampleP, Файл, Gofer, Прокси, Губка. \ N в /opt/bitnami/perl/lib/site_perl/5.16.3/x86_64-linux-thread-multi/Apache/Redmine.pm строка 557. \ n App 26921 stdout:

Без третьего шага мои репозитории общедоступны, любой, кто знает URL репо, может клонировать мои репо или выполнять другие операции с моими репозиториями git.Таким образом, третий шаг в целях безопасности, как в приведенной выше ссылке на документ, и это важно для меня.

Как только я добавляю строку ниже в конфигурацию apache согласно упомянутой документации, я получаю вышеуказанную ошибку в своем журнале битнами, когда пытаюськлонировать репозиторий

 <Location "/">
       AuthType Basic
       AuthName "Redmine git repositories"
       Require valid-user

       PerlAccessHandler Apache::Authn::Redmine::access_handler
       PerlAuthenHandler Apache::Authn::Redmine::authen_handler
       RedmineDSN "DBI:mysql:database=bitnami_redmine;host=localhost;mysql_socket=installdir/mysql/tmp/mysql.sock"
       RedmineDbUser "REDMINE_DB_USERNAME"
       RedmineDbPass "REDMINE_DB_PASSWORD"
       RedmineGitSmartHttp yes
     </Location>

Когда я запускаю следующую команду для клонирования репо, без третьего шага по документации, я правильно могу клонировать репо, но с третьим шагом я терплю неудачу и получаю ошибку вышеlog и ниже ошибка в командной строке.

bitnami@127.0.0.1:/tmp$ git clone http://git.domain.com/test2
Cloning into 'test2'...
fatal: unable to access 'http://git.domain.com/test2/': The requested URL returned error: 500

Я даже пытался установить ниже пакет, но не повезло

sudo apt-get install libdbd-mysql-perl

мой ОС

Ubuntu 16.04.5 LTS \n \l

1 Ответ

0 голосов
/ 22 февраля 2019

Чтобы установка Perl могла общаться с базой данных MySQL, ей необходимо использовать модуль DBD :: mysql.Этот модуль не является частью стандартной установки Perl и должен быть установлен отдельно.Когда вы устанавливаете его с помощью инструмента командной строки CPAN (cpan DBD::mysql) или с помощью apt-get (apt-get install libdbd-mysql-perl), он устанавливается в каталоги библиотек, используемые системным Perl (тот, который устанавливается как часть вашей операционной системы),Вы можете подтвердить, что это было установлено правильно, выполнив следующие команды:

$ perldoc DBD::mysql
$ perl -MDBD::mysql -le'print $DBD::mysql::VERSION'

Если DBD :: mysql установлен правильно, первая команда покажет вам документацию для модуля, а вторая дастномер версии.

Но, как я уже сказал, это установлено для использования системой установки Perl.Из сообщения об ошибке вы видите, что ваша установка Bitnami не использует системный Perl.Вместо этого он использует отдельную установку Perl, установленную в /opt/bitnami.

. Поэтому для этой установки Perl необходимо установить DBD :: mysql в библиотеку модулей.Можно попросить cpan установить модуль в другом каталоге, но я бы с осторожностью отнесся к установке всего лишь в дерево каталогов Битнами.Я сильно подозреваю, что процесс установки был пропущен намного раньше в процессе.Если Bitnami необходимо использовать MySQL из Perl-программы и установить собственный дистрибутив Perl вместе с собственной библиотекой модулей, то он должен либо включить DBD :: mysql в свою установку, либо предоставить четкие инструкции по его установке.

Я бы посоветовал внимательно изучить инструкции по установке Bitnami и посмотреть, что они скажут об установке поддержки MySQL.Если это не сработает, ответьте на этот вопрос в каналах поддержки Битнами.

...