我正在尝试使用pg_upgrade工具从一个次要版本(11.1)升级到另一个次要版本(11.6),但是它在下面的命令中失败了:
su - postgres -c '/usr/pgsql-11/bin/pg_upgrade -d /opt/collabnet/teamforge/var/pgsql/11.1/data -D /opt/collabnet/teamforge/var/pgsql/11.6/data -b /usr/pgsql-11/bin -B /usr/pgsql-11/bin'有以下错误:
Performing Consistency Checks
Checking cluster versions ok
Cannot upgrade to/from the same system catalog version when
using tablespaces.
Failure, exiting以下是postgresql.log文件中的错误:
could not open directory "pg_tblspc/16400/PG_11_201809051": No such file or directory对于如何使用相同的pg_upgrade工具来克服它,有什么想法吗?
pg_upgrade_server.log
could not open directory "pg_tblspc/16400/PG_11_201809051": No such file or directory发布于 2020-02-25 06:57:24
您不使用pg_upgrade进行小的升级。
只需停止服务器,用11.6二进制替换11.1二进制文件(实际上应该使用11.7)并启动服务器。“替换二进制文件”的意思是,您应该在与11.1版本相同的目录中安装11.6版本的PostgreSQL,从而覆盖以前的安装。
仅此而已!您还应该阅读发布说明,有时需要在数据库元数据中进行一些额外的修复。
您遇到的错误是因为您正在使用表空间。在每个表空间中,PostgreSQL创建一个子目录,其名称包含目录版本。在pg_upgrade期间,在每个表空间中创建一个新的这样的子目录。当然,如果目录版本是相同的,这是无法工作的。
https://stackoverflow.com/questions/60388461
复制相似问题