postgresql两个列模糊比较_超详细的PostgreSQL体系结构总结,值得收藏

概述

今天本文主要从日志文件、参数文件、控制文件、数据文件、redo日志(WAL)、后台进程这六个方面来介绍一下PostgreSQL的架构。


架构

PostgreSQL的主要架构如下:

a320919ca9949afd68405b200168a8a8.png

一、日志文件

1、日志文件种类

1)$PGDATA/log 运行日志(pg10之前为$PGDATA/pg_log)

2)$PGDATA/pg_wal 重做日志(pg10之前为$PGDATA/pg_xlog)

3)$PGDATA/pg_xact 事务提交日志(pg10之前为$PGDATA/pg_clog)

4)服务器日志,可以在启动的时候指定,比如pg_ctl start -l ./alert.log

2、 运行日志

运行日志主要相关的参数如下,默认没有开启的话没有log目录,开启后会自动生成。

88b364f81cc1e901c1a9b47fbb40d1e3.png
5867b0f06a02697216e40a35db564604.png

3、事务日志pg_xact

pg_xact是事务提交日志,记录了事务的元数据。默认开启。内容一般不能直接读。

4、 服务器日志

如果用pg_ctl启动的时候没有指定-l参数来指定服务器日志,错误可能会输出到cmd前台。服务器日志记录了数据库的重要信息。

lsof或许可以过滤出在写的日志文件

$lsof -c postgres| grep REG | grep -v /usr | grep -v /dev | grep -v /SYS

二、参数文件

1、 postgresql.conf

pg的主要参数文件,有很详细的说明和注释,和Oracle的pfile,MySQL的my.cnf类似。默认在$PGDATA下。很多参数修改后都需要重启。9.6之后支持了alter system来修改,修改后的会存在$PGDATA/postgresql.auto.conf下,可以reload或者 restart来使之生效。

主要的参数如下:

e2481a1e338fe5fb8fab6a4a2afc74e3.png
42c0dec4ffcc1064695690ff421458d2.png

2、pg_hba.conf

这个是黑白名单的设置。文件里有详细的参数说明,默认参数如下:

type 列有local,host,hostssl,hostnossl四种。local是本地认证

database 可以是all,或者指定的数据库

user列可以是all,或者具体的用户

address 可以是ip或者网段

method比较重要,有"trust

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值