意外删除了用户的超级用户权限:postgres 10 上的帖子.如何在不重新安装的情况下将其取回?



我不小心删除了用户:postgres的超级用户权限。我不知道如何获得另一个超级用户。我停止了 postgres 服务并尝试使用单用户模式登录:

/usr/pgsql-10/bin/postgres --single -D /var/lib/pgsql/10/data

我收到此错误:

不允许 PostgreSQL 服务器的"根"执行。 服务器必须在非特权用户标识下启动,以防止 可能的系统安全危害。 请参阅的文档 有关如何正确启动服务器的详细信息。

在 Linux 中,如何在单用户模式下启动 Postgres,以便修复超级用户权限?

编辑:我使用此链接作为参考,但是我收到上面提到的错误。 意外删除了 postgres 默认超级用户权限 - 我可以找回它吗?

我结合了以下三个链接的解决方案:

  1. 意外删除了 postgres 默认超级用户权限 - 我可以找回它吗?
  2. 在 postgres 服务器上恢复超级用户帐户
  3. 不允许 PostgreSQL 服务器的"根"执行

停止 postgresql 服务后,我运行了以下命令:

sudo -u postgres /usr/pgsql-10/bin/postgres --single -D /var/lib/pgsql/10/data
/
  1. usr/pgsql-10/bin/postgres 是我的 postgres 二进制文件的位置

  2. /
  3. var/lib/pgsql/10/data 是我的 postgresql 会议的位置

这允许我访问单用户模式,我只是在其中键入以下命令:

ALTER USER postgres SUPERUSER;

因此,如果有人遇到与我相同的情况,请尝试发布命令。

只是为postgresql 12(Ubuntu(添加这个,可能向上

sudo -su postgres /usr/lib/postgresql/12/bin/postgres --single -D /etc/postgresql/12/main

相关内容

最新更新