升级到Lion后,我在尝试启动Postgres服务器时遇到以下错误:
pg_ctl:无法打开PID文件“/usr/local/var/postgres/postmaster.pid“:权限被拒绝
我还尝试重新运行initdb命令,但遇到了类似的问题:
initdb:无法访问目录“/usr/local/var/postgres”:权限被拒绝
如果有关系的话,PostgreSQL是通过Homebrew安装的。运行brew info postgresql
会产生预期的结果(版本,摘要文档)。
升级到Lion后,我在尝试启动Postgres服务器时遇到以下错误:
pg_ctl:无法打开PID文件“/usr/local/var/postgres/postmaster.pid“:权限被拒绝
我还尝试重新运行initdb命令,但遇到了类似的问题:
initdb:无法访问目录“/usr/local/var/postgres”:权限被拒绝
如果有关系的话,PostgreSQL是通过Homebrew安装的。运行brew info postgresql
会产生预期的结果(版本,摘要文档)。
3条答案
按热度按时间x6yk4ghg1#
好吧,结果解决方案非常简单,我将/usr/local/var上的组更改为staff(从wheel),并将所有权(
chown -R
)更改为我的系统帐户(从root)。在那之后,postgres开始运转良好。
修改这些权限时我有点紧张,但我的/usr/local/var中只有一个postgres目录,所以一切都应该很好。如果你在/usr/local/var中有其他目录/文件,也许在chown'ing时不要使用
-R
标志?Homebrew ruby安装程序脚本将/usr/local/var组更改为staff,因此在升级到Lion时必须撤消。不确定所有权是root而不是我的系统帐户...
nqwrtyyt2#
sudo chown -R $(whoami)/usr/local/var
elcex8rz3#
我也遇到了类似的问题,在我检查后,我注意到brew在不同的路径上安装了postgres,它被称为postgresql@14(版本可以更改)。
(used brew和M1芯片)
这就成功了