当前运行 postgreSQL 9.4.5_2
我已经尝试过
pg_ctl stop -W -t 1 -s -D /usr/local/var/postgres -m f
通常没有消息就是好消息,但之后我会跑步
pg_ctl status -D /usr/local/var/postgres
并获得
pg_ctl: server is running (PID: 536)
我也尝试过
pg_ctl restart -w -D /usr/local/var/postgres -c -m i
回复信息为:
waiting for server to shut down.......................... failed
pg_ctl: server does not shut down
我还检查了我的 /Library/LaunchDaemons/ 以了解为什么该服务在登录时启动,但到目前为止还没有运气。有人知道我下一步应该检查哪里吗?活动监视器中的强制退出也对我没有任何帮助。
首先,检查您的操作系统是否正在运行brew(自制程序的缩写版本:[https://brew.sh/])。
要验证它,请在您的终端中运行:
bash-3.2$> brew -v
Homebrew X.X.XX
如果它适合您,请考虑使用下一个
brew
子命令:
bash-3.2$ brew services
man brew
帮助信息)brew services [subcommand]
Manage background services with macOS’ launchctl(1) daemon manager or
Linux’s systemctl(1) service manager.
bash-3.2$ brew services list
Name Status User File
[email protected] none
postgresql@XX started [LOCAL_USER]
redis none
@XX
,当前服务状态:[none|started|...]
。请,此命令将尝试停止您的服务。明智地使用它,确保您首先浏览了
brew services stop
文档,并正确确定了对环境的影响范围。
man brew
帮助信息)[sudo] brew services stop (formula|--all):
Stop the service formula immediately and unregister it from launching at
login (or boot).
brew services stop postgresql@15
大力提及@ChiaraSpencer (https://stackoverflow.com/users/14436643/ciara-spencer)。
干杯
重新启动
sudo -u postgres pg_ctl -D /Library/PostgreSQL/11/data stop
尝试过 sudo 和 su 但没有这样的运气。 刚刚发现这个图形用户界面
https://github.com/MaccaTech/postgresql-mac-preferences
如果有人可以帮助使用终端命令,我们将不胜感激,但在此之前 gui 将完成工作。
有同样的问题,我在本地安装了 postgres,并想将其包装在 docker 容器中。
我通过 1) 卸载 postgres 2) 杀死 postgres 端口上的剩余进程彻底解决了这个问题。如果您不卸载,进程将重新启动并再次获取端口 - 查看您的 Brewfile 表单
brew bundle dump
以检查 restart_service: true
标志。
我推断,由于我使用的是容器,所以我应该不需要本地容器,但是!!注意,这将从您的系统中删除 postgres。
brew uninstall postgres
...
lsof -i :5432 # this to find the PID for the process
kill - 9 <the PID you found at previous command>
注意:如果您仍然想使用
psql
,您可以 brew install libpq
,并将 psql 添加到您的 PATH(命令输出显示要添加到 .zshrc
或类似内容中的内容)
您可以使用此命令停止服务器
{pg_ctl -D /usr/local/var/postgres stop -s -m fast}
我刚刚在 OS X Ventura 上安装了 Postgres 15,也不知道如何停止它。以下工作有效:
sudo -u postgres /Library/PostgreSQL/15/bin/pg_ctl -D /Library/PostgreSQL/15/data stop
添加已经说明的解决方案:
如果您决定使用
pg_ctl
命令,请确保您以具有访问数据库/数据库服务器权限的用户身份执行该命令。
这意味着:
或
$ sudo su <name_of_database_user>
pg_ctl -D /Library/PostgreSQL/<version_here>/data/ stop
启动命令也是如此。
信用:https://gist.github.com/kingbin/9435292 (基本上在 github 上托管了一个包含命令的文件,节省了我一些时间:^) )
我有一个运行 Postgres 的流浪 docker 容器,但我已经忘记了。
另一种可能的情况是当你通过 UI 安装 PostgreSQL 时,查找进程的命令是:
netstat -vanp tcp | grep 5432
然后你杀掉PID
kill -9 PID_FROM_netstat