Doctrine 数据库创建命令因 Postgresql 失败

问题描述 投票:0回答:1

当在 Symfony 中时,我尝试通过原则创建数据库:database:create 它会抛出以下异常:

[Doctrine\DBAL\Exception\ConnectionException]                                
 An exception occured in driver: SQLSTATE[08006] [7] FATAL:  database "tm_ootb" does not exist

我是否遇到了错误,或者我在配置中遗漏了某些内容。

这是我的 dbal 配置:

dbal:
    driver:   pdo_pgsql
    host:     "%database_host%"
    port:     "%database_port%"
    dbname:   "%database_name%"
    user:     "%database_user%"
    password: "%database_password%"
    charset:  UTF8
postgresql symfony doctrine-orm
1个回答
0
投票

原来是Postgresql的权限情况。根据您在参数上配置的用户级别,您将面临这种情况。

当使用也拥有名为 postgres 的管理数据库的 postgres 超级用户帐户连接到 Postgres 时,完全没有问题,因为它发出以下命令:

psql -U postgres

没问题,因为用户和数据库存在,之后发出“createdb”命令。但是,当使用不拥有数据库或不是超级用户的任何其他用户时,它会抛出提及错误。 Doctrine 应该有办法避免此类错误。

希望这对其他人有用。

© www.soinside.com 2019 - 2024. All rights reserved.