PostgreSQL的复制拓扑更改

  • 时间:
  • 浏览:0
  • 来源:彩神3D_神彩3D官方

我们歌词 都都儿将在另一篇文章中讨论这一大间题,以及要怎样使哪此拓扑更改对应用系统系统进程透明。

运行命令很容易,但首那末 确保外理任何数据丢失。

但会 我们歌词 都都儿讨论的是“主服务器宕机”场景,但会 那末 很多的选项。

主服务器崩溃,使应用系统系统进程无法访问它。

意味有却说我-这类:

哪此是拓扑更改的这一常见状况。那末 讨论但仍然有点硬要的有一一5个 主题是哪此更改对应用系统系统进程的影响。

但会 是有计划的维护,那末 就有但会 做好准备。你须要停止主服务器上的通信,但会 验证备用服务器接收并应用了所有数据。

您但会 有多个备用服务器在与主服务器进行同步。毕竟,备用服务器对于均衡负载只读流量非常有用。在将备用服务器提升到新的主服务器已经 ,你须要对仍然连接(或正在尝试连接)到旧主服务器的其余备用服务器做这一外理。不幸的是,你都不能了只更改recovery.conf并将它们连接到新的主服务器(但会 新主服务器与这一备服务器之间,那末 设置主备关系)。

当你希望备用服务器快速启动并运行—以便均衡负载你已经 晋升的主服务器,并在须要时拥有那末 备用服务器进行故障转移。

要连接它们,首先须要重新构建它们。这里有四种 法律法律依据都不能尝试:标准基础备份或pg_rewind。

但会 这一硬件操作,但会 会计划停机。

Pg_rewind的工作法律法律依据不同——它只一键复制哪此修改过的块。它只一键复制更改,而就有一键复制所有内容,这大大缩短了外理时间。假设新主服务器的IP是10.0.0.103。这却说我我执行pg_rewind的法律法律依据。

不管计划算是,哪此就有执行故障转移的意味。在所有哪此状况下,都须要将其中有一一5个 备用服务器提升为新的主服务器。

尽管构建链式一键复制通常是为了减少主服务器上的负载,但会 构建链式一键复制的意味有却说我。将WAL提供给备用服务器会增加这一开销。但会 您有有一一5个 备用服务器,这就有哪此大大间题,但会 但会 我们歌词 都都儿讨论的是少量的备用服务器,这但会 会成为有一一5个 大间题。这类,我们歌词 都都儿都不能通过创建如下拓扑形态来最小化从活动中直接一键复制的备用服务器的数量:

它但会 是那末 的:

您须要将recovery.conf修改为10.0.0.103,将其指向10.0.0.102,但会 重新启动PostgreSQL。

完成已经 ,剩下的最后一步将是创建有一一5个 recovery.conf文件,该文件将指向新的主文件。

一切就绪,就都不能停止旧的主服务器并提升备用服务器。

一键复制在保持高可用性方面起着至关重要的作用。服务器但会 经常总出 故障,操作系统或数据库软件但会 须要升级。这意味重新排列服务器角色和移动一键复制链接指向,共同维护所有数据库之间的数据一致性,更改拓扑形态是须要的,但会 我们歌词 都都儿都不能通过不同的法律法律依据来实现。

现在都不能启动备用服务器了,它将一键复制新的主服务器。

不想提升有一一5个 备服务器,都不能执行命令

这将进行预演,测试流程,但不做任何更改。但会 一切正常,你所要做的却说我我再次运行它,这次那末 使用“——dry-run”参数。

重启后,10.0.0.103应该开始英文英语 应用WAL更新。

从有一一5个 备用服务器的拓扑转移到链式一键复制非常简单。

将备服务器提升为主服务器,这是但会 都会你最常见的操作。

这四种 法律法律依据的主要区别在于,基本备份创建了数据集的删剪副本。但会 我们歌词 都都儿讨论的是小型数据集,这是都不能的,但会 对于数百gb(甚至更大)的数据集,这快一点 就会成为有一一5个 大间题。

主服务器上的数据库维护会影响工作负载,无法进行操作。

TIPS:请注意,您须要停止目标服务器的PostgreSQL数据库。

都不能在备用服务器上完成,使用如下查询: