首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用pg_upgrade将postgres从11.1升级到11.6

使用pg_upgrade将postgres从11.1升级到11.6
EN

Stack Overflow用户
提问于 2020-02-25 06:09:40
回答 1查看 741关注 0票数 1

我正在尝试使用pg_upgrade工具从一个次要版本(11.1)升级到另一个次要版本(11.6),但是它在下面的命令中失败了:

代码语言:javascript
复制
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'

有以下错误:

代码语言:javascript
复制
Performing Consistency Checks

Checking cluster versions                                   ok

Cannot upgrade to/from the same system catalog version when
using tablespaces.
Failure, exiting

以下是postgresql.log文件中的错误:

代码语言:javascript
复制
could not open directory "pg_tblspc/16400/PG_11_201809051": No such file or directory

对于如何使用相同的pg_upgrade工具来克服它,有什么想法吗?

pg_upgrade_server.log

代码语言:javascript
复制
could not open directory "pg_tblspc/16400/PG_11_201809051": No such file or directory
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-25 06:57:24

您不使用pg_upgrade进行小的升级。

只需停止服务器,用11.6二进制替换11.1二进制文件(实际上应该使用11.7)并启动服务器。“替换二进制文件”的意思是,您应该在与11.1版本相同的目录中安装11.6版本的PostgreSQL,从而覆盖以前的安装。

仅此而已!您还应该阅读发布说明,有时需要在数据库元数据中进行一些额外的修复。

您遇到的错误是因为您正在使用表空间。在每个表空间中,PostgreSQL创建一个子目录,其名称包含目录版本。在pg_upgrade期间,在每个表空间中创建一个新的这样的子目录。当然,如果目录版本是相同的,这是无法工作的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60388461

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档