我们在办公室周围不断对此进行抨击,这个问题继续出现。您如何处理PostgreSQL复制?我什至不必谈论高级集群,只需通过Master-Slave,Master-MultiSlave和Master-Master使其简单即可。我发现针对MySQL进行设置通常非常简单。故障转移即使不是完美的,也很简单,尤其是对于配置它来说很容易。我们已经玩过Slony,但操作起来有点麻烦(模式更改需要干预,新数据库需要干预等)。PGPool2相当不错,直到一个节点发生故障,我们找不到合适的方法(除了将所有组件关闭并重新植入掉落的节点之外)才能使复制恢复同步。基本上,这就是我通常要寻找的东西:
- 易于设置(我将接受困难的设置,但易于扩展)
- 简单故障转移
- 将下降的节点重新带回只需要时间(例如,像mysql。服务器关闭,将其启动,然后等待复制赶上)
- 模式更改不会破坏复制
- 向服务器添加新数据库是无缝的(即,像mysql一样,您可以复制整个数据库服务器,因此在主数据库上创建了新数据库,该数据库自动传播到从数据库)
MySQL可以很好地处理其中的大多数,但是我对PostgreSQL有一定的爱好。此外,在某些情况下,这是我们唯一的选择,我们希望将复制添加到混合中。您目前正在使用什么,您对解决方案的感觉如何?我保证,这不是MySQL与PostgreSQL的相对论,因为这不是我要尝试的内容。:)