我正在尝试
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
我已将学说配置更改为使用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
答案 0 :(得分:1)
您的数据库密码包含“ @”,这会破坏Symfony的解析器,将密码更改为不包含符号应该可以解决您的问题。
答案 1 :(得分:1)
就像 ikyuchukov 所说,“@
”字符会破坏解析。但是在我看来,不是更改密码,而是对这个字符进行 url 编码会做得更好。您可以将其替换为 url 编码的值“%40
”。