我最近尝试将我的Symfony应用程序部署到Ionos托管的服务器上。我已经在.env文件和doctrin.yaml文件中配置了数据库参数,但在尝试连接到数据库时遇到错误。
下面是我的配置的详细信息:
.env:
DATABASE_URL="mysql://dbu53*****:password@db50146*****.hosting-data.io:3306/dbs121*****"
doctrine.yaml文件:
doctrine:
dbal:
driver: 'pdo_mysql'
server_version: '8.0'
charset: utf8mb4
host: 'db50146*****.hosting-data.io'
port: 3306
user: 'dbu53*****'
password: 'password'
dbname: 'dbs121*****'
url: '%env(DATABASE_URL)%'
但是,当我尝试连接到数据库时,我得到以下错误:SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Unknown host.
我怀疑这个问题可能与我如何配置数据库连接参数有关,但我不确定这个错误的来源。我的配置中是否有任何明显的错误?有什么具体的东西我应该检查吗?
我感谢任何帮助,可以在解决这个问题与Symfony的远程数据库连接提供。
1条答案
按热度按时间ttcibm8c1#
这个错误意味着你的主机没有被dns解析。有时这是因为您的用户名或密码包含
@
符号,需要先进行转义。在某些情况下,'
和"
也需要转义。如果你使用一个doctrine url,你不必指定所有其他属性,如
driver
,server_version
,charset
,host
,port
,user
,password
和dbname
。这些都可以从URL中导出。并不是所有的环境都是一样的,所以你可以在一个url中配置这些。范例: