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

我在Lion上使用Homebrew安装了PostgreSQL。 它开始好,但不会closures。 我试过了:

$ #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 

我通过删除Launch Agent来解决了这个问题:

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

使用-m immediateclosuresPostgreSQL服务器是一个危险的方法,因为“立即”模式将会中止所有的服务器进程而不会干净closures。

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

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

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

这对我有用

 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-8x

如果您使用Homebrew来安装postgresql,那么Shevauns对Greg的回答的评论指出,正确的程序是

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