【问题标题】:Postgres - How to use psql to create a database with the -c command and password authentication?Postgres - 如何使用 psql 通过 -c 命令和密码验证创建数据库?
【发布时间】:2014-02-24 17:40:48
【问题描述】:

如果我运行以下命令:

psql -h localhost -U admin -c "CREATE DATABASE sales OWNER admin;"

返回:

psql FATAL:数据库“admin”不存在

我需要使用密码验证并设置 .pgpass 如下:

localhost:*:*:admin:admin

有什么想法吗?

【问题讨论】:

    标签: postgresql authentication command-line passwords psql


    【解决方案1】:

    默认情况下,当你以用户身份连接时,所连接的数据库是与用户同名的数据库。

    如果您想连接到不同的数据库,您必须在psql 命令行中指定它。由于在这种情况下您正在尝试创建数据库,但您还无法连接到它,您必须连接到另一个已经存在的数据库(例如 template1postgres)。

    例如

    psql -h localhost -U admin template1 -c "CREATE DATABASE sales OWNER admin;"
                               ^^^^^^^^^
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-20
      • 1970-01-01
      • 2022-07-15
      • 2013-11-15
      • 1970-01-01
      • 2017-12-25
      • 1970-01-01
      • 2015-06-16
      相关资源
      最近更新 更多