我们正在尝试将9.2生产的postgres集群升级到9.5。服务器正在运行带有Centos版本的Centos 7 - 目前是9.2.15我们正在从postgresql repo安装postgresql提供的postgresql9.5的rpm,目前是9.5.4。在测试和我们的开发集群中,升级工作没有问题,但我们的生产数据库上发生了一些我们无法弄清楚的事情。
9.2群集处于由起搏器控制的流复制中。我们一直在使用的步骤如下。
我们在测试中发现的是,我们通过升级过程,手动启动9.5服务器以比较我们在升级之前立即收集的行数,并且我们看到的是不同的数据,有时甚至是大幅度的。此数据包括缺少的用户帐户等,这些不是易腐数据。
我们已启用详细日志记录并已对其进行了审核,但在迁移过程中未发现任何错误。 9.5服务器启动没有投诉,如果我们不进行这些手动检查,我们就不会发现问题。
还有其他人看过这个问题吗?
唯一的' hack'在升级期间,直接来自postgres_upgrade手册页是为了处理centos backported的postgresql中的重命名选项。使用顶部答案中引用的pg_ctl的重命名 - https://dba.stackexchange.com/questions/50135/pg-upgrade-unrecognized-configuration-parameter-unix-socket-directory
答案 0 :(得分:0)
通过这个思考(不,我没有遇到同样的问题),pg_upgrade的工作原理是重写系统目录,但将剩余的数据保留在磁盘上。如果行数发生变化,则非常令人担忧。然而9.2到9.5是一个相当大的步骤,所以有些地方可以发挥其他问题。
没有最模糊的想法实际问题是什么,我要尝试的第一件事是尝试在升级之前而不是之后运行真空分析。我想知道交易可见性是否存在问题。
我要尝试的第二件事是转到9.4然后查看是否有问题,如果没有,则转到9.5。
但是,我从来没有听说过这样的问题。
答案 1 :(得分:0)