错误:无法删除角色,因为某些对象依赖于它
Posted
技术标签:
【中文标题】错误:无法删除角色,因为某些对象依赖于它【英文标题】:ERROR: role cannot be dropped because some objects depend on it 【发布时间】:2021-05-27 17:37:42 【问题描述】:我正在尝试放弃一个角色,但得到了这个: 错误:无法删除角色“xyz”,因为某些对象依赖于它 它显示了哪些对象,它们是服务器上不同数据库上不同模式的表。 有没有一种简单的方法可以删除角色,而不必对所有数据库上的所有表/模式逐个撤销权限?
当我在某处阅读时,我不想放弃拥有,只是放弃角色
谢谢!
【问题讨论】:
见这里Drop role 这有帮助,但是,我正在寻找一种方法来一次删除所有分配给角色的授权,而不是在每个表/模式上逐个删除。 “重新分配拥有”是否会从您尝试删除的角色中删除分配? 【参考方案1】:没有简单的方法。
一些命令可以节省您的工作:REASSIGN OWNED
、REVOKE ALL ON ALL ... IN SCHEMA ...
。
但最终,您必须先删除所有这些依赖项,然后才能删除该角色。
不要忘记单个角色可以拥有对象/在许多数据库中拥有权限。
【讨论】:
谢谢,这很有帮助。有没有办法说这样的话:REVOKE ALL PRIVILEGES ON ALL TABLES on all SCHEMA foo FROM someone 不 - 我会告诉你的。以上是关于错误:无法删除角色,因为某些对象依赖于它的主要内容,如果未能解决你的问题,请参考以下文章