我一直在寻找解决方案,但找不到可行的解决方案 .
我在我的MacBook中使用brew( brew install postgres
)安装了postgres,我目前正在使用brew服务运行它( brew services list
显示postgres作为运行服务) . 但是,当我尝试运行 psql
时,我收到以下错误 .
psql:无法连接到服务器:没有这样的文件或目录服务器是否在本地运行并接受Unix域套接字“/tmp/.s.PGSQL.5432”上的连接?
有人已经解决了类似的问题吗?
5 回答
我有同样的错误,我通过删除进程pid文件修复它:
rm -f /usr/local/var/postgres/postmaster.pid
我今天遇到了这个问题 . postgres停止接受连接虽然自制软件认为它正在运行 .
为了解决它,我跑了,
从此命令输出,
然后我想,嗯也许那个日志文件中有东西,
果然,
所以,我删除了该文件
一切都开始了 .
我会在这里结合Wilson和Grasshopper的两个答案 .
您可以使用
brew services list
检查plist文件中的postgres服务,以查找文件的位置,并在您喜欢的编辑器中打开它 .您应该看到
StandardErrorPath
的值列为:然后你应该使用
tail -n 100 /usr/local/var/log/postgres.log
尾随日志文件的结尾在我的情况下,错误如下:
这是因为我必须硬关闭我的Mac并且postgres没有机会清理PID文件 . 只需删除PID文件
rm /usr/local/var/postgres/postmaster.pid
并启动postgresbrew services start postgresql
一句警告: do not delete this PID file unless you are sure that postgres is not running . 您可以通过运行
brew services stop postgresql
然后等待brew services list
的结果来显示posgres处于停止状态来执行此操作 .我从版本点击安装postgresql93时遇到了同样的错误 . 检查
brew services list
(~/Library/LaunchAgents/homebrew.mxcl.postgresql93.plist
)输出中指示的.plist文件,我发现以下消息:这让我得到了这个答案:data directory "/usr/local/var/postgres" has wrong ownership
运行
sudo chmod -R 700 /usr/local/var/postgres
后,我得到了一个不同的错误:然后导致我:
pg_tblspc
missing after installation of latest version of OS X (Yosemite or El Capitan)运行
mkdir /usr/local/var/postgres/pg_tblspc/
后,群集已成功启动 .对我有用的是删除
/usr/local/var/postgres/
文件夹,然后再次卸载和安装postgres