当前位置: 首页 > 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

相关文章:

  • huggingface的lora与resume方法训练模型(以BERT为列)
  • C++第4课——swap、switch-case-for循环(含视频讲解)
  • 编程相关学习点——代码内容及结构
  • Pinctrl子系统pinctrl_desc结构体进一步介绍
  • Unity3D 开发教程:从入门到精通
  • 北京迅为iTOP-LS2K0500开发板快速使用编译环境虚拟机Ubuntu基础操作及设置
  • 面向对象高级-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)