正在使用 Postgres.app 端口

Pet*_*ran 6 postgresql macos

我正在尝试启动服务器并收到错误

Port 5432 is already in use
Run Code Online (Sandbox Code Playgroud)

我有 brew uninstall postgress

which postgres
Run Code Online (Sandbox Code Playgroud)

什么都不给我。

活动监视器有 14 个我无法杀死的 postgres 进程。强制退出终止进程并使用另一个 pid 重新启动它。与sudo kill -9 PID 它相同, 它会终止进程并使用另一个 PID 重新启动它。

jos*_*iti 21

如果您在 OSX 上遇到此问题,请执行以下操作:

  1. 找出在该端口上运行的内容:
    $ lsof -n -i4TCP:5432

    COMMAND     PID         USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
    python2.7 28687 afdasdfasd    3u  IPv4 0x2f18e1284963d3e3      0t0  TCP 127.0.0.1:54970->127.0.0.1:postgresql (CLOSE_WAIT)
Run Code Online (Sandbox Code Playgroud)
  1. 杀了它
    $ kill -9 28687
Run Code Online (Sandbox Code Playgroud)
  1. 重启 postgresapp


cle*_*ens 18

您是否检查过启动守护程序?当 Postgres 与 Homebrew 一起安装时,它控制 Postgres 进程,并在它被杀死后自动重新启动 Postgres。尝试

sudo launchctl list
Run Code Online (Sandbox Code Playgroud)

或者

sudo launchctl list | fgrep postg
Run Code Online (Sandbox Code Playgroud)

找到守护进程的名称。您可以使用sudo launchctl stop <name>where停止守护进程,具体name取决于第一个命令的结果。


sur*_*190 13

Askubuntu 提供了一个对我有用的答案:

sudo pkill -u postgres
Run Code Online (Sandbox Code Playgroud)

来源:很好地停止所有 postgres 进程


小智 7

$ brew services stop postgresql

这将终止所有进程并让您启动服务器。