如何使用 MAMP 在 Mac OS 上将 Postgres 添加到 PATH?

How to add Postgres on Mac OS with MAMP to PATH?

我正在关注 this tutorial 如何 运行 Postgres on MAC OS X with MAMP。但我似乎无法将 PostgreSQL 添加到我的 PATH 变量中。当我 运行 export PATH="/Library/PostgreSQL/11/bin" 我得到这个错误:

prompt_context:13: command not found: whoami
prompt_background_jobs:1: command not found: wc
prompt_background_jobs:2: command not found: awk

这正是我所做的:

现在可以在此处找到 PostgreSQL 文件夹:/Library/PostgreSQL。里面有一个名为 11 的文件夹。在 /Library/PostgreSQL/11 中,我可以看到 bin 文件夹和 data 文件夹。

我的 Applications 文件夹中还有另一个名为 PostgreSQL 11 的文件夹。在这里我可以看到一个 Documentation 文件夹和我认为的其他一些程序:

当我忽略设置 PATH 变量和 运行 su postgres 时出现以下错误:

su: Sorry

sudo postgres:

"root" execution of the PostgreSQL server is not permitted.
The server must be started under an unprivileged user ID to prevent
possible system security compromise. See the documentation for
more information on how to properly start the server

此外,运行ning psql 给我这个错误,因为 PostgreSQL 没有包含在我的环境变量中:

psql: could not connect to server: No such file or directory
   Is the server running locally and accepting
   connections on Unix domain socket "/tmp/.s.PGSQL.5432"?

注意:此错误询问服务器是否正在接受端口为 5432 的 Unix 域套接字,而我在端口 5433 上安装了 PostgreSQL,这是怎么回事?使用 cd 和 运行ning sudo ./psql 移动到 /Library/PostgreSQL/11/bin(应该 运行 Unix 可执行文件 psql)给我同样的错误。


对我没有任何进一步帮助的资源:

当您 运行 export PATH="/Library/PostgreSQL/11/bin" 时,您是在告诉系统您需要的所有命令都在那个目录中。由于您还需要像 wc 这样的标准系统实用程序,因此您还需要在 PATH 中包含它们所在的目录。通常你会这样做只是将 postgres 目录添加到搜索命令的目录列表中:

export PATH="/Library/PostgreSQL/11/bin:$PATH"