我在我的OSX Mavericks系统上停止了Postgres(使用sudo launchctl unload /Library/LaunchDaemons/org.postgresql.postgres.plist
,它似乎干净地关闭了)现在我无法重启它。
~ $ psql -U postgres
psql: could not connect to server: Connection refused
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
似乎没有正在运行的Postgres流程...
~ $ ps auxwww | grep postgres
anna 78131 0.0 0.0 2432772 648 s004 S+ 12:31pm 0:00.00 grep postgres
但是当我尝试启动它时,我收到消息'操作已在进行中'。
~ $ sudo launchctl load /Library/LaunchDaemons/org.postgresql.postgres.plist
/Library/LaunchDaemons/org.postgresql.postgres.plist: Operation already in progress
我已经看到其他答案表明我应该删除postmaster.pid
文件,但我无法通过此名称查看任何文件:
~ $ sudo find / -name postmaster.pid
find: /dev/fd/3: Not a directory
find: /dev/fd/4: Not a directory
~ $
Postgres是否有启动日志,如果是,我在哪里可以找到它?
答案 0 :(得分:0)
您应该能够判断某些内容是否正在使用
监听Postgresql端口netstat -an | grep -i listen | grep 5432
(如果您的端口是5432)
然后你可以通过使用来判断什么是听力:
lsof -i :5432
如果没有任何东西正在监听你设置的postgresql实例的任何端口,那么它就不会运行。 (无论出于何种原因)您应该仔细检查postgresql.conf,pg_hba.conf,并在日志文件中查看pg_log以查找错误。
如果您正在侦听非标准端口,则可能需要使用" -p" psql选项设置端口。如果您正在侦听主机名,而不是localhost,则可能需要设置" -h"选项。
即:
psql -U postgres -h 10.1.23.4 -p 12345