zoukankan      html  css  js  c++  java
  • postgres使用记录

    常用概念

     

    1、postgres中的schema

    schema是处于数据库和表之间的一层结构,可以理解为命名空间,可以翻译成模式或者架构

    数据库-schema-表,所以表示建立在schema中的

    schema不能嵌套,同一schema下不能有重复的对象名字

    create table user12(a int);

    select schemaname from pg_catalog.pg_tables where tablename = 'user12';   # 系统视图中查找表对应的schema

    \dt user12  # 查看表的属性
    \dn # 查看库中所有的schema

    如果创建表时没有显式指定schema,新创建的表会放在public schema中,其他对象也是一样的;

    有两种方式查看表是属于哪个schema的,1 查看系统目录视图,2 使用psql命令

    注意:

    "select * from user"  # 这个查询的user表,和public.user不一样,user是定义在数据库实例中,不在数据库中

    一个数据库集群中可以有一个或多个命名的数据库;

    一个数据库包含一个或多个命名的模式;

    使用模式的好处:

    • 一个数据库中可以有多个用户使用多个模式,互不干扰

    • 第三方应用可以放在不同的模式中,防止对象的名字冲突

    如果不写特定的模式名,都会默认添加到默认的模式中,根据搜索路径顺序添加的

    搜索路径:

    show search_path;
    默认值为:
    "$user", public

    可以修改这个搜索路径,将第一个值设置成我们需要的模式,然后默认数据添加就添加到对应的模式了;不需要在指定模式名了

    SET search_path TO myschema,public;
    还原search_path:
    set search_path TO "$user",public;
    set search_path = "$user",public;

     

    2、角色和用户

    角色role和用户user是两个相同的对象,唯一的区别是创建的时候;

    默认创建的角色是没有登录权限,而创建的用户有登录权限

    create role zhanzhan password '895544';
    -- 删除角色
    drop role zhanzhan;

    -- 创建和删除用户
    create user zhanzhan1 password '895544';
    -- 删除用户
    drop user zhanhan1;

     

     

    3、表空间

    表空间是用来规定数据库的存放位置;

    所以创建数据库时可以指定数据库的表空间;

    4、数据库的权限

    http://www.freeoa.net/osuport/db/the-postgres-privileges_3112.html

     

    命令行

    http://www.freeoa.net/osuport/db/postgresql-comm-used-cmd-refer_3072.html

    启动命令:

    psql -U postgres -d postgres

    创建模式

    CREATE SCHEMA freeoa AUTHORIZATION postgres;

    查看数据库版本号

    select version();

     

     

     

    常见问题记录

     

     

    1、mac系统异常关机之后点击sql shell 打不开了

    启动sql shell的脚本位置:

    /Library/PostgreSQL/13/scripts/runpsql.sh

    mac异常关机后打不开了,

    尝试手动启动sql:

    psql -U postgres -d postgres -h 127.0.0.1

     

    如果连接不上了,尝试删除/usr/local/var/postgres/postmaster.pid,然后重试

  • 相关阅读:
    java 正则 二次转义
    HDU1789 Doing Homework again 【贪心】
    扣丁学堂笔记第22天多媒体播放
    [Python]BeautifulSoup—HTML解析包
    Android高级控件(三)—— 使用Google ZXing实现二维码的扫描和生成相关功能体系
    Business Process and SAP ERP
    HTML基础知识总结一
    控制器View是怎样创建的?
    cocos2d-x 3.0 场景切换特效汇总
    LeetCode 3Sum
  • 原文地址:https://www.cnblogs.com/Zhanxueyou/p/15813039.html
Copyright © 2011-2022 走看看