标签: postgresql-bdr

PostgreSQL和BDR:BDR确实是多主设备吗?它是2019年的1.x版开源和EOL吗?

我对PostgreSQL BDR感到困惑,我有几个问题:

问题1:BDR是否真的是PostgreSQL的多主服务器?

根据此处的文档,它表示:

BDR(双向复制)项目将多主复制添加到PostgreSQL 9.4

但是,如果我在2ndQuadrant上阅读,则会阅读以下内容:

在此处输入图片说明

如果我读那部分,他们根本不会提到多主机。只是一个“第二主人,被动工作”,这表明它不是真正的主人?

问题2:BDR是开源的吗?

在这里读到的是,至少是:

BDR是PostgreSQL的第一个开源多主复制系统

还在吗 因为当我看时,我经常被引导到2ndQuadrants网页,当他们说:

如何获得Postgres-BDR?

只需填写下面的联系表格,PostgreSQL专家很快就会与您联系!

听起来像是卖给我=)

问题3:什么版本?

读到2ndQuadrant在今年3月发布了 1.0.5 。我也读2ndQuadrants网页

在复杂的复制环境中,第三代BDR实现了...

第三代?版本1.0.5是同一个第三代,还是其他?

此外,同一页上还显示:

当前Postgres-BDR用户的注意事项:BDR 1.x将于2019年12月到期。我们的PostgreSQL专家团队可以帮助计划和执行升级,而影响最小,停机时间几乎为零。立即与我们联系,我们专业服务团队的成员将尽快与您联系。

因此,1.0.5在3月发布,但EOL在2019年12月发布?2.x不是开源的,因此与之相关的一些许可证成本,而1.x是EOL 2019?

postgresql postgresql-bdr postgres-bdr

10
推荐指数
2
解决办法
3980
查看次数

BDR对于制作Postgres同步有多好?

我有一个系统,多个卫星创建金融交易,他们需要与核心服务器同步.卫星是使用本地Postgres数据库运行Rails应用程序的远程服务器.核心是另一个拥有自己的Postgres数据库的Rails应用程序.卫星和核心具有几乎相同的模式(但不完全相同).一切都是集装箱化的(应用程序和数据库).核心服务器很少更新所有卫星所需的数据.目前我有一颗卫星,但这个数字会增长到一对(我认为在遥远的未来不会超过100颗).核心和卫星之间没有序列或争用的问题.核心将永远不会更新与任何卫星相同的交易,并且任何卫星都不会更新与任何其他卫星相同的交易.更好的是,金融交易以uuid为主键.

由于这是一个多主同步问题,我自然而然地遇到了BDR.我有以下问题:

  1. BDR生产准备好并且稳定吗?我正在阅读几种竞争技术(如Bucardo和Londiste).它真的会成为Postgres 9.6的一部分吗?
  2. BDR可以处理断开连接的模型吗?我不认为这种情况经常发生,但我的卫星可能会断开几个小时.
  3. BDR可以进行选择性同步吗?例如,我只想要同步某些表.
  4. BDR可以处理100颗卫星吗?

postgresql database-design postgresql-bdr

6
推荐指数
1
解决办法
2304
查看次数

使用Postgres BDR 9.4.1进行Django 1.8迁移

我正在尝试使用BDR在Postgres数据库上运行Django迁移.

python manage.py makemigrations

工作正常,但正在运行

python manage.py migrate

导致以下错误:

ALTER TABLE … ALTER COLUMN TYPE … may only affect UNLOGGED or TEMPORARY tables when BDR is active; auth_permission is a regular table

违规模块是django/django/contrib/auth/migrations/0002_alter_permission_name_max_length.py.

我没有找到任何关于如何使用Django的UNLOGGED表,特别是因为auth_permissions是一个Django表(不是我创建的).我也不确定UNLOGGED表是否会复制.

有人有建议吗?

migration django postgresql replication postgresql-bdr

4
推荐指数
1
解决办法
781
查看次数

如何获取 Golang 数据库连接池来管理与集群中多个主机的连接?

我正在四个 PostgreSQL 工作人员之间设置双向复制,并且我想让我的 Go 数据库连接池处理所有四个工作人员的连接。它应该能够为它们创建多个连接,为任何给定的查询随机选择一个,并在连接断开时进行故障转移。这在 Go 数据库库中可行吗?或者我应该只使用pgBouncer而不是尝试让database/sqlpgx来处理这种平衡?

postgresql replication connection-pooling go postgresql-bdr

3
推荐指数
1
解决办法
6533
查看次数