postgresql中的删除角色

postgresql中的删除角色,postgresql,Postgresql,我也有同样的问题,放弃一个角色。对谷歌做了这么多研究,但没有任何帮助 SQL错误[2BP01]:错误:无法删除角色“readonly”,因为某些对象依赖于它详细信息:在架构公共中属于角色rohit的新关系上的默认权限的权限 以下是我为删除角色只读所做的操作 REVOKE USAGE ON SCHEMA public FROM readonly; REVOKE ALL ON SCHEMA public FROM readonly; REVOKE ALL PRIVILEGES ON ALL TA

我也有同样的问题,放弃一个角色。对谷歌做了这么多研究,但没有任何帮助

SQL错误[2BP01]:错误:无法删除角色“readonly”,因为某些对象依赖于它详细信息:在架构公共中属于角色rohit的新关系上的默认权限的权限

以下是我为删除角色只读所做的操作

REVOKE USAGE ON SCHEMA public FROM readonly;
REVOKE ALL ON SCHEMA public FROM readonly;


REVOKE ALL PRIVILEGES ON ALL TABLES IN SCHEMA public FROM readonly;
REVOKE ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public FROM readonly;
REVOKE ALL PRIVILEGES ON ALL FUNCTIONS IN SCHEMA public FROM readonly;

  
REVOKE CONNECT ON DATABASE kozuchi_db FROM readonly;
REVOKE CONNECT ON DATABASE parc_prod FROM readonly;
REVOKE CONNECT ON DATABASE postgres FROM readonly;


DROP USER readonly;

您的Postgres集群中应该有一些对象是通过
readonly
用户创建的

签入数据库对象并更改这些对象的所有者,然后尝试删除用户。

尝试此操作

DROP归readonly所有;
删除角色只读;

根据错误消息,为角色设置了一些默认权限。把它们拿开

ALTER DEFAULT PRIVILEGES FOR ROLE rohit IN SCHEMA public
   REVOKE ALL ON TABLES FROM readonly;

我犯了一个错误。SQL错误[42501]:错误:删除对象的权限被拒绝。我是否需要成为超级用户才能执行此操作?此外,我不想删除readonly拥有的所有对象?我想马上放弃这个角色。谢谢!这是显而易见的。但是如何检查哪个对象与readyonly角色有依赖关系?请检查
pgu类
/
pgu表
以查找所有者为
只读
用户的对象。然后,更改这些对象的所有者。是否有一种快速方法可以查看所有对象都依赖于角色?我仍然看到错误:错误[2BP01]:错误:无法删除角色“readonly”,因为某些对象依赖于它。详细信息:数据库中的1个对象是\u db我运行了命令ALTER SCHEMA中角色rohit的默认权限public REVOKE ALL on TABLES FROM readonly;然后是其他命令。但还是有错误。不,没有捷径。你必须一个接一个地清除障碍,从错误信息中获取线索。