pg技术大讲堂 -凯发app官方网站

凯发app官方网站-凯发k8官网下载客户端中心 | | 凯发app官方网站-凯发k8官网下载客户端中心
  • 博客访问: 593409
  • 博文数量: 486
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 4941
  • 用 户 组: 普通用户
  • 注册时间: 2018-07-05 13:59
个人简介

ocp考试资料群:569933648 验证码:ocp ocp 12c 19c考试题库解析与资料群:钉钉群号:35277291

文章分类

全部博文(486)

文章存档

2024年(3)

2023年(35)

2021年(151)

2020年(37)

2019年(222)

2018年(38)

我的朋友
相关博文
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·

分类: mysql/postgresql

2023-03-28 15:29:31


postgresql从小白到专家,是从入门逐渐能力提升的一个系列教程,内容包括对pg基础的认知、包括安装使用、包括角色权限、包括维护管理、、等内容,希望对热爱pg、学习pg的同学们有帮助,欢迎持续关注cuug pg技术大讲堂。

part 12:postgresql wal作用与管理

内容1:wal物理与逻辑结构

内容2:wal数据内部布局

内容3:wal数据写进程


内容4:wal管理

内容5:wal归档日志


wal概述

· 没有wal的插入操作



· 有wal的插入操作



· insert操作与recovery



· 使用wal进行数据库恢复



事务日志与wal文件

· 事务日志与wal 段文件



使用内置函数pg_xlogfile_name(9.6或更早版本)或pg_walfile_name(10或更高版本),我们可以找到包含指定lsn的wal段文件名。







wal日志内部布局

· wal内部布局



· 三类xlog 数据部分记录 (version 9.5 or later)




写xlog记录

· 写xlog记录






wal写处理

· wal 写进程

1、at commit

2、when wal buffer full

3、writes periodically







写xlog记录

· checkpoint 处理概述




pg_control file

· pg_control file30

即使pg_控制文件存储超过40个项目,需要的三个项目如下所示:

state –{banned}最佳新检查点启动时数据库服务器的状态。总共有七种状态:“启动”是系统正在启动的状态;“关闭”是系统通过shut down命令正常关闭的状态;“生产中”是系统正在运行的状态;依此类推。

latest checkpoint location –{banned}最佳新检查点记录的lsn位置。

prior checkpoint location –先前检查点记录的lsn位置。

· 9.7.2. pg_control file

pg_control文件存储位置:

postgres> pg_controldata /usr/local/pgsql/data

pg_control version number: 937

catalog version number: 201405111

database system identifier: 6035535450242021944

database cluster state: in production

pg_control last modified: mon apr 27 15:16:38 2020

latest checkpoint location: 0/c000f48

prior checkpoint location: 0/c000e70

... snip ...


database recovery

· 数据库实例恢复开始位置( 检查点)



· 数据库wal日志记录



· 利用wal进行数据库恢复




wal 文件管理

· wal 日志切换

wal 满足以下条件发生日志切换:

1、wal segment has been filled up. 

2、the function pg_switch_wal has been issued.

3、archive_mode is enabled and the time set to archive_timeout has been exceeded.(基于主备复制需求)

· 创建新的wal日志文件



· wal日志文件删除与回收(基于一个checkpoint完成过程)



· 文件管理wal段文件的数量主要由以下三个参数控制:

1、checkpoint_segments (9.5版本后被废弃)

2、checkpoint_completion_target (默认为0.5)

3、wal_keep_segments

((2 checkpoint_completion_target)×checkpoint_segments 1)


数据库归档

· 归档日志

连续归档是在wal段切换时将wal段文件复制到归档区域的功能,由archiver(后台)进程执行。其中,占位符%p是复制的wal段,而%f是存档日志。

alter system set archive_command = 'cp %p /home/postgres/archives/%f';

alter system set archive_mod = on;


wal 文件管理

· 发生切换时归档



· 设置wal相关参数 

设置wal目录{banned}最佳大可用尺寸(默认值为1024mb):max_wal_size 

 设置wal文件{banned}最佳大可用尺寸(默认值为16mb):wal_segment_size 

设置wal缓冲区尺寸(默认值512kb):wal_buffers




以上就是part 12 - postgresql wal作用与管理 的内容,欢迎进群一起探讨交流,钉钉交流群:35,82,24,60,钉钉群有专门讲解公开课

往期课程及视频,联系cuug

阅读(154) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
")); function link(t){ var href= $(t).attr('href'); href ="?url=" encodeuricomponent(location.href); $(t).attr('href',href); //setcookie("returnouturl", location.href, 60, "/"); }
网站地图