【发布时间】:2015-02-26 07:57:27
【问题描述】:
我使用自制软件在我的 Mac (10.10.1/Yosemite) 上安装了 Postgresql 9.4.0。它不起作用。
我在 ~/Library/LaunchAgents 中创建了指向 /usr/local/opt/postgresql/homebrew.mxcl.postgresql.plist 的软链接。
如果我尝试手动加载 postgres,我会收到“操作正在进行中”的消息
> launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
/usr/local/Cellar/postgresql/9.4.0/homebrew.mxcl.postgresql.plist: Operation already in progress
但是 postgres 似乎没有运行。
> ps auxw | grep post
billmcn 670 0.0 0.0 2424272 452 s000 R+ 10:12PM 0:00.01 grep post
我无法连接命令行客户端。
> psql
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
据我所知,我已经尝试了在讨论此问题的 other Stackoverflow 线程上建议的所有修复。具体来说:
- 我已经卸载并重新安装了 postgres 和随附的 Ruby gem。我的机器上没有 postgres 8.0 版本。
- 我已验证 psql 客户端程序是 Homebrew 安装的 9.4.0 版本,而不是 Mac 系统二进制文件。
- 我已验证 /usr/local/var/postgres/postmaster.pid 不存在。
- 我已经重启了机器。
我之前确实有 Homebrew postgres 在这台机器上工作。我认为破坏它的原因是从版本 8 升级到版本 9,但我不确定。
我没有任何需要保留的数据库。我愿意从 postgres 开始;我现在只需要让它工作。有什么想法吗?
问题似乎出在 /usr/local/var/postgres 目录的权限上。这是我的 var 目录在事情不工作时的样子。
ll /usr/local/var/
drwxr-xr-x 3 billmcn admin 102 Dec 20 12:44 cache
drwxr--r-- 2 root admin 68 Dec 29 21:37 postgres
(whoami = "billmcn")
我删除了/usr/local/var/postgres,卸载重装了postgres,现在是这个样子。
ll /usr/local/var/
drwxr-xr-x 3 billmcn admin 102 Dec 20 12:44 cache
drwx------ 23 billmcn admin 782 Dec 30 10:51 postgres
不知道它是如何进入这种状态的,因为我不记得在这个目录的权限上做了什么,但没关系。现在可以了。
【问题讨论】:
标签: macos postgresql homebrew