专业只做数据库实训和认证的品牌机构

微信公众号新浪微博
免费咨询电话:400-0909-964
  • --->
当前位置: 网站首页 > pg大讲堂 > 从小白到专家 PostgreSQL技术大讲堂 - Part 7:PG用户schema相互关系

从小白到专家 PostgreSQL技术大讲堂 - Part 7:PG用户schema相互关系

文章来源: 更新时间:2023/2/8 14:27:04

在线老师点击咨询:

最新学讯:近期OCP认证正在报名中,因考试人员较多请尽快报名获取最近考试时间,报名费用请联系在线老师,甲骨文官方认证,报名从速!

我要咨询

PostgreSQL从小白到专家,是从入门逐渐能力提升的一个系列教程,内容包括对PG基础的认知、包括安装使用、包括角色权限、包括维护管理、、等内容,希望对热爱PG、学习PG的同学们有帮助,欢迎持续关注CUUG PG技术大讲堂。

Part 7:PG用户与schema关系

内容1:PostgreSQL Schema概述

内容2:PostgreSQL 用户与Schema

内容3:PostgreSQL schema管理

内容4:PostgreSQL public schema

内容5:PostgreSQL 模式使用建议


7.1、Schema概述

什么是schema(模式)? 用户对象的集合叫做模式。比如:scott用户下有表emp、dept、salgrade等,还有几个索引,还有一些约束等等,那么scott用户下所有对象的集合就叫scott模式。

可以把用户下拥有的对象根据业务分类,不同的对象存放在不同的模式下。

新建的数据库默认会创建不同的模式来管理对象。比如:information_schema、pg_catalog、pg_temp_1、pg_toast、pg_toast_temp_1、public 等。

不同的schema下可以有相同名字的表、函数等对象,互相之间是不冲突的。只要有权限,每个schema的对象是可以互相调用的。

7.2、用户与模式对应关系

一个用户可以创建与拥有多个模式。

一个模式只能属于一个用户。

普通用户创建模式时需要授权在指定的数据库下创建模式的权限。

GRANT { { CREATE | CONNECT | TEMPORARY | TEMP } [, ...] | ALL [ PRIVILEGES ] }ON DATABASE database_name [, ...] TO role_specification [, ...] [ WITH GRANT OPTION ] 创建用户示例

7.3、管理模式

授权

GRANT CREATE ON DATABASE testdb TO u1;

创建模式

create schema sport; create schema art;

查看模式

testdb=> \dn 

List of schemas 

Name | Owner

------+-------

art | u1

public | postgres

sport | u1

授权某个模式下的对象访问权限给其它用户,则需要先授权访问该模式的权限给其它用户

GRANT USAGE ON SHEMA sch_name TO role_name;

GRANT SELECT ON sch_name.tab_name TO role_name;

删除模式,模式只能由其拥有者或超级用户删除

drop schema schema_name;

删除模式时同时删除所依赖的对象

drop schema chema_name cascade;

7.4、Public模式

初始化数据库时会自动创建一个Public模式,共享给所有用户使用,任何用户都可以把对象创建在该模式下,由于PostgreSQL下一个用户对应多个模式,创建用 户时没有创建对应的默认模式,而对象都是基于模式管理的,所以创建一个公用 的模式public。

基于数据库安全考虑,可以删除public模式(可选)。

7.5、模式使用建议

Oracle数据库一个用户对应一个模式,且名字一样。

PostgreSQL数据库可以规划成一个用户对应多个模式。

基于简化管理的目的,可以规划成一个用户对应一个与用户名一样的模式。

以上就是Part 7 - PG用户与模式 的内容,大家可以进群一起探讨,QQ交流群:752027153

微信交流群:联系客服拉你进微信PG交流群

钉钉交流群:35822460,钉钉群内有专门视频讲解此内容

本文地址:http://www.cuug.com.cn/pgdjt/33208722617.html 转载请注明!


在线预约 抢先报名 获取课程排期

Oracle培训机构

金牌讲师<>

冉乃纲-老师CUUG金牌讲师
冉老师 CUUG金牌讲师 Oracle及RedHat高级讲师、Unix/Linux 资深专家...[详细了解老师]

免费咨询上课流程 客服在线中

陈卫星-老师CUUG金牌讲师
陈老师 CUUG金牌讲师 精通Oracle管理、备份恢复、性能优化 11年Ora...[详细了解老师]

免费咨询上课流程 客服在线中

选学校如何选择适合自己的学校

CUUG -CHINA UNIX USER GROUP,是国际UNIX组织UNIFORUM的中国代表,是国内悠久的专业UNIX培训机构,被誉为中国UNIX 的摇篮。多年来,以提高教学质量为本,强调素质教育,积极引进、消化国外的新技术,有效的结合中国....[详情]

一站式服务(从入学到就业一帮到底)

入学

学习

就业

实操

食宿
地址:北京市海淀区田村山南路35号院17号楼
课程咨询:010-59426307 010-59426319 400-0909-964
企业服务:137 1818 8639(陈经理)
部分信息来源于网络,如有错误请联系指正!
版权所有@北京神脑资讯技术有限公司 (CUUG,中国UNIX用户协会) Copyright 2016 ALL Rights Reserved 京ICP备11008061号-1