Postgresql是在本地运行并在Unix域上接受连接的服务器

Postgresql是在本地运行并在Unix域上接受连接的服务器,postgresql,ubuntu-14.04,ubuntu-16.04,psql,postgresql-9.4,Postgresql,Ubuntu 14.04,Ubuntu 16.04,Psql,Postgresql 9.4,我正在尝试在我的ubuntu16.04或14.04机器上安装postgresql-9.5或postgresql-9.6,然后使用以下命令完成安装过程 sudo apt-get install update sudo apt-get install postgresql postgresql-contrib 但当我试图使用以下命令从终端打开psql时 sudo su postgres psql 每一次它只是展示 psql:无法连接到服务器:没有这样的文件或目录 在本地运行并在Unix域上接

我正在尝试在我的ubuntu
16.04
14.04
机器上安装postgresql-9.5postgresql-9.6,然后使用以下命令完成安装过程

sudo apt-get install update
sudo apt-get install postgresql postgresql-contrib
但当我试图使用以下命令从终端打开
psql

sudo su postgres 
psql 
每一次它只是展示

psql:无法连接到服务器:没有这样的文件或目录 在本地运行并在Unix域上接受连接的服务器 套接字“/var/run/postgresql/.s.PGSQL.5432”

我尝试了大约10个stackoverflow.com解决方案,但没有成功。在我把头发都撕下来之前,请帮帮我:(

$服务postgresql状态

● postgresql.service - PostgreSQL RDBMS
   Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor prese
   Active: active (**exited) since রবি 2017-03-12 21:45:56 BDT; 23min ago
  Process: 917 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
 Main PID: 917 (code=exited, status=0/SUCCESS)
    Tasks: 0
   Memory: 0B
      CPU: 0
   CGroup: /system.slice/postgresql.service

仔细查看此行为什么退出?活动:活动(退出)自রবি 2017-03-12 21:45:56 BDT;23分钟前

您可以运行以下命令来检查postgresql是否正在运行:

service postgresql status
如果未启动PostgreSQL,则可以通过以下方式启动:

service postgresql start
service postgresql status
如果启动不正常,您可以查看日志中的情况:

tail /var/log/postgresql/postgresql-9.6-main.log
您可能需要运行
createdb
来初始化数据库(请参阅):

更新

如果在执行
维护PostgreSQL状态时PostgreSQL正在运行,但您仍然无法连接,则应检查PostgreSQL是否确实在端口5432上运行,或在另一个端口上运行,该端口具有:

netstat -na | grep postgres
更新2


由于debian/ubuntu for PostgreSQL上的本机软件包很糟糕,我建议您改为安装这些软件包:(将
9-2
替换为
9-6
)。

这就是在删除现有PostgreSQL版本和目录后最终解决我的问题的方法

sudo apt-get --purge remove postgresql-*
sudo rm -Rf /etc/postgresql /var/lib/postgresql
sudo apt-get install postgresql

我在我的回答中添加了一个端口检查,请让我知道它是否有帮助snetstat-na | grep postgres在终端上没有显示任何内容。我强烈建议您从debian中删除软件包并安装我的“更新2”中建议的软件包。谢谢!您救了我!
活动(已退出)
正常情况下,首先要检查的是postgres日志文件。postgres在(某些)配置错误时无法启动,并在退出前在日志文件中报告这一情况。简单明了的答案有效。感谢您的写作。
sudo apt-get --purge remove postgresql-*
sudo rm -Rf /etc/postgresql /var/lib/postgresql
sudo apt-get install postgresql