1. 数据库大小(pg_database_size) postgres=# select datname from pg_database; datname --- postgres osdbadb template1 template0 mytestdb01 db03 (6 rows) postgres=# select pg_database_size ('db03'),pg_size_pretty(pg_database_size('db03')); pg_database_size | pg_size_pretty ---...
pg_clog: commit log的目录 pg_log:系统日志目录,在查询一些系统错误时就可查看此目录下的日志文件 pg_xlog:wal(Write Ahead Log 预写式日志)日志的目录 base 目录是最重要的一个目录,放的是每一个 database 的数据。 base 目录里的每一个数字目录对于一个 database 的 oid,可以通过 查看 pg_database 这...
创建Azure Database for PostgreSQL 服务器后,可以增加存储量,但不能减少存储量。 表空间 - 通过 PostgreSQL 的本地实现,可以使用 pg_tblspc 子目录创建表空间,这些表空间链接到名为 PGDATA 的主存储区域。 Azure Database for PostgreSQL 不支持表空间:所有表都在主存储区域中创建。 系统目录 - PostgreSQL 包含...
恢复:需要先把备份的压缩文件替换当前的数据文件,然后修改postgresql.conf,因为这个配置文件在data文件夹中,所以只能是在把base.tar解压到数据库当前数据位置,也就是我们默认初始化指定的数据保存位置data文件夹中,才能修改配置,在配置好归档设置以后,可以启动pgsql服务,进行启动恢复。 在恢复过程中,会拷贝归档文件,进行...
CREATE DATABASE 对于某个具体的数据库,在PGDATA/base里都有一个对应的子目录,子目录名字是该数据库在系统表pg_database里的OID,刚启动时,底下有三个目录。 数量上是对的上的,我们新建一个database,base下多了个目录16384。 CREATEDATABASEmydatabase; ...
[postgres@localhost pg_data]$ cat $PGDATA/postgresql.conf 参数 说明 listen_addresses='*' 监听客户端的地址,默认是本地的,需要修改为*或者0.0.0.0 port = 5432 pg端口,默认是5432 max_connections = 5000 最大连接数,默认100 unix_socket_directories socket文件的位置 shared_buffers 数据缓存区,类似Oracle...
默认情况下,PostgreSQL 中的所有数据都存储在其数据目录里,这个数据目录通常会用环境变量 PGDATA 来引用,对于某个具体的数据库,在PGDATA/base里都对应有一个子目录,子目录的名字是该数据库在系统表 pg_database 里的 OID,每个表的数据都存在其所属数据库目录下的独立文件里,文件以该表的 filenode 号命名,为了...
DBA通过控制pg_tablespace存储表中,可以在文件系统里定义代表数据库对象的文件的存储位置,通过使用表空间,管理员可以控制PG中数据的磁盘布局,即可以通过表空间将PG系统的数据分布在不同的磁盘位置上。 pg_database pg_database中存放了当前数据集簇中的数据库的信息。
数据库的oid存储在pg_database系统表中。 数据库中的表、索引、序列等对象的oid存储在pg_class系统表中。 从base文件目录下可以看到template0、template1和postgres对应的oid文件,也即相应的数据库文件。 pg_class系统表的oid为1259,它位于base目录postgres目录下,处于pg_default表空间中。
PostgreSQL是最像Oracle的开源数据库,我们可以拿MySQL和Oracle来比较学习它的体系结构,比较容易理解。本文会讨论pg的如下结构: 日志文件 参数文件 控制文件 数据文件 redo日志(WAL) 后台进程 PostgreSQL的主要结构如下: 二、日志文件 2.1 日志文件种类 1)$PGDATA/log 运行日志(pg10之前为$PGDATA/pg_log) ...