如何在 Mac 上使用 CLI 与 PostgreSQL 交互?

How do I interact with PostgreSQL using CLI on a Mac?

我一直在将 pgAdmin 与 PostgreSQL 一起使用,但我想使用命令行进行一些练习。当我安装 PostgreSQL 时,我确保包含命令行工具。我是直接从 Postgres 的网站下载的——我没有使用 Homebrew。

我尝试在终端中使用 psql 进行连接,但没有成功。因此,我尝试查看是否已按照此处所述正确设置路径:https://dba.stackexchange.com/questions/93369/postgres-installation-on-macosx-problem-with-psql

我用mdfind psql找到路径:PATH="/Library/PostgreSQL/13/bin:${PATH}"

我重新加载了 .zprofile,输入了 psql 和我当前用户的密码(我也尝试了 PostgreSQL 密码)但是我收到以下错误:

psql: error: could not connect to server: FATAL: password authentication failed for user "me"

我还尝试通过以下方式将用户更改为“postgres”:sudo su - postgres 并输入我之前尝试过的相同密码,但它一直说“抱歉,请重试”,然后在尝试 3 次后退出。

pgAdmin4 工作正常,一如既往。我输入 pgAdmin 的密码与我使用终端尝试输入的密码相同。有谁知道我做错了什么?

编辑:原来我只需要写 sudo su postgres 而没有 -。然后我输入我的用户密码,写 psql,输入密码,然后我就可以使用命令行与 Postgres 交互了。如果你和我一样遇到困难,试试这个并像我上面那样设置路径。

删除您的 PostgreSQL 安装。下载 https://postgresapp.com/ (or just click https://github.com/PostgresApp/PostgresApp/releases/download/v2.4/Postgres-2.4-13.dmg )

配置您的 $PATH 以使用包含的命令行工具(可选):

sudo mkdir -p /etc/paths.d &&
echo /Applications/Postgres.app/Contents/Versions/latest/bin | sudo tee /etc/paths.d/postgresapp

在终端中使用 psql 作为命令行。 (我在 macOS 上使用 Postgres.app,效果很好。)

参考文档:https://www.postgresql.org/docs/13/app-psql.html

所以,原来我只需要写 sudo su postgres 而没有 -。然后我输入我的用户密码,写 psql,输入密码然后我就可以使用命令行与 Postgres 交互了。

如果你和我一样有困难,试试这个并像我在原来的那样设置路径 post。