我在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
答案 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
答案 3 :(得分:1)
如果您使用Homebrew安装postgresql,那么正如Shevauns对Greg的回答所说的那样,正确的程序是
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
rm ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist