Unix套接字错误postgresql 9.4

时间:2015-07-01 00:03:28

标签: postgresql unix-socket

我刚刚在一个全新的15.04 ubuntu安装上安装了postgresql 9.4,而且我无法启动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"?

我已经尝试过在这里和其他所有论坛上发布的每一个解决方案,但除了一个之外没有其他任何工作:

http://ubuntuforums.org/showthread.php?t=869080

sudo mkdir -p /usr/local/pgsql/data
sudo chown -R postgres:postgres /usr/local/pgsql/
sudo sudo su postgres
cd /usr/lib/postgresql/9.4/bin/
./initdb -D /usr/local/pgsql/data
./postgres -D /usr/local/pgsql/data

我尝试按照那里的说法更改init.d脚本,但这不起作用,上面的解决方案似乎只工作一次,之后,文件锁定,我无法运行。 / postgres -D / usr / local / pgsql / data

有人可以帮忙吗?我尝试过删除,清除,重新安装,多个版本等。每次我都会遇到同样的错误。 汉克斯! Ť

1 个答案:

答案 0 :(得分:0)

psql不是PostgreSQL服务器。它是连接到已经运行的服务器的命令行客户端。

看起来你没有运行PostgreSQL服务器,因此无需连接。请注意,错误消息显示服务器是否正在运行 ...

正如您已经注意到的,要启动PostgreSQL服务器,您需要运行postgres -D /path/to/datadir(或者最好是pg_ctl -D /path/to/datadir -w start -l pgstartup.log)。

您应该让操作系统在启动时自动执行此操作,而不是手动执行此操作。大多数PostgreSQL安装程序和软件包都会为您设置。有些需要额外的步骤来启用它,这将在他们的文档中解释。你还没有提到你是如何从哪里安装PostgreSQL的,所以我不能更具体地说明这一点。

如果您使用Ubuntu PostgreSQL软件包或http://apt.postgresql.org/软件包,他们将为您注册一项服务。

请参阅https://help.ubuntu.com/community/PostgreSQL