9

我需要一些帮助,我正在 Windows 上将 postgresql 从 v10 升级到 v11,但收到以下错误消息:could not open version file: C:/Program Files/PostgresSQL/11/data/PG_VERSION.

以下是采取的步骤:

  1. 使用停止 PostgresSQL v10 和 PostgresSQL v11 服务

    services.msc
    
  2. 为 v10 和 v11 的用户设置完全访问控制/完整权限。

  3. 创建具有完全管理员权限的“postgres”用户帐户。
  4. 打开命令行并输入

    RUNAS /USER:postgres "CMD.EXE
    

    提示输入用户 postgres 用户的密码。

  5. 新的命令行窗口打开并 cd 到 'C:\Program Files\PostgreSQL\11'。

  6. 输入以下内容:
pg_upgrade.exe --old-datadir "C:/Program Files/PostgreSQL/10/data" --new-datadir "C:/Program Files/PostgreSQL/11/data" --old-bindir "C:/Program Files/PostgreSQL/10/bin" --new-bindir "C:/Program Files/PostgreSQL/11/bin" --check

按回车键我得到上述错误。

我对使用 PostgreSQL 的整个过程很陌生。

对出了什么问题有任何想法吗?

4

2 回答 2

0

我必须授予 \postgres modify 对旧数据目录和新数据目录的访问权限。这解决了我从 9.6 升级到 10 的问题

于 2021-11-16T13:51:39.340 回答
-1

我有同样的问题。我通过以 postgres 用户身份运行 cmd 来解决它。相反,我制作了一个密码文件并相应地设置了环境 PGPASSFILE:https ://www.postgresql.org/docs/11/libpq-pgpass.html

显然,当以 postgres 用户身份运行 cmd 时,是一些权限禁止打开 PG_VERSION

于 2020-08-21T10:33:38.630 回答