【问题标题】:Postgres - I don't have a superuser and I can't create a role or I can't grant access to any other user as a superuserPostgres - 我没有超级用户并且我无法创建角色或者我无法将访问权限授予任何其他用户作为超级用户
【发布时间】:2023-02-14 04:58:53
【问题描述】:

我目前正在通过 postgres 迁移工作,由于某种原因,数据库不允许我以超级用户身份登录。我还尝试从超级用户重置密码,但我做不到。

服务通过Azure运行,服务器类型称为Postgresql flexible server。

我已经运行过的命令:

ALTER ROLE [USER] WITH SUPERUSER;
ALTER ROLE [USER] WITH PASSWORD '[NEW-PASSWORD]'

我收到的错误类型如下:

Error: Must be superuser to create superuser

解决这种情况的最佳方法是什么?有谁知道如何强制创建超级用户?

【问题讨论】:

  • 所以根本与 SQL Server 无关 - 标记已删除。
  • 如果您可以使用 root 访问权限访问服务器终端,请尝试:sudo su postgrespsql 然后运行您提到的命令
  • AZURE Postgres SQL 灵活服务器是一个托管数据库,Azure 管理备份/恢复/复制/监控。您不能以超级用户身份连接并且存在一些限制(cf,无法创建表空间)Azure PGSQL 有一个管理员用户,几乎拥有所有权限。这是你可以拥有的最大
  • 好吧,这更有意义。但是,我遇到的问题是将模式上传到新数据库。它告诉我运行查询时出现错误。该错误消息如下:必须是扩展 plpsql 的所有者。你知道我还能做些什么来解决这个问题吗?我认为这个问题与超级用户有关..

标签: database postgresql azure psql


【解决方案1】:

管理员用户是您在服务器上拥有的最高权限用户。它属于角色 azure_pg_admin。此角色没有完全的超级用户权限。 PostgreSQL 超级用户属性分配给属于托管服务的 azure_superuser。您无权访问此角色。你可以阅读更多here

【讨论】:

  • 好吧,这更有意义。但是,我遇到的问题是将模式上传到新数据库。它告诉我运行查询时出现错误。该错误消息如下:必须是扩展 plpsql 的所有者。你知道我还能做些什么来解决这个问题吗?我认为这个问题与超级用户有关..
猜你喜欢
  • 2013-05-07
  • 2022-01-21
  • 2021-12-07
  • 1970-01-01
  • 2021-05-15
  • 1970-01-01
  • 2012-12-13
  • 2020-02-01
相关资源
最近更新 更多