PostgreSQL服务器不会停止。

8 浏览
0 Comments

PostgreSQL服务器不会停止。

我在Mac OS X 10.8.4上遇到了一些关于PostgreSQL的问题。当postgres服务器正在运行时,我不小心执行了brew rm postgresql --force命令。当我使用brew install postgresql进行安装并运行pg_ctl -D /usr/local/var/postgres start时,我得到以下错误提示:

pg_ctl: another server might be running; trying to start server anyway
server starting
FATAL:  lock file "postmaster.pid" already exists                                                                       
HINT:  Is another postmaster (PID 752) running in data directory "/usr/local/var/postgres"?

当我运行"ps -ef | grep postgres"时,我得到以下结果:

501   752   235   0 12:42PM ??         0:00.01 /usr/local/opt/postgresql/bin/postgres -D /usr/local/var/postgres -r /usr/local/var/postgres/server.log
501   754   752   0 12:42PM ??         0:00.00 postgres: checkpointer process       
501   755   752   0 12:42PM ??         0:00.34 postgres: writer process       
501   756   752   0 12:42PM ??         0:00.02 postgres: wal writer process       
501   757   752   0 12:42PM ??         0:00.01 postgres: autovacuum launcher process       
501   758   752   0 12:42PM ??         0:00.01 postgres: stats collector process       
501   945   452   0 12:58PM ttys000    0:00.00 grep postgres

当我尝试使用pg_ctl stop -D /usr/local/var/postgres -m fastpg_ctl -D /usr/local/var/postgres stop -mi停止服务器时,我得到以下错误提示:

waiting for server to shut down........................................... Failed
pg_ctl: server does not shut down

编辑

which pg_ctl
/usr/local/bin/pg_ctl
pg_ctl --version
pg_ctl (PostgreSQL) 9.2.4

server.log的要点:https://gist.github.com/anonymous/6106182

0
0 Comments

问题原因:PostgreSQL服务器无法停止。

解决方法:运行以下命令:$ brew services list

$ brew services restart postgresql

如果上述方法无效,可以尝试以下解决方法:

1. 安装并使用gapple/services仓库,命令如下:

- $ brew tap gapple/services

- $ brew services

2. 参考链接https://apple.stackexchange.com/questions/150300/need-help-using-homebrew-services-command中的建议解决方法。

0
0 Comments

问题原因:在停止PostgreSQL服务器时,使用了错误的命令或者缺少了版本参数。

解决方法:使用正确的命令并添加版本参数。

最近我遇到了一个问题,就是无法停止PostgreSQL服务器。我尝试了不同的方法,但都没有成功。

首先,我尝试了使用以下命令来停止PostgreSQL服务器:

$ brew services stop postgresql

然而,服务器并没有立即停止。控制台上显示"Stopping postgresql, but it might take a while"。过了一段时间后,终于成功地停止了PostgreSQL服务器,显示"Successfully stopped postgresql"。

接着,我尝试使用pg_ctl ... stop命令来停止服务器,但是仍然没有成功。

最后,我找到了解决方法。我运行了brew services stop postgresql命令,并且加上了版本参数。这样,我再次尝试运行pg_ctl...stop命令时,服务器成功地停止了。

我不确定为什么这个方法有效,但我很高兴它解决了问题。

总结一下,如果你遇到了无法停止PostgreSQL服务器的问题,可以尝试使用正确的命令并添加版本参数来解决。

0
0 Comments

问题原因:启动代理的存在导致PostgreSQL服务器无法停止。

解决方法:通过以下步骤移除启动代理:

1. 执行以下命令卸载启动代理:launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

2. 删除启动代理文件:rm ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

0