解压PostgreSQL源代码包后可以到如下路径:postgresql-9.2.4\src\backend\replication下可以看到,basebackup.c,另外还可以看到walreceiver.c,walsender.c. basebackup做了什么一目了然: /*------------------------------------------------------------------------- * * basebackup.c * code for taking a…
摘要: PostgreSQL同步复制搭建 一.初始化master节点 1. 安装PostgreSQL 2. 初始化db initdb -D /data/pg940_data 二.配置master节点 1. 修改postgresql.conf $ vim /data/pg940_data/postgresql.conf wal_level = hot_standby fsync = on synchronous_commit = on #同步复制必须设置为on wal_sync_method =…
目录 PostgreSQL+pgpool-II复制方案 1. Pgpool-II介绍 2. pgpool-II安装 2.1 安装pgpool-II yum源,并安装pgpool-II 2.2 添加Pgpool-II运行用户 2.3 设置pcp.conf 2.4 设置Pgpool-II配置文件 2.5 配置backend信息 2.6 修改认证方式 2.7 测试pgpool-II同步 3. 安装pgpoolAdmin(不推荐) 3.1 解压pgpoolAdmin至web目录,使用户能访问其php 3…
之前逻辑复制刚刚出来的时候就使用过,但是没有进行整理,这次一个项目需要逻辑复制的自动迁移,再次拾起逻辑复制. 在此之前有两个疑问: 1)同一个表,既有流复制,又有逻辑复制,这样数据会有两份吗? --不会,配置了流复制,从节点就不能配置逻辑复制了,因为是只读节点.不知道后面会不会修改? 但是主节点可以配置发布者进行发布,wal_level要配置为logical. 2)同一张表,在订阅端订阅两次,会不会允许? --允许,如果表没有配置primary key数据会写入两份.配置了主键,如果订阅了两次,…
PostgreSQL逻辑复制之slony篇 一.pglogical介绍 pglogical 是 PostgreSQL 的拓展模块, 为 PostgreSQL 数据库提供了逻辑流复制发布和订阅的功能. pglogical 重用了 BDR 项目中的一部分相关技术.pglogical 是一个完全作为PostgreSQL 扩展实现的逻辑复制系统.完全集成,它不需要触发器或外部程序.这种物理复制的替代方法是使用发布/订阅模型复制数据以进行选择性复制的一种高效方法.支持 PG10.9.6.9.5.9.4 ,…
PostgreSQL 高可用数据库的常见搭建方式主要有两种,逻辑复制和物理复制,上周已经写过了关于在Windows环境搭建PostgreSQL逻辑复制的教程,这周来记录一下 物理复制的搭建方法. 首先介绍一下逻辑复制和物理复制的一些基本区别: 物理复制要求多个实例之间大版本一致,并且操作系统平台一致,如主实例是 Windows环境下的 PostgreSQL15 则 从实例也必须是这个环境和版本,逻辑复制则没有要求. 物理复制是直接传递 WAL归档 文件,在从实例进行重放执行,可以理解为实时的 W…
Slony是PostgreSQL领域中最广泛的复制解决方案之一.它不仅是最古老的复制实现之一,它也是一个拥有最广泛的外部工具支持的工具,比如pgAdmin3.多年来,Slony是在PostgreSQL中复制数据的惟一可行的解决方案.Slony使用逻辑复制:Slony-I一般要求表有主键,或者唯一键:Slony的工作不是基于PostgreSQL事务日志的:而是基于触发器的:基于逻辑复制高可用性:PostgreSQL除了slony:还有Londiste,BDR等等后续文章会讲到 1. 安装Slony…
本文主要介绍 Windows 环境下搭建 PostgreSQL 的主从逻辑复制,关于 PostgreSQl 的相关运维文章,网络上大多都是 Linux 环境下的操作,鲜有在 Windows 环境下配置的教程,所以本文采用 Windows 环境作为演示系统来进行 PostgreSQL 高可用数据库服务的搭建. 关于 Windows 系统 PostgreSQL 的安装方法可以直接看之前的博客 https://www.cnblogs.com/berkerdong/p/16645493.html 在Wi…
当需要升级PostgreSQL时,可以使用多种方法.为了避免应用程序停机,不是所有升级postgres的方法都适合,如果避免停机是必须的,那么可以考虑使用复制作为升级方法,并且根据方案,可以选择使用逻辑复制或物理(流)复制来处理此任务.我们来看看PostgreSQL中逻辑和物理复制之间的区别.然后,我们将更详细地探讨如何使用逻辑复制完成升级,并通过这样做,避免应用程序停机.在后面的文章中,我们将研究物理复制.我们已经在之前的系列文章中讨论了几种可用于升级或迁移旧版PostgreSQL到新版Pos…
OS: Red Hat Enterprise Linux Server release 6.5 (Santiago) PostgreSQL: postgresql-9.4.5.tar.bz2 master: 192.168.0.106 slave1: 192.168.0.108 slave2: 192.168.0.112 useradd -U postgres -p postgres 主备节点时钟同步: /usr/sbin/ntpdate asia.pool.ntp.org && /sbi…