PostgreSQL 10.1 手册_部分 III. 服务器管理_第 21 章 数据库角色_21.4. 删除角色

本文涉及的产品
PolarSearch,搜索节点 4核8GB
PolarDB Agent Express,2核4GB
云数据库 PolarDB MySQL 版,列存表分析加速 8核16GB
简介: 21.4. 删除角色 由于角色可以拥有数据库对象并且能持有访问其他对象的特权,删除一个角色 常常并非一次DROP ROLE就能解决。任何被该用户所拥有 的对象必须首先被删除或者转移给其他拥有者,并且任何已被授予给该角色的 权限必须被收回。

21.4. 删除角色

由于角色可以拥有数据库对象并且能持有访问其他对象的特权,删除一个角色 常常并非一次DROP ROLE就能解决。任何被该用户所拥有 的对象必须首先被删除或者转移给其他拥有者,并且任何已被授予给该角色的 权限必须被收回。

对象的拥有关系可以使用ALTER命令一次转移出去,例如:

ALTER TABLE bobs_table OWNER TO alice;

此外,REASSIGN OWNED命令可以被用来把要被删除的 角色所拥有的所有对象的拥有关系转移给另一个角色。由于 REASSIGN OWNED不能访问其他数据库中的对象,有必要 在每一个包含该角色所拥有对象的数据库中运行该命令(注意第一个这样的 REASSIGN OWNED将更改任何在数据库间共享的该角色拥 有的对象的拥有关系,即数据库或者表空间)。

一旦任何有价值的对象已经被转移给新的拥有者,任何由被删除角色拥有的剩余对象 就可以用DROP OWNED命令删除。再次,由于这个命令不能 访问其他数据库中的对象, 有必要在每一个包含该角色所拥有对象的数据库中运行 该命令。还有,DROP OWNED将不会删除整个数据库或者表空间, 因此如果该角色拥有任何还没有被转移给新拥有者的数据库或者表空间,有必要手工 删除它们。

DROP OWNED也会注意移除为不属于目标角色的对象授予给目标 角色的任何特权。因为REASSIGN OWNED不会触碰这类对象,通 常有必要运行REASSIGN OWNED和 DROP OWNED(按照这个顺序!)以完全地移除要被删除对象的 从属物。

总之,移除曾经拥有过对象的角色的方法是:

REASSIGN OWNED BY doomed_role TO successor_role;
DROP OWNED BY doomed_role;
-- 在集簇中的每一个数据库中重复上述命令
DROP ROLE doomed_role;

如果不是所有的拥有对象都被转移给了同一个后继拥有者,最好手工处理异常 然后执行上述步骤直到结束。

如果在依赖对象还存在时尝试了DROP ROLE,它将发出 消息标识哪些对象需要被重新授予或者删除。

本文转自PostgreSQL中文社区,原文链接:21.4. 删除角色

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍如何基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
存储 关系型数据库 数据库
【赵渝强老师】PostgreSQL的服务器日志文件
本文介绍了PostgreSQL数据库的物理存储结构,重点讨论了服务器日志文件。通过`pg_ctl`命令启动PostgreSQL实例时,使用`-l`参数指定日志文件位置,记录数据库启动、运行及关闭过程中的关键信息。附有相关视频讲解和日志文件示例。
462 0
|
存储 开发工具 git
[Git] 深入理解 Git 的客户端与服务器角色
Git 的核心设计理念是分布式,每个仓库既可以是客户端也可以是服务器。通过 GitHub 远程仓库和本地仓库的协作,Git 实现了高效的版本管理和代码协作。GitHub 作为远程裸仓库,存储项目的完整版本历史并支持多客户端协作;本地仓库则通过 `.git` 文件夹独立管理版本历史,可在离线状态下进行提交、回滚等操作,并通过 `git pull` 和 `git push` 与远程仓库同步。这种分布式特性使得 Git 在代码协作中具备强大的灵活性和可靠性。
[Git] 深入理解 Git 的客户端与服务器角色
|
存储 弹性计算 容灾
阿里云服务器ECS详细购买流程【新手购买手册】
本文详细介绍了阿里云服务器ECS的购买全流程,包括付费类型、地域选择、网络及可用区配置、实例规格、镜像系统、存储设置(系统盘与数据盘)、快照服务、公网IP与带宽配置、安全组规则设定以及登录凭据设置等关键步骤。以自定义购买为例,帮助用户根据实际需求选择合适的配置,如长时间使用建议包年包月模式,地域选择遵循就近原则降低延迟,实例规格依据性能需求挑选,同时提供带宽计费模式对比和安全组基础配置指导。通过清晰的图文说明,让用户轻松完成阿里云服务器的选购与部署。
1618 6
|
存储 API 虚拟化
OpenStack私有云裸机物理服务器角色规划
【4月更文挑战第23天】企业私有云通常由管理节点、控制节点、计算节点、存储节点和网络节点组成的物理服务器集群构成
|
弹性计算 Linux 云计算
云服务器 ECS产品使用问题之幻兽帕鲁服务器角色存档丢失,该怎么办
云服务器ECS(Elastic Compute Service)是各大云服务商阿里云提供的一种基础云计算服务,它允许用户租用云端计算资源来部署和运行各种应用程序。以下是一个关于如何使用ECS产品的综合指南。
|
弹性计算 云计算
云服务器 ECS产品使用问题之如何解决更新后进游戏要重新创建角色的问题
云服务器ECS(Elastic Compute Service)是各大云服务商阿里云提供的一种基础云计算服务,它允许用户租用云端计算资源来部署和运行各种应用程序。以下是一个关于如何使用ECS产品的综合指南。
|
弹性计算 Ubuntu Linux
2024年Palworld/幻兽帕鲁服务器自建手册:详细步骤解析与设置指南
爆款游戏《幻兽帕鲁》是很多玩家在与好友开黑时的首选,因为《幻兽帕鲁》有着十分丰富的游戏内容,玩家在联机游玩《幻兽帕鲁》时能够获得非常多的快乐。 但在《幻兽帕鲁》进行联机时,是需要自行搭建服务器的,下面就带来,最新《幻兽帕鲁》服务器设置全步骤大全,方便玩家更好的进行联机游玩。 以下就是幻兽帕鲁服务器自建:幻兽帕鲁服务器设置全步骤大全的相关内容。
343 3
|
Linux 网络安全 开发工具
服务器操作手册(二)
【2月更文挑战第8天】
312 1
|
弹性计算 关系型数据库 数据库
开源PostgreSQL在倚天ECS上的最佳优化实践
本文基于倚天ECS硬件平台,以自顶向下的方式从上层应用、到基础软件,再到底层芯片硬件,通过应用与芯片的硬件特性的亲和性分析,实现PostgreSQL与倚天芯片软硬协同的深度优化,充分使能倚天硬件性能,帮助开源PostgreSQL应用实现性能提升。
|
存储 Oracle Unix
TSM服务器日常维护简明手册--TSM启动和停止
TSM服务器日常维护简明手册--TSM启动和停止
747 0

热门文章

最新文章

推荐镜像

更多