Postgres pg_upgrade 13.2 到 14,returns 共享内存不足。 - 亚马逊 Linux 版本 2 (Karoo)

Postgres pg_upgrade 13.2 to 14, returns out of shared memory. - Amazon Linux release 2 (Karoo)

尝试将 Postgres 13.2 数据库升级到 14 时,运行 升级时收到错误“共享内存不足”。

我已调整 max_locks_per_transaction 不同且非常高的值,以及 max_connections 和其他内存设置。我已经检查了许多配置设置,但没有找到无法使用这些设置执行 pg_dump/pg_upgrade 的原因。

OS 是

Amazon Linux release 2 (Karoo). ID_LIKE="centos rhel fedora"

错误如下

command: "/usr/pgsql-14/bin/pg_dump" --host /usr/pgsql-14/bin --port 50432 --username postgres --schema-only --quote-all-identifiers --binary-upgrade --format=custom  --file="pg_upgrade_dump_18458.custom" 'dbname=aprivatedb' >> "pg_upgrade_dump_18458.log" 2>&1
pg_dump: error: query failed: ERROR:  out of shared memory
HINT:  You might need to increase max_locks_per_transaction.
pg_dump: error: query was: LOCK TABLE "privatedata"."private_activities" IN ACCESS SHARE mode

您在哪里进行这些更改?根据错误消息,需要 max_locks_per_transaction 提升的是 13 簇,而不是 14 簇。

pg_dump 是 运行 针对旧集群(使用新二进制文件),而不是新集群。