PostgreSQL实战-pg13主从同步异步流复制
介绍
PostgreSQL早在9.0版本开始支持物理复制,也可称为流复制( Streaming Replication,通过流复制技术,可以从实例级复制出一个与主库一模一样的从库 (也称之为备库)。举个简单的例子,在主机pghost1上创建了一个PostgreSQL实例,并在实例上创建多个数据库,通过流复制技术可以在另外一台主机如pghost2上创建一个热备只读PosgreSQL实例,我们通常将pghost1上的数据库称为主库(Primary Database或Master), pghost2 上的数据库称为备库(Standby Database或Slave), pghostl1 称为主节点,pghost2 称为备节点。流复制同步方式有同步、异步两种,如果主节点和备节点不是很忙,通常异步模式下备库和主库的延迟时间能控制在毫秒级。
流复制根据同步方式分为异步流复制和同步流复制,异步流复制是指主库上提交事务时不需要等待备库接收WAL日志流并写入到备库WAL日志文件时便返回成功,而同步流复制相反。
接下来介绍的流复制是基于异步流复制的,使用pg_basebackup方式部署。
pg_basebackup工具是对数据库实例级进行的备份,因此这个工具通常作为备份工具对据库进行基准备份。