如何设置PostgreSQL schema权限?

Linux基础

1 前言

一个问题,一篇文章,一出故事。
笔者今天在一个未经测试的PostgreSQL版本中创建单库管理员权限,但是发现用户创建表时报错。

appDB=> CREATE TABLE test_table (id INT, name VARCHAR(50));
ERROR:  permission denied for schema public
LINE 1: CREATE TABLE test_table (id INT, name VARCHAR(50));
                     ^
appDB=>

2 最佳实践

2.1 测试环境

如何授权PostgreSQL用户单库管理权限?

2.2 操作步骤

2.2.1 切换到需要授权的数据库

\c "appDB";

2.2.2 授予用户对public模式的创建权限和所有表的操作权限

GRANT CREATE, USAGE ON SCHEMA public TO "appUser";

2.2.3 授予如果后续操作已存在的表的表级权限

GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO "appUser";

2.2.4 授予序列权限(如果表有自增字段会用到)

GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO "appUser";
没有评论

发表回复

Linux基础
如何安装部署Nacos单节点?

1 基础知识 1.1 软件简介 – Nacos是“Dynamic Naming and …

Linux基础
如何熟悉GitEgg框架?

1. 基础知识 1.1 框架简介 – GitEgg是一款开源免费的企业级微服务应用该开发 …

Linux基础
如何调整Squid请求的URL长度?

1 前言 一个问题,一篇文章,一出故事。 笔者的生产环境使用O365查看邮件发现图片显示异常。 由于 …