我在32位Suse上运行了两个PostgreSQL 9.2.4服务器。故障转移是使用共享存储设备配置的。我想升级到64位Ubuntu机器,使用PostgreSQL的流复制,同时保持数据库服务可用。这样做意味着在32位和64位系统之间暂时进行故障转移。
我已经阅读了很多关于PostgreSQL & PostgreSQL复制的文档。很明显,PostgreSQL不处理32 & 64位系统之间的流复制。现在还不清楚它是否能够处理32 & 64位系统之间的共享存储。我很悲观,但我想核实一下。
发布于 2014-09-18 08:11:04
是的,您可以--尽管您必须在64位系统上使用32位PostgreSQL构建,但它必须是相同的主要版本(例如9.2或两者都是9.3),并且必须使用相同的integer_datetimes设置进行编译等等。
现代Debian/Ubuntu,就像所有64位Red变体一样,支持多拱安装,32位和64位二进制文件可以并排运行。因此,您应该能够简单地在64位系统上apt-get install 32位PostgreSQL。
尽管如此,我强烈建议改用流复制。共享-存储故障转移是非常危险的-如果您有任何问题的围栏访问和STONITH,您将得到非常严重的数据损坏。它还能防止出现较少种类的问题。
发布于 2014-09-18 05:38:35
实际上,32位Suse的PostgreSQL版本和32位Ubuntu版本甚至可能不兼容。不太可能,但这取决于他们在编译期间选择了哪些选项。
所以-不。
如果您真的想拥有完整的可用性,您需要查看一个基于触发器的复制系统(slony / londiste / bucardo)。它们可以在不同的PostgreSQL安装之间复制,而不管磁盘上的格式如何。
当然,这意味着有两组数据。
它确实允许您进行不间断的升级,因此您可以考虑同时切换到最新的9.3。
https://stackoverflow.com/questions/25899920
复制相似问题