在 Windows Server 2022 上,我以管理员身份登录并尝试pg_ctl start
在最初由用户 SYSTEM 创建的 Postgresql 数据库上执行操作,但在 cmd 控制台中出现以下错误(我尝试使用和不使用“以管理员身份运行”):
>pg_ctl.exe start -o "-p 5432" -U user -P password -D C:\aiw\aiw1\data -l C:\aiw\aiw1\trace\postgres.trace
waiting for server to start.... stopped waiting
pg_ctl: could not start server
Examine the log output.
指定的日志文件包含此错误:
2023-08-28 04:01:07.898 PDT [2088] PANIC: could not open file "global/pg_control": Permission denied
我检查了数据目录的权限并且看起来没有问题,用户 SYSTEM 和组管理员都可以访问它:SYSTEM 权限和管理员权限。我还检查了用户 Administrator 确实属于 Administrators 组:管理员属性。
为什么会发生这种情况?我是否缺少某些权限?
操作系统在虚拟机中运行,完整版本信息为:
Edition: Windows Server 2022 Standard
Version: 21H2
OS build: 20348.350
奇怪的是,如果我向用户管理员或组用户添加完全控制权限,则该pg_ctl start
命令将成功运行。