当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


PostgreSQL ALTER ROLE用法及代码示例


在 PostgreSQL 中,ALTER ROLE语句用于管理和修改角色。它可用于修改角色的名称、角色的属性以及更改角色的会话默认配置变量。

用法: ALTER ROLE role_name [WITH] option;

以下函数可用于 ALTER ROLE 语句:

  • SUPERUSER | NOSUPERUSER -它用于确定角色是否为超级用户。
  • VALID UNTIL ‘timestamp’ -它用于指定角色密码的到期日期和时间。
  • CREATEDB | NOCREATEDB-它用于向角色提供创建新数据库的权限。
  • REPLICATION | NOREPLICATION -它用于检查角色是否为复制角色。
  • CREATEROLE | NOCREATEROLE -它用于为角色提供创建或修改角色的权限。
  • PASSWORD ‘password’ | PASSWORD NULL -它用于更改角色的密码。
  • INHERIT | NOINHERIT -它用于确定继承的角色是否具有父角色的所有继承权限。
  • BYPASSRLS | NOBYPASSRLS -它用于检查角色是否可以绕过 row-level 安全 (RLS) 策略。
  • LOGIN | NOLOGIN -顾名思义,它用于允许角色登录。
  • CONNECTION LIMIT limit -它用于设置角色可以建立的并发连接数。这里 -1 表示角色可以创建无限数量的行。

以下是使用 ALTER ROLE 语句时必须遵循的一组规则:

  • 超级用户可以修改任何角色的属性。
  • 只有非超级用户和 no-replication 角色可以修改,如果角色具有 CREATE ROLE 属性。
  • 序数角色只能更改其密码。

例:

首先,使用 Postgres 角色登录 PostgreSQL。



现在,使用 CREATE ROLE 语句创建一个名为“Ravi”的新角色:

create role ravi login password 'geeks12345';

现在使用以下语句将 ravi 的角色修改为超级用户:

alter role ravi superuser;

要查看角色,请使用以下命令:

\du ravi

输出:

相关用法


注:本文由纯净天空筛选整理自RajuKumar19大神的英文原创作品 PostgreSQL – ALTER ROLE。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。