概述
pg_rewind 是一个 PostgreSQL 工具,允许在流复制设置中重新同步备用服务器与主服务器。它通过将备用服务器的数据目录倒回到与主服务器相同的时间线上来实现。
当备用服务器落后于主服务器时,可以使用 pg_rewind 将备用服务器恢复同步,方法是删除备用服务器具有但主服务器上不存在的任何数据。这可能比将主服务器的备份恢复到备用服务器上要快,因为后者需要传输所有数据。
pg_rewind 可以用于许多情况,包括:
1、当将备用服务器晋升为新的主服务器并将旧的主服务器转换为新的备用服务器时。
2、当备用服务器落后于主服务器并需要重新同步时。
要使用 pg_rewind,您需要有一个已经设置为使用流复制从主服务器复制的备用服务器。该工具要求使用 PostgreSQL 9.5 或更高版本,并适用于物理和逻辑复制设置。