暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

从小白到专家 PG技术大讲堂 - Part 7:PG用户与Schema对应关系

北京CUUG 2023-02-08
189











Part 7:PG用户与Schema


内容1
PostgreSQL Schema概述
内容2PostgreSQL 用户与Schema关系
内容3PostgreSQL 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用户与Schema 的内容,欢迎进群一起探讨交流
                QQ交流群:752027153
                微信交流群:联系客服拉你进微信PG交流群
                钉钉交流群:35822460,本周五晚上8点会在钉钉群专门讲解











                相关阅读:

                从小白到专家 PG技术大讲堂 - Part 1:PG简介
                从小白到专家 PG技术大讲堂 - Part 2:PG源代码安装
                从小白到专家 PG技术大讲堂 - Part 3:PG建库与使用
                从小白到专家 PG技术大讲堂 - Part 4:PG实例结构
                从小白到专家 PG技术大讲堂 - Part 5:PG数据库结构
                从小白到专家 PG技术大讲堂 - Part 6:PG用户与角色管理

                蓝蓝的天

                -->> 联系客服,进群或领取文档资料

                文章转载自北京CUUG,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                评论