фон
После выпуска проекта laravel база данных соединений в проекте внезапно сообщила об ошибке, и можно подключиться на компьютере с тем же паролем учетной записи базы данных.
Временные решения
После непродолжительного расследования причина не была найдена, исходный пароль базы данных DB_PASSWORD=abcde#142!* Измените пароль базы данных на DB_PASSWORD=abcde 2019 После этого он вернулся в нормальное состояние.
Следственная мысль
После смены пароля база данных может быть подключена нормально, что является проблемой с паролем. В то же время один и тот же пароль не смог получить доступ к базе данных в проекте, и к нему можно успешно получить доступ на компьютере. Можно судить, что проблема с паролем вызвана экологическими проблемами.
Распечатайте журнал конфигурации подключения к базе данных в проекте следующим образом:
Array
(
[driver] => mysql
[host] => xxx
[port] => xxx
[database] => xxx
[username] => xxx
[password] => abcde
[unix_socket] =>
[charset] => utf8mb4
[collation] => utf8mb4_unicode_ci
[prefix] =>
[strict] => 1
[engine] =>
)Видимые пароли настраиваются в Env как DB_PASSWORD=abcde#142!* Но пароль базы данных, считываемый в PHP-коде, настроен abcde Видно, что код содержимого после # считается комментарием, который игнорируется.
Продолжая просматривать журнал публикации Дженкинса, мы обнаружили вывод журнала:
Package operations: 0 installs, 3 updates, 0 removals - Updating vlucas/phpdotenv (v2.5.2 => v2.6.0): Downloading (connecting...)Downloading (0%) Downloading (15%)Downloading (100%)
В процессе публикации происходит обновление пакетов зависимостей.
См. vlucas/phpdotenv В документе см. следующие инструкции:
Комментарии
Вы можете прокомментировать свой файл .env , используя символ # . Например.
# this is a comment VAR="value" # comment VAR=value # comment
Решение
В. файл env, в поле пароля добавляются двойные кавычки, например DB_PASSWORD="abcde#142!*" , А затем все вернулось на круги своя.
Предполагается, что в файле env лучше добавить “” в конфигурацию переменных среды, чтобы избежать неожиданных катастроф.