postgresql psql:无法连接到服务器:没有这样的文件或目录

首先,我想先说最相关的答案在这里 。 当我尝试运行以下是我得到的:

$ sudo -u postgres psql psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"? 

我也可以通过运行下面的第一个命令来确认服务器启动并退出。 下面的第二个命令确认服务器启动但立即退出,

 $ sudo service postgresql restart $ sudo service postgresql status ● postgresql.service - PostgreSQL RDBMS Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled) Active: active (exited) since Mon 2017-09-25 18:37:32 EDT; 11min ago Process: 8459 ExecStart=/bin/true (code=exited, status=0/SUCCESS) Main PID: 8459 (code=exited, status=0/SUCCESS) Sep 25 18:37:32 atas-250-557 systemd[1]: Starting PostgreSQL RDBMS... Sep 25 18:37:32 atas-250-557 systemd[1]: Started PostgreSQL RDBMS. 

看起来很有希望的答案是:

最后,在/opt/PostgreSQL/9.6中find的卸载程序甚至不会以它应该的方式从我的系统中删除所有的东西。 卸载后,我剩下一个剩余文件的窗口 。 如果你能帮我解决could not connect to server问题的顶部,将是首选。 最后的手段,我会愿意擦拭一切干净,但迄今没有任何运气。

PostgreSQL-9.6.5的Ubuntu 16.04通过安装程序(但这可能是多余的)

这不是多余的,你已经在两个不同的位置安装了两个不同版本的Postgres。 在像Ubuntu这样的软件包pipe理系统(以及大多数Linux系统)上,你只能使用在软件包pipe理器中find的软件版本。 您可能会将安装程序从安装Postgres的网站卸载到/opt//usr/local/ ,并将您的systemd目标文件更改为指向该安装。 同时,您的客户端来自软件包pipe理器,并期望在/var/run连接到的UNIX域套接字。

如果这是一个扔掉的虚拟机,擦拭它,重新安装,只通过apt-get安装Postgres。 如果没有,请参阅是否可以卸载下载的软件包,并通过apt-get (希望将您的systemd目标文件修复为指向正确的位置)重新安装其他软件包。