PostgreSQL服务器不会在Lion上关闭(Mac OS 10.7)

时间:2011-08-05 01:10:09

标签: macos postgresql osx-lion

我在Lion上使用Homebrew安装了PostgreSQL。它开始没问题,但不会关机。我试过了:

$ #started with
$ pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
$ #tried stoping with
$ pg_ctl -D /usr/local/var/postgres stop -m immediate
waiting for server to shut down................................... failed
pg_ctl: server does not shut down

我通过删除启动代理修复了此问题:

launchctl unload -w ~/Library/LaunchAgents/org.postgresql.postgres.plist
rm ~/Library/LaunchAgents/org.postgresql.postgres.plist

4 个答案:

答案 0 :(得分:63)

launchctl unload -w ~/Library/LaunchAgents/org.postgresql.postgres.plist
rm ~/Library/LaunchAgents/org.postgresql.postgres.plist

答案 1 :(得分:12)

使用-m immediate关闭PostgreSQL服务器是一种危险的方法, 因为“立即”模式将在没有干净关闭的情况下中止所有服务器进程。

这将导致重启时恢复运行。尝试使用参数-m fast关闭PostgreSQL。 “快速”模式不会等待客户端断开连接,并将终止正在进行的在线备份。所有活动事务都将回滚,客户端将被强制断开连接

pg_ctl stop -D /usr/local/var/postgres -m fast 

有关pg_ctl的更多信息,请访问 http://www.postgresql.org/docs/9.0/static/app-pg-ctl.html

答案 2 :(得分:2)

这对我有用

 pg_ctl -D /Library/PostgreSQL/9.2/data/ start
 pg_ctl -D /Library/PostgreSQL/9.2/data/ stop

来源https://sites.google.com/site/amaosblog/database/postgresql/how-to-start-stop-postgresql-9-2-on-mac-os-x-10-8-x

答案 3 :(得分:1)

如果您使用Homebrew安装postgresql,那么正如Shevauns对Greg的回答所说的那样,正确的程序是

launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
rm ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist