PostgreSQL 复制与高可用系列(四):逻辑复制深度实战——跨版本迁移、数据分发与冲突处理
PostgreSQL 复制与高可用系列(四):逻辑复制深度实战——跨版本迁移、数据分发与冲突处理 前三期我们完成了物理流复制从理论到实战的全链路学习,掌握了高可用架构的基石。 但物理复制有一个天然局限:它复制的是整个数据库集群,无法“选择性地同步几张表”,也不能在主备之间做异构同步(比如 12 → 17 跨大版本)。 第四期将聚焦逻辑复制——这张灵活的“手术刀”,为您打开数据同步的全新维度。 一、逻辑复制是什么? 1.1 定义与定位 逻辑复制是一种基于数据对象的复制标识(通常是主键)来复制数据对象及其更改的方法。这里使用“逻辑”一词来与物理复制(基于块地址和逐字节复制)加以区分——物理复制关注的是磁盘上数据块的变化,而逻辑复制关注的是数据的语义变化(插入、更新、删除)。 核心特点:PostgreSQL 同时支持物理复制和逻辑复制两种机制,两者可以并行运行,不互斥。这给了架构设计极大的灵活性。 1.2 架构:一次 WAL 的两面使用 逻辑复制的架构与物理流复制类似,同样由