PostgreSQL:WAL日志归档策略
文章目录
- 概述
- 参数配置
- 归档策略脚本
概述
今天分享一个PostgreSQL数据库配置wal日志归档的策略。所谓wal日志归档,就是把在线的wal日志备份出来。说起来简单,但是在正式的系统上需要一个完备的归档策略,以备系统所需稳定
参数配置
在开启wal日志归档,首先需要设置几个参数
wal_level = replica
该参数的可选的值有minimal,replica和logical,wal的级别依次增高,在wal的信息也越多。由于minimal这一级别的wal不包含从基础的备份和wal日志重建数据的足够信息,在该模式下,无法开启wal日志归档archive_mode = on
上述参数为on,表示打开归档备份,可选的参数为on,off,always 默认值为off,所以要手动打开archive_command = ‘cp %p /pgdata/10/archive_wals%f’
该参数的默认值是一个空字符串,他的值可以是一条shell命令或者一个复杂的shell脚本。在shell脚本或命令中可以用 “%p” 表示将要归档的wal文件包含完整路径的信息的文件名,用“%f” 代表不包含路径信息的wal文件的文件名
注意:wal_level和archive_mode参数修改都需要重新启动数据库才可以生效。而修改archive_command则不需要。所以一般配置新系统时,无论当时是否需要归档,这要建议将这两个参数开启
归档策略脚本
这次分享的策略是使用一个shell脚本来管理归档:
在postgres家目录下,分别创建bin,log目录。bin目录存放此脚本,log则记录执行日志
归档策略是 在/data下的 archivedir中,按日期为名归档日志,保留20天。20天前的自动删除
archive_command参数的配置为:
archive_command ='/bin/bash /home/postgres/bin/pg_archive.sh %p %f'
脚本内容为
#!/bin/bash
source /home/postgres/.bash_profileDATE=`date +%Y%m%d`
DIR="/data/archivedir/$DATE"
BACK="/data/archivedir/"`date -d '-20 day' +%Y%m%d`
if [ -d "$BACK" ]; thenrm -rf $BACKecho "success rm $BACK" > /home/postgres/logs/pg_archive_logselseecho "the old backup file not exists!" > /home/postgres/logs/pg_archive_logs
fi(test -d $DIR || mkdir -p $DIR) && cp $1 $DIR/$2
PostgreSQL:WAL日志归档策略相关推荐
- Postgresql wal日志
wal日志 wal日志是什么 WAL机制实现 LSN标记 pg的wal配置 检查点 wal日志是什么 WAL即Write-Ahead Logging,预写式日志(WAL)是保证数据完整性的一种标准方法 ...
- postgres9.5.7 wal日志归档和任意时间点恢复数据
wal日志备份 目录规划 /mnt2/postgresql_basebak/data #基础备份目录 /mnt2/postgresql_recover/data #还原目录 /mnt2/postgre ...
- postgresql 安装 配置远程访问 PostgreSQL WAL日志解析工具: wal2json cdc数据同步方案
文章目录 一.安装postgres 二.WAL日志解析工具 三.cdc增量数据同步方案 一.安装postgres (1)新增postgres用户组: groupadd postgres 新增postg ...
- PG 备份策略及 WAL 日志清理策略
一.Postgresql 备份策略 备份时间:每天 05:10(根据备份量级可灵活调整) 备份模式:全量备份 备份保存天数:7 天 备份地址:/home/postgres/postgresql_bac ...
- Postgresql关于wal日志总结,一文搞清楚它的所有概念和相关操作
官方文档 https://www.postgresql.org/docs/11/wal-intro.html https://www.postgresql.org/docs/11/wal-config ...
- PostgreSQL利用全备与WAL日志恢复数据库
文章目录 基础备份--全备 使用pg_basebackup 参数 WAL日志的的备份 测试流程 将被数据文件全备 继续操作主库 配置recovery.conf文件 启动恢复实例 查看恢复情况 一般情况 ...
- WAL 日志和归档配置
WAL 日志和归档配置 WAL 日志归档,就是把在线的已写完的 WAL 日志复制出来.使用复制 WAL 文件的方式 来同步主.备数据库之间的数据,会导致备库落后主库一个 WAL 日志文件 ...
- PostgreSQL-12 通过归档WAL日志同步主备数据
前期安装工作参考上一篇 su postgres 创建数据库目录 mkdir /home/pg12/data1 mkdir /home/pg12/data2 chmod 700 /home/pg12/d ...
- Postgresql杂谈 20—详解Postgresql中的Checkpoint、WAL日志和热备份恢复
本文中,我们共同学习下Postgresql的WAL日志.WAL,是Write Ahead Log的简称,翻译过来就是预写日志,或者叫做重做日志.相信大家对数据库事务的四大特性ACID(原子性.一致性. ...
最新文章
- 记录一下MATLAB中ode45函数求解非刚性微分方程
- k8s部署dashboard
- redis 主从哨兵模式搭建
- SQL注入绕过登录验证
- JAVA如何正确处理Unicode字符
- 你是否发现 职业能力危机,请 警惕
- 输入流IS和输出流OS学习总结
- 崛起于Springboot2.X之Mysql读写分离(6)
- Ubuntu 19.10 将于本月结束生命周期
- oracle11g更改字符集AL32UTF8为ZHS16GBK及创建用户、删除用户
- java ocx调用_Javascript调用OCX控件
- 华中计算机基础试题,华中科技大学2009大学计算机基础考试试题a
- UI设计中图形设计详解
- vertica基本操作
- 陪着时光,走过羊肠阡陌
- Spring Cloud 五大组件
- 网易云音乐登录信息加密算法详解
- C#开发简单绘图工具
- 微信多开工具 Mac版的安装及卸载教程
- freebsd ports更新源