postgresql 文件布局

 

 

我们知道linux中一个思想:一切皆文件,那么在我们安装完postgresql数据库后,她长什么样呢?本文带着你一起揭开她的面纱,看看postgresql的文件布局。

说明:由于安装测试的版本是10.5这里可以参考官方文档:https://www.postgresql.org/docs/10/storage-file-layout.html

 

[postgresql@lxdnode2 ~]$ cd $PGDATA/
[postgresql@lxdnode2 data]$ ls -lrt
total 120
drwx------. 2 postgresql postgresql  4096 Jan 19 20:03 pg_dynshmem
drwx------. 2 postgresql postgresql  4096 Jan 19 20:03 pg_commit_ts
-rw-------. 1 postgresql postgresql     3 Jan 19 20:03 PG_VERSION
drwx------. 2 postgresql postgresql  4096 Jan 19 20:03 pg_twophase
drwx------. 2 postgresql postgresql  4096 Jan 19 20:03 pg_tblspc
drwx------. 2 postgresql postgresql  4096 Jan 19 20:03 pg_snapshots
drwx------. 2 postgresql postgresql  4096 Jan 19 20:03 pg_serial
drwx------. 2 postgresql postgresql  4096 Jan 19 20:03 pg_replslot
drwx------. 4 postgresql postgresql  4096 Jan 19 20:03 pg_multixact
-rw-------. 1 postgresql postgresql 22724 Jan 19 20:03 postgresql.conf
-rw-------. 1 postgresql postgresql    88 Jan 19 20:03 postgresql.auto.conf
-rw-------. 1 postgresql postgresql  1636 Jan 19 20:03 pg_ident.conf
drwx------. 2 postgresql postgresql  4096 Jan 19 20:03 pg_xact
drwx------. 3 postgresql postgresql  4096 Jan 19 20:03 pg_wal
drwx------. 2 postgresql postgresql  4096 Jan 19 20:03 pg_subtrans
drwx------. 5 postgresql postgresql  4096 Jan 19 20:03 base
drwx------. 2 postgresql postgresql  4096 Jan 19 20:08 pg_notify
-rw-------. 1 postgresql postgresql    40 Jan 19 20:08 postmaster.opts
-rw-------. 1 postgresql postgresql    96 Jan 19 20:08 postmaster.pid
drwx------. 2 postgresql postgresql  4096 Jan 19 20:08 pg_stat
drwx------. 2 postgresql postgresql  4096 Jan 19 20:08 global
-rw-------. 1 postgresql postgresql  4501 Jan 19 20:09 pg_hba.conf
drwx------. 4 postgresql postgresql  4096 Jan 19 20:13 pg_logical
drwx------. 2 postgresql postgresql  4096 Jan 19 21:38 pg_stat_tmp

 

  在初次接触某一个事务的时候,我们不可能详尽的了解她的方方面面,这里我也进行了取舍,重点学习一下标黄的文件、目录(并不是其他的不重要,其实都重要,限于目前学习过程中很少遇到,后续会在其他文章里进一步讨论)

  

1、PG_VERSION

该文件记录了当前安装的postgresql数据库的主版本号,也就是大版本号,比如我们安装的是10.5,那么该文件里就是10,可以猜测一下pg11.x,pg12.x对应的文件里依次是11和12。

 

2、pg_tblspc

 

如果有用户自定义的表空间,那么该文件就会记录对应表空间oid和该表空间实际存储路径的软连接,至于什么是oid,现在只需要知道她是postgresql数据库中一个对象标识符,每种类型的所有对象,均有自己唯一的标识符oid。
能聪明的你想问,这里说的用户自定义表空间会存储的对应关系,那么postgresql数据库安装完毕后是否有默认的表空间呢?肯定是有的,记住Oracle有的,postgresql基本都有与之对应的。
posted @ 2020-01-19 21:22  knowledge-is-power  阅读(405)  评论(0编辑  收藏  举报