在symfony中更新数据库模式时发生异常

时间:2016-01-08 14:43:21

标签: php mysql symfony docker doctrine

我对Symfony和Doctrine很陌生,因此一直在玩一些代码的分支,我将需要在不久的将来进行商业化的工作。

总而言之,我现在正处于修改现有实体的阶段,以便添加新参数。我已经更新了ORM注释来表示这个,正如我所理解的那样,如果我运行以下内容:

php app/console doctrine:migrations:diff

这应该会自动更新数据库表以添加新列以适应我的新属性。但是,当我运行它时,我收到以下错误:

 [Doctrine\DBAL\Exception\ConnectionException]                                                                                                      
  An exception occured in driver: SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: nodename nor servname provided, or not known  

当您通过浏览器中的表单与数据库进行交互时,可能值得注意的是该项目已经成功与数据库通信,所以我很担心为什么会出现此错误?

我也在docker容器上运行数据库,我认为这可能导致了这个错误。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

为了使symfony2能够与您的数据库通信,您需要在app/config/parameters.yml中设置正确的参数。

在使用composer进行初始安装时,命令行也可以请求这些参数(数据库,用户名,密码和主机名)。

无论使用哪种方法,您最终都会在app/config/parameters.yml找到它们。

祝你好运!