Unix域套接字“ /tmp/.s.PGSQL.5432”上的Postgres连接?

时间:2018-11-25 02:00:34

标签: postgresql macos homebrew

我正在运行MacOS 10.14.1(对MacOS绝对是新的),我无法运行通过psql安装的brew命令,出现以下错误,希望提供一些帮助:

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"?

我尝试过的解决方案

  1. brew services start服务已在运行
  2. brew services stop postgresql, brew services start postgresql仍然是错误
  3. brew remove postgres, brew install postgres, psql仍然是错误
  4. brew unlink postgresql && brew link postgresql仍然是错误
  5. rm -f /usr/local/var/postgres/postmaster.pid我的/usr/local/var/不包含postgres/文件夹

要注意的另一件事是,当我brew install postgres收到警告时:

Warning: The post-install step did not complete successfully
You can try again using `brew postinstall postgresql`

运行brew postinstall postgresql会给出相同的警告。

希望能提供足够的信息,很乐意提供更多信息。

3 个答案:

答案 0 :(得分:0)

尝试一下

initdb /usr/local/var/postgres

答案 1 :(得分:0)

这样做的原因是该进程正在运行,但是postmaster.pid中缺少/usr/local/var/postgres/文件,因此您需要为Postgres启动创建postmaster.pid的进程

如果该进程已经在运行,

使用以下命令手动停止它:

pg_ctl -D /usr/local/var/postgres stop -s -m fast

使用以下命令手动启动它:

pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start

现在一切都应该正常了。

答案 2 :(得分:0)

我刚刚安装了现成的12.1版本。

brew uninstall postgresql
brew install postgresql

此问题已解决。还把我从12.1带到了12.3。