我有一个 postgresql 9.3 实例,我想升级到 postgresql 10。我有一个我认为应该有效的命令,但它包含校验和。我的旧实例没有启用校验和(它甚至可以吗?忘了太久以前了)这阻止了我的试运行正常工作。
错误信息
Performing Consistency Checks on Old Live Server
------------------------------------------------
Checking cluster versions ok
old cluster does not use data checksums but the new one does
Failure, exiting
我的命令去掉了真实路径
time ${PGBINNEW}/pg_upgrade --old-bindir=${PGBINOLD} --new-bindir=${PGBINNEW} --old-datadir=${PGDATAOLD} --new-datadir=${PGDATANEW} --old-port=${PGPORT} --new-port=${PGPORT} --jobs=$(nproc | awk '{ {print ($1 > 4) ? 4 : ($1 == 1 ? 1 : $1 - 1)} }') --link --username=postgres --check
我该怎么做才能解决这个问题?
最佳答案
在 pg_upgrade 期间发生在我身上。我只是用这个禁用了校验和:
$ pg_checksums -d /var/lib/postgres/data/
pg_checksums: syncing data directory
pg_checksums: updating control file
Checksums disabled in cluster
在我的例子中/var/lib/postgres/data 是数据目录。您的可能有所不同。
关于postgresql - 升级到想要使用校验和的 postgres 10,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52104705/