首页 > 解决方案 > brew postgresql-upgrade-database 的 initb 失败

问题描述

我正在使用brew postgresql-upgrade-database将 postgresql 从 11.8 升级到 12 并迁移数据。该过程失败,输出如下

Upgrading postgresql data from 11 to 12...

停止postgresql@11...(可能需要一段时间)==> 成功停止postgresql@11(标签:homebrew.mxcl.postgresql@11)等待服务器关闭....完成服务器停止==> 从 /usr/local 移动 postgresql 数据/var/postgres 到 /usr/local/var/postgres.old... ==> 创建数据库... 错误:将 postgresql 数据从 11 升级到 12 失败!==> 将 postgresql 数据从 /usr/local/var/postgres.old 移回 /usr/local/var/postgres... 错误:执行时失败;/usr/local/Cellar/postgresql/12.4/bin/initdb --lc-collate=en_US.UTF-8 --lc-ctype=en_US.UTF-8 --lc-messages=en_US.UTF-8 --lc-monetary=en_US.UTF-8 --lc-numeric=en_US.UTF-8 --lc-time=en_US.UTF-8 -E\ UTF8 /usr/local/var/postgres以 1 退出。

我该如何解决?

标签: postgresql

解决方案


使用有问题brew postgresql-upgrade-database。问题解决后,我将更新此答案。

截至 2021 年 7 月 21 日,此问题仍未解决。我的解决方法如下:

*** 警告*** 这将清除您的数据库,因此必须重新加载或重新初始化它们。

brew uninstall --force postgresql
brew install postgresql@12
cd /usr/local/var/
rm -rf postgres
initdb /usr/local/var/postgres

推荐阅读