一、控制文件
pg_controldata $PGDATA
二、数据文件
pg中,每个索引、每个表都是一个单独的文件,pg中称为page(也称为段),默认是每个大于1G的page会被分割。例如某个表有200g的大小,那么会被分割为200个文件存储
select relfilenode from pg_class where relname='pg_statistic';
select pg_relation_filepath('pg_statistic');
三、wal日志
1.查看wal日志相关命令
select pg_walfile_name(pg_current_wal_lsn()); --查看当前wal日志文件
select pg_current_wal_lsn(); --查看当前wal日志
select * from pg_ls_waldir() order by modification asc; --查看所有wal日志
select pg_switch_wal(); --日志切换
pg_waldump $PGDATA/pg_wal/000000010000000000000002 --查看日志文件内容 ()
例子:创建表t1,查看日志文件内容。查看t1所在文件
2.arch wal log 归档wal日志
(1)参数设置
wal_level = replica
archive_mode = on
archive_command = 'test ! -f /var/postgre/data1/archive1/%f && cp %p /var/postgre/data1/archive1/%f'
修改完参数之后重启数据库生效(pg_ctl restart -D $PGDATA -mf),重启数据库之后在通过select pg_switch_wal();语句切换日志,则切换的归档日志存放在/var/postgre/data1/archive1/目录下