所需E币: 0
时间: 2023-6-25 08:59
大小: 1.51KB
PostgreSQLDBA实战视频教程2023|PostgreSQL14.6教程课程1、PostgreSQL安装与管理课程2、PostgreSQL数据库SQL基础课程3、PostgreSQL表详解课程4、PostgreSQL索引详解课程5、PostgreSQL对象管理课程6、PostgreSQL安全管理课程7、PostgreSQL并发控制文档资料想要理解PostgreSQL的数据库结构,需要先了解一些重要的概念。数据库相关概念:PostgreSQL由一系列数据库组成。一套PostgreSQL程序称之为一个数据库群集。当initdb()命令执行后,template0,template1,和postgres数据库被创建。template0和template1数据库是创建用户数据库时使用的模版数据库,他们包含系统元数据表。initdb()刚完成后,template0和template1数据库中的表是一样的。但是template1数据库可以根据用户需要创建对象。用户数据库是通过克隆template1数据库来创建的;表空间相关概念:initdb()后马上创建pg_default和pg_global表空间。建表时如果没有指定特定的表空间,表默认被存在pg_default表空间中。用于管理整个数据库集群的表默认被存储在pg_global表空间中。pg_default表空间的物理位置为$PGDATA\base目录。pg_global表空间的物理位置为$PGDATA\global目录。一个表空间可以被多个数据库同时使用。此时,每一个数据库都会在表空间路径下创建为一个新的子路径。创建一个用户表空间会在$PGDATA\pg_tblspc目录下面创建一个软连接,连接到表空间制定的目录位置。表相关概念:每个表有三个数据文件。一个文件用于存储数据,文件名是表的OID。一个文件用于管理表的空闲空间,文件名是OID_fsm。一个文件用于管理表的块是否可见,文件名是OID_vm。索引没有_vm文件,只有OID和OID_fsm两个文件创建用户idpostgres-查看是否有postgres用户groupaddpostgres-添加postgres组useradd-gpostgrespostgres-添加postgres用户passwdpostgres-修改postgres密码mkdir-p/data/postgres/13.2/-创建数据库目录chown-Rpostgres:postgres/data/-修改数据库目录权限修改环境变量目的是为了不需要指定可执行文件(如psql、pg_ctl等)的绝对路径修改postgres用户的~/.bash_profile,也可以直接修改~/.bashrcPATH=xxx:/data/postgres/13.2/binPGDATA=/data/postgres/13.2/dataexportPATHexportPGDATAsource~/.bashrc执行psql验证环境变量修改生效如何启停数据库ps-ef|greppostges-检查数据库是否运行pg_ctlstop-mfast-停止数据库pg_ctlstart-D/data/postgres/13/2/data-l~/startup.log-启动数据库pg_ctlstatus-检查数据库状态