PostgreSQL 数据库初始化

按照先后顺序创建

  1. 创建全局数据库(GLOBAL)
  • 全局数据库中存储与数据库集群相关的信息,例如集群中的数据库、用户、 角色等。
  • 用户不能连接全局数据库。
  • 全局数据库中的数据操作由DBMS自动完成
  1. 创建临时数据库(TEMPDB)
  • 临时数据库用于存储DBMS在运行过程中产生的临时信息,例如排序、创建hash表等。
  • 用户不能连接临时数据库,临时数据库中的数据操作由DBMS自动完成。
  1. 创建模板数据库(TEMPLATE0和TEMPLATE1)
  • 模板数据库中存储了每个数据库的系统表信息,它是创建一个新数据库的样板。
  • Template0 : 最原始的模板库,不允许建立数据库连接。
  • Template1 : 创建其他数据库使用的模板数据库,可以进行定制。
  1. 创建样例数据库(SAMPLE)

  2. 创建用户数据库(TEMPLATE2)

  • 工具使用的数据库。

表空间与数据文件对应关系

  • 新创建的数据库包括:
  • Catalog表空间 – databasename.dbf

Catalog表空间 存放系统表信息。

  • PG表空间 – Udatabasename.dbf
  • PG表空间 存放用户数据。
  • 若表空间只对应一个数据文件,该表空间中的所有对象都存储在这个数据文件中
    若表空间对应多个数据文件,可以将一个对象的数据存储在任意数据文件中,甚至同一个对象的数据可以分布在多个数据文件中。
  • Temp表空间-- Tdatabasename.dbf

待续…

椟夜的PostgreSQL源码分析文章汇总

PostgreSQL 数据库初始化_第1张图片

你可能感兴趣的:(PostgreSQL)