>데이터 베이스 >MySQL 튜토리얼 >PostgreSQL的存储系统二:REDOLOG文件存储结构

PostgreSQL的存储系统二:REDOLOG文件存储结构

WBOY
WBOY원래의
2016-06-07 17:15:471423검색

PostgreSQL的存储系统二:REDOLOG文件存储结构,Pg XLOG文件(常说的REDOLOG)名字的命名方法是在XLogFileName宏里定义的,分别由

Pg XLOG文件(常说的REDOLOG)名字的命名方法是在XLogFileName宏里定义的,分别由时间线ID、日志ID、段ID的八位16进制数依次构成。例如00000001000000010000008F。

不同的段ID对应不同的物理XLOG日志文件,日志ID是逻辑概念,有多个物理XLOG日志文件组成。

Pg XLOG文件(常说的REDOLOG)的大小初始值是在configure.in和configure文件里设置的,,默认大小是16M。大小设置形式如下

wal_segsize=16

XLOG_SEG_SIZE (${wal_segsize} * 1024 * 1024)=16M

这个XLOG_SEG_SIZE是XLOG日志文件的段大小,就是一个物理的日志文件的大小。一个逻辑的XLOG日志文件大小是4Gb。

 

Pg XLOG文件的存储格式大致如下:

里面包括

……

 

1

 

{

 

XLOG文件里的页面头结构

{

当记录跨页时,在后面的页头里设置标志

这个指明是长页头(多用于文件第一页)

在xlp_info中定义的所有标志位(用于头的有效性检查)

wal_segsize=16

XLOG_SEG_SIZE (${wal_segsize} * 1024 * 1024)=16M

linux

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.