【问题标题】:postgres superuser is not created upon installation安装时未创建 postgres 超级用户
【发布时间】:2022-01-25 22:58:40
【问题描述】:

对 postgresql 来说是全新的;刚刚通过 m1 Mac 上的 brew 第一次安装(版本 14.1)。安装工作正常,但我认为安装过程还应创建一个名为“postgres”的超级用户,但是当尝试使用“postgres”连接到 PostgreSql 时 sudo -u postgres psql 它说unknown user: postgres

我在这里错过了什么?

更新:对不起,但忘了补充说我正在关注一本使用 postgresql 版本 13 的书;在书中说,通过 brew 安装后,它会自动创建一个超级用户“postgres”,可用于登录服务器以创建数据库。

【问题讨论】:

  • 你试过psql -U postgres吗?
  • 见这里Homebrew。 Homebrew 安装的短版本不会创建 postgres 数据库用户。
  • 它现在已经解决,我在下面发布了一个答案,以防它可能对其他人有所帮助。

标签: postgresql macos


【解决方案1】:

尝试使用您当前的用户登录。这是我的输出

 ~ $ whoami
macbook
 ~ $ psql
psql (13.3)
Type "help" for help.

macbook=# select * from user;
  user
---------
 macbook
(1 row)

macbook=#

所以 postgresql 创建macbook 用户,作为我在系统中的用户名。

我有 MacOS Big Sur 11.6 和 postgresql13.3。

【讨论】:

  • 当我运行psql 时,它无法连接到数据库;它说数据库“xxx”不存在,其中 xxx 是我的用户名。
  • @stt106 尝试psql -d template1。如果运气不好,尝试运行createdb 为您的用户创建数据库,然后只需psql Source
  • 现在已经解决了,谢谢。
  • @stt106 乐于助人。如果此答案或任何其他答案解决了您的问题,请将其标记为已接受。
【解决方案2】:

"unknown user: postgres" 看起来像一条 sudo 错误消息(或其中的一个片段),而不是 PostgreSQL 错误消息。它抱怨名为 postgres 的操作系统用户,而不是具有相同拼写的数据库用户。您不知道该名称的数据库用户是否存在,因为您还没有走得足够远。

安装方法的作用取决于安装方法是什么,你没有告诉我们。

【讨论】:

  • 我说我用brew安装的。
【解决方案3】:

以防万一这可能有助于其他使用 m1 macOS 和 14.1 版 postgresql 的人。 使用brew安装后,只需运行

brew services start postgresql
psql postgres

连接到服务器。 我正在阅读的书使用了第 13 版,根据通过 brew 安装的书将自动创建一个超级用户 postgres 并使用命令sudo -u postgres psql 进行连接,但在 14.1 版上似乎不再是这种情况了。

【讨论】:

    猜你喜欢
    • 2023-03-08
    • 1970-01-01
    • 2013-07-22
    • 1970-01-01
    • 2020-12-15
    • 2021-10-13
    • 2019-03-05
    • 2012-06-01
    • 1970-01-01
    相关资源
    最近更新 更多