博客
关于我
PostgreSQL学习手册(模式Schema)
阅读量:745 次
发布时间:2019-03-22

本文共 874 字,大约阅读时间需要 2 分钟。

PostgreSQL模式的使用与管理

模式(Schema)在PostgreSQL中是一个组织数据库对象的重要层级。一个模式可以包含表、视图、序列、函数、数据类型等多种对象。与数据库不同,模式之间并非严格隔离,用户可以根据权限访问任意模式中的对象。

为什么需要模式?

  • 多用户共享:允许多个用户共享同一数据库而不互相干扰。
  • 逻辑组织:将数据库对象归类到特定的模式中,便于管理和维护。
  • 第三方应用隔离:将第三方应用置于独立模式,避免命名冲突。
  • 创建模式

    通过CREATE SCHEMA命令创建模式,例如:

    CREATE SCHEMA myschema;

    创建完成后,模式可以拥有其自身的逻辑对象。

    public模式

    PostgreSQL默认为每个数据库创建一个名为public的模式。操作命令如CREATE TABLE若未指定模式,等同于public模式下的对象。

    权限管理

    模式的所有者需赋予USAGE权限让用户查看对象。例如:

    GRANT ALL ON SCHEMA myschema TO public;

    赋予特定权限时,需根据对象类型选择权限项,如表的INSERT, SELECT等。

    通过角色管理模式

    创建角色并绑定模式:

    CREATE ROLE myschema LOGIN PASSWORD '123456';
    CREATE SCHEMA myschema AUTHORIZATION myschema;

    登录时使用角色名,如:

    psql -d MyTest -U myschema

    模式的删除

    删除模式及其所有对象时,使用CASCADE选项:

    DROP SCHEMA myschema CASCADE;

    搜索路径

    PostgreSQL通过搜索路径定位对象,类似于Linux的$PATH。当前模式总是第一位,若未找到,查找下一个模式。设置搜索路径:

    SET search_path TO myschema, public;

    查看当前搜索路径:

    SHOW search_path;

    通过以上方法,模式管理变得简便有效,助力数据库的组织与维护。

    转载地址:http://lrywk.baihongyu.com/

    你可能感兴趣的文章
    python3.8调用m文件,调用matlab
    查看>>
    python3.9新特性_Python 3.9 新特性速览
    查看>>
    Python3.x:遍历select下拉框获取value值
    查看>>
    python360百科_11月编程排行榜:Python超过Java成第二
    查看>>
    Python关于Paginator分页函数详细解析 附实战代码
    查看>>
    python3、ipython3、setup-tools、pip等环境搭建详细总结
    查看>>
    python3下使用cv2.imwrite存储带有中文路径图片或者绝对路径图片
    查看>>
    python3与django中@property详解
    查看>>
    python3中如何表示无穷大
    查看>>
    Python3中提示:no module named 'wxpy'
    查看>>
    python3中选择文件对话框的格式打开和保存图片
    查看>>
    python3为什么print永远都是地址_Python3 print 函数用法总结
    查看>>
    Python3之uuid模块
    查看>>
    Python3之写入Excel文档(xlsxwriter)
    查看>>
    Python3之打印操作打印流重定向(下)
    查看>>
    python3判断字典、列表、元组为空以及字典是否存在某个key的方法
    查看>>
    Python3利用pymysql操作 MySQL
    查看>>
    python3处理json文件中含有中文dumps的应用
    查看>>
    Python3子进程输出
    查看>>
    Python3学习笔记3,变量、运算符
    查看>>