PostgreSQL 9.4 中的流式复制

Streaming replication in PostgreSQL 9.4

我们最近在我们的 Postgres 服务器(t01、t02)中设置了流复制。 t01 是主机,t02 是从机。我想了解以下两个问题:

  1. 最近我们 t01 服务器的 /var 目录已满,应用程序团队无法访问该应用程序。我的理解是,如果 t01 /var 已满,则应连接到 t02 并且应用程序应开始使用它,因为 t02 /var 未满。

  2. 如果我们关闭 t01 服务器,我的应用程序是否会自动使用 t02 数据库,在这种情况下流复制是否会提供 HA?

不,PostgreSQL 不会故障转移到备用数据库。正确配置故障转移是一个难题,您需要像 Patroni 这样的专用集群软件来处理它。

实际上,您必须通过 运行 pg_ctl promote 在备用数据库上手动进行故障转移。

您还必须配置您的客户端以使用新服务器。为避免这种情况,您可以使用可以移动到备用服务器的虚拟 IP 地址,或者您必须设置客户端以尝试两个服务器。