【发布时间】:2014-11-21 22:51:25
【问题描述】:
重现错误的步骤:
brew uninstall postgresqlbrew prunebrew install postgresql- 运行 postgresql 启动命令
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"?
我尝试过但不起作用的建议修复:
sudo mkdir /var/pgsql_socket/sudo ln -s /private/tmp/.s.PGSQL.5432 /var/pgsql_socket/
删除 postmaster.pid 文件(与上面相同的链接):
rm /usr/local/var/postgres/postmaster.pid
create potentially "cleaned up" directories from upgrade:
mkdir -p /usr/local/var/postgres/{pg_tblspc,pg_twophase,pg_stat_tmp}/ touch /usr/local/var/postgres/{pg_tblspc,pg_twophase,pg_stat_tmp}/.keep
编辑 1:
This article 正确推测有多个版本的 postgres 在使用中,并且必须指定哪个pg_ctl(如下)。奇怪的是/usr/local/var中有两个目录:postgre&postgres。如果有人知道要更新哪些设置以直接使用正确的pg_ctl 命令,我将不胜感激!
/usr/local/Cellar/postgresql/9.3.5_1/bin/pg_ctl -D /usr/local/var/postgre start
【问题讨论】:
-
我在优胜美地遇到了类似的问题,但是阅读您的描述后,我怀疑当您运行启动命令时,您忽略了复制以 postgres 结尾的命令的最后一个字符,例如
postgres -D /usr/local/var/postgres并以某种方式创建一个无关紧要的postgre。 -
这个帖子解决方案对我有用
https://medium.com/@bitadj/completely-uninstall-and-reinstall-psql-on-osx-551390904b86
标签: postgresql homebrew osx-yosemite