当前位置: 首页 > article >正文

PostgreSQL 删除角色

我们在使用 PostgreSQL 数据库的时候,经常会遇到这样的场景,就是某个角色,现在不需要了,我们需要删除。但是在删除的时候又提示你无法删除角色。下面看一下具体的情况。

DROP USER cloud_readonly
> ERROR:  role "cloud_readonly" cannot be dropped because some objects depend on it
DETAIL:  privileges for schema public
privileges for database test
privileges for default privileges on new relations belonging to role postgres in schema public
privileges for table a

那么我们怎么删除不需要的用户角色呢?
-- 1. 确保重新分配所有对象的所有权  
REASSIGN OWNED BY cloud_readonly TO postgres;  

-- 2. 撤销表权限  
REVOKE ALL PRIVILEGES ON ALL TABLES IN SCHEMA public FROM cloud_readonly;  

-- 3. 撤销序列权限  
REVOKE ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public FROM cloud_readonly;  

-- 4. 撤销函数权限  
REVOKE ALL PRIVILEGES ON ALL FUNCTIONS IN SCHEMA public FROM cloud_readonly;  

-- 5. 撤销默认权限  
ALTER DEFAULT PRIVILEGES IN SCHEMA public REVOKE ALL ON TABLES FROM cloud_readonly;   
ALTER DEFAULT PRIVILEGES IN SCHEMA public REVOKE ALL ON SEQUENCES FROM cloud_readonly;  

-- 6. 确保撤销模式的权限  
REVOKE USAGE ON SCHEMA public FROM cloud_readonly;

-- 7. 确保撤销数据库的权限  
REVOKE ALL ON DATABASE test FROM cloud_readonly;  

-- 8. 最后,尝试删除角色  
DROP USER cloud_readonly;


http://www.kler.cn/a/373188.html

相关文章:

  • [0242-07].第09节:SpringBoot中简单功能分析
  • 【Elasticsearch】全文搜索与相关性排序
  • 如何制作符合自己设备的FLM下载算法
  • macos arm 本地/docker/本地k8s 安装jupyterhub 并登陆
  • GitLab集成Jira
  • 【机器学习】制造业转型:机器学习如何推动工业 4.0 的深度发展
  • 面向对象高级-static
  • 为什么选择 Spring data hadoop
  • 蓝牙BLE开发——红米手机无法搜索蓝牙设备?
  • 编程小白如何成为大神?大学新生的最佳入门攻略
  • QT 12.自定义信号、信号emit、信号参数注册_ev
  • 【Python · Pytorch】人工神经网络 ANN(中)
  • Agile敏捷方法
  • 内存马浅析
  • 关于深度学习方向学习的一些建议
  • 计算机低能儿从0刷leetcode | 33.搜索旋转排列数组
  • 10.30Python_异常文件操作json正则
  • 12. MapReduce全局计数器
  • Vue3实现地球上加载柱体
  • 如何将 Excel 数据转换为 SQL 脚本:从入门到实战
  • C# 将批量图片转为PDF文件
  • ts:模块导入、导出的简单使用(export、import)
  • 【Vue3】第二篇
  • 2024年“炫转青春”山东省飞盘联赛盛大开赛——临沭县青少年飞盘运动迅速升温
  • 文本分段Chunking综述-RAG
  • 解决:如何在opencv中得到与matlab立体标定一样的矫正图?(python版opencv)