Unix socket error postgresql 9.4

馋奶兔 提交于 2020-01-03 04:42:06

问题


I just installed postgresql 9.4 on a brand new 15.04 ubuntu install and I'm unable to start the psql server. Every time I try to run sudo -u postgres psql, it gives me the following error:

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

I have tried every single solution posted here and on every other forum, but none have worked except one:

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

I tried changing the init.d script as stated there but that doesn't work, and the solution above only seems to work once, after that, a file locks up and I'm unable to run ./postgres -D /usr/local/pgsql/data

Can someone please help? I've tried removing, purging, reinstalling, multiple-versions, etc. Every single time I get the same error. hanks! T


回答1:


psql is not the PostgreSQL server. It is the command-line client that connects to an already-running server.

It looks like you had no PostgreSQL server running, so there was nothing to connect to. Note that the error message says Is the server running...

As you have already noted, to start a PostgreSQL server you need to run postgres -D /path/to/datadir (or preferably something like pg_ctl -D /path/to/datadir -w start -l pgstartup.log).

Rather than doing so manually, you should have your operating system do this automatically when you start up. Most PostgreSQL installers and packages will set this up for you. Some require additional steps to enable it, which will be explained in their documentation. You haven't mentioned how you installed PostgreSQL / from where, so I can't be more specific about this.

If you use the Ubuntu PostgreSQL packages or http://apt.postgresql.org/ packages, they'll register a service for you.

Please see https://help.ubuntu.com/community/PostgreSQL



来源:https://stackoverflow.com/questions/31150514/unix-socket-error-postgresql-9-4

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!