Symfony 5 SQLSTATE [HY000] [2002] php_network_getaddresses: сбой getaddrinfo: - PullRequest
0 голосов
/ 07 февраля 2020

Я пытаюсь запустить

 php bin/console make:migration

Я получил эти ошибки

In AbstractMySQLDriver.php line 93:
   An exception occurred in driver: SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Temporary failure in name resolution
 In PDOConnection.php line 31:
    SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Temporary failure in name resolution
 In PDOConnection.php line 27:
    SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Temporary failure in name resolution
 In PDOConnection.php line 27:
    PDO::__construct(): php_network_getaddresses: getaddrinfo failed: Temporary failure in name resolution

Я проверил все мои файлы .env. Я настроил

DATABASE_URL=mysql://mylocalDb:#fL3@&_{Dx3N@127.0.0.1:3306/LocalDataBase

Я изменил конфигурацию doctrine для использования server_version: '5.7'. Я точно не знаю, правильно ли это. Я просто удалил знак # перед строкой из-за примечания, в котором говорилось, что вы должны настроить версию своего сервера. Но не уверен, на какой сервер он ссылается.

Итак, мой вопрос, как мне проверить соединение с базой данных в Symfony. Я искал документы и не смог найти четкого ответа на этот вопрос. Когда я запускаю

 php bin/console doctrine:database:create

Это выдает ошибку

 In CreateDatabaseDoctrineCommand.php line 82:
   Connection does not contain a 'path' or 'dbname' parameter and cannot be created.

Я дважды очистил кэш после внесения изменений в конфигурацию и все еще получаю те же сообщения об ошибках. Какие еще способы я могу проверить соединение с БД.

https://symfony.com/doc/current/doctrine.html#configuring -the-database

1 Ответ

1 голос
/ 07 февраля 2020

Ваш пароль БД содержит '@', что нарушает синтаксический анализатор Symfony, и изменение пароля, чтобы этот символ не имел символа, должно решить вашу проблему.

...