PostgreSQL服务器未在ubuntu 14.04中启动


15

我的问题是在安装postgresql后尝试配置postgresql数据库,它显示如下错误消息:

dineshlap@ss-laptop:~$ sudo -u postgres psql postgres
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"?

我尝试了很多来自互联网的解决方案。但是,对我没有任何帮助!:(

如果您知道解决此问题的方法,请回答此帖子!

注意:我正在使用ubuntu 14.04(64位)和PostgreSQL 9.3


您是否在/etc/postgresql/9.3中修改了postgresql.conf文件?行的listen_addresses =“本地主机”必须是未注释(无#)。
xunilk 2015年

@xunilk感谢您的回复!我试过了,但是发生同样的问题!
Dinesh

用清除和清洁功能卸载postgresql,然后尝试再次安装。我在Debian中也遇到过类似的问题,并以此方式解决了。
xunilk

更正pg_hba.conf文件后,我解决了问题。我已经从绑定部分删除了CIDR块信息。
Mario Tacke

Answers:


26

只是尝试重新启动

sudo /etc/init.d/postgresql restart

这对我有用:)


它要求输入密码。此处的默认密码是什么?
普拉纳夫·辛格

1
@PranavSingh是您的sudo密码,与psql无关
Talal

3

Ubuntu16.04和9.3

sudo systemctl restart postgresql-9.3.service

也许您在重新启动服务器之前找到了服务

service --status-all

3
这个问题大约是14.04,所以您不能致电systemctl。另一个答案建议重新启动。在命令中也包含版本号似乎很奇怪-这真的需要吗?
Zanna

1
我的ubuntu是ubuntu 14上的16.04。*尝试像“ sudo service xyz start”
Giang Bui Truong

0

在某些情况下,您可能会遇到权限问题。我创建一个如下的shell脚本:

#!/bin/bash

chown -R $User:$User /var/run/postgresql
sudo /etc/init.d/postgresql restart

将$ User替换为您的用户名,并执行文件(假设文件名为postgresql.sh):

sudo ./postgresrun.sh

0

我有同样的问题。跑步后

systemctl status postgresql@9.6-main.service

它显示了以下错误

数据目录“ /var/lib/postgresql/9.6/main”具有组或世界访问权限


所以我跑了:

sudo chmod 0700 /var/lib/postgresql/9.6/main

然后我重新启动:

sudo systemctl restart postgresql@9.6-main.service

正在运行sudo systemctl restart postgresql@9.6-main.service表明我的服务处于活动状态并且正在运行!


0

试试这个先生

编辑您的pg_hba.conf并添加您的主机地址:

local    all    postgres                     peer
host     all    all         127.0.0.1/24     md5

并使用修改了postgres.conf添加队列:

listen_addresses = " * "

然后重新启动服务:

sudo service postgresql restart

看到您的日志输出说了什么奇迹:

sudo tail -f /var/log/postgresql/postgresql-9.6-main.log

希望这对先生有帮助。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.