Php 无法创建具有规则的postgres数据库

Php 无法创建具有规则的postgres数据库,php,postgresql,symfony,doctrine-orm,doctrine,Php,Postgresql,Symfony,Doctrine Orm,Doctrine,我在Symfony2有一个关于条令的项目。在一瞬间,我失去了通过控制台命令创建/删除数据库的能力,比如 app/console doctrine:database:drop --force app/console doctrine:database:create app/console doctrine:schema:update --force 如果我试图创建数据库,则会出现下一个错误: [Doctrine\DBAL\Exception\ConnectionException]

我在Symfony2有一个关于条令的项目。在一瞬间,我失去了通过控制台命令创建/删除数据库的能力,比如

app/console doctrine:database:drop --force
app/console doctrine:database:create
app/console doctrine:schema:update --force
如果我试图创建数据库,则会出现下一个错误:

[Doctrine\DBAL\Exception\ConnectionException]                                                     
  An exception occured in driver: SQLSTATE[08006] [7] FATAL:  database "motherhood" does not exist 
所以,我可以使用用户在psql中创建数据库,用symfony config编写。如果我试图通过条令删除现有数据库,它会给出以下信息:

SQLSTATE[55006]: Object in use: 7 ERROR:  database "motherhood" is being accessed by other users
DETAIL:  There are 1 other session using the database.

但是没有连接到此数据库

问题的快速解决方法是创建一个与执行命令的用户同名的数据库,因为PostgreSQL必须连接到数据库,即使在创建新数据库时也是如此

删除数据库时出现的故障应在DoctrineBundle 1.4中修复


创建数据库的失败将在下一版本(2.5.2)的doctrine/dbal中修复,如下所述:。通过始终连接到模板数据库(无法删除)可以解决此问题。

我自己也会遇到同样的错误。doctrine忽略了database_name:的config参数,并告诉我当我喜欢你时,配置中名为database_user:的数据库不存在。当然,这是不存在的,存在的数据库是由database\u name指定的,而不是database\u user指定的。对于新的symfony用户来说非常令人沮丧