4

我最近在我的 Mac 上安装了 PostgreSQL 9.1,我尝试使用 pg_ctl 命令启动和停止它,但没有成功。

数据文件的默认安装文件夹是 /Library/PostgreSQL/9.1/data

默认情况下只能由“postgres”访问(即其他任何人都没有权限),所以我不得不更改该文件夹的权限(为什么要安装默认情况下无法使用的东西?)

但是,发出命令:

[mitch@localhost ~]$ /Library/PostgreSQL/9.1/bin/pg_ctl -l ~/Library/Logs/postgreslog -D /Library/PostgreSQL/9.1/data stop

返回错误

pg_ctl:无法发送停止信号(PID:50):不允许操作

有人知道如何解决这个问题吗?

谢谢

4

2 回答 2

2

我设法弄清楚了...

我需要使用

sudo su - postgres

将我的登录名更改为用户 postgres,该用户具有运行 pg_ctl 命令和访问数据文件夹所需的权限

于 2012-02-23T12:12:13.590 回答
1

我们遇到了同样的问题。所以不需要对文件进行任何更改。

下面的步骤我们已经解决了。

  1. 在开始菜单中搜索程序和文件cmd
  2. 右键单击带有以管理员身份运行的 cmd 图标以打开窗口命令提示符。
  3. /Library/PostgreSQL/9.1/bin在命令提示符下使用 cd 命令转到 postgres bin 目录,或将环境变量设置为 bin 目录中的所有 exe 文件作为命令运行。
  4. 在命令 propmt 中执行命令/Library/PostgreSQL/9.1/bin/pg_ctl -l ~/Library/Logs/postgreslog -D /Library/PostgreSQL/9.1/data stop

    如果您再次遇到问题,请告诉我们。
于 2017-11-13T01:44:14.723 回答