我按照http://xadmin.info/?p=284上的说明安装了postgresql
# pg_ctl -D /var/lib/pgsql/data -l pglog.log start server starting postgres@linux-p0pl:~> psql psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
我没有得到为什么我得到这个错误,当服务器已经开始…有人请请帮助。
我的pglog.log文件显示以下输出:
2013-02-06 19:43:39 GMT FATAL: lock file "postmaster.pid" already exists 2013-02-06 19:43:39 GMT HINT: Is another postmaster (PID 23971) running in data directory "/var/lib/pgsql/data"? 2013-02-06 19:44:02 GMT FATAL: lock file "postmaster.pid" already exists 2013-02-06 19:44:02 GMT HINT: Is another postmaster (PID 23971) running in data directory "/var/lib/pgsql/data"? 2013-04-24 12:43:29 GMT FATAL: data directory "/var/lib/pgsql/data" has group or world access 2013-04-24 12:43:29 GMT DETAIL: Permissions should be u=rwx (0700). 2013-04-24 12:44:07 GMT FATAL: data directory "/var/lib/pgsql/data" has group or world access 2013-04-24 12:44:07 GMT DETAIL: Permissions should be u=rwx (0700). 2013-04-24 12:57:02 GMT FATAL: data directory "/var/lib/pgsql/data" has group or world access 2013-04-24 12:57:02 GMT DETAIL: Permissions should be u=rwx (0700). 2013-04-24 12:57:40 GMT FATAL: data directory "/var/lib/pgsql/data" has group or world access 2013-04-24 12:57:40 GMT DETAIL: Permissions should be u=rwx (0700).
ps -ef | grep postgres
root 21659 21591 0 19:14 pts/0 00:00:00 grep --color=auto postgres
/var/lib/pgsql/data
上的权限和所有权应该是:
# ll -d /var/lib/pgsql/data drwx------. 15 postgres postgres 4096 Apr 24 10:27 /var/lib/pgsql/data
如果他们不这样做:
# chmod -R 700 /var/lib/pgsql/data # chown -R postgres /var/lib/pgsql/data
检查pglog.log
文件以确保服务器确实无误启动。 鉴于这个错误,它似乎不能正常启动。
你可能没有配置你的服务器把unix域套接字放在“/ tmp”中。 它可能在某处像“/ var / run / pgsql”,但看到你的postgresql.conf
文件,看看究竟是什么。
然后,您可以在命令行上将此目录指定为“主机”:
psql -h /path/we/want ...
如果这不是问题,请检查端口号。
不知道为什么/如何你的psql客户端和postgresql服务器有不同的默认路径,但我从来没有听说过的网站,你从我的指示,所以我不知道他们是多么有用。