[英]Correct way to install psql without full Postgres on macOS?
您也可以使用自制软件来安装 libpq。
brew install libpq
这将为您提供 psql、pg_dump 和一大堆其他客户端实用程序,而无需安装 Postgres。
不幸的是,由于它提供了一些与完整postgresql
包中包含的相同的实用程序,brew 将它安装为“仅桶装”,这意味着默认情况下它不在 PATH 中。 Homebrew 会在安装后吐出一些有关如何将其添加到 PATH 的信息。 在我的情况下是这样的:
echo 'export PATH="/usr/local/opt/libpq/bin:$PATH"' >> ~/.zshrc
或者,您可以为所需的实用程序创建符号链接。 例如:
ln -s /usr/local/Cellar/libpq/10.3/bin/psql /usr/local/bin/psql
注意:使用已安装的版本而不是 10.3。
或者,您可以指示自制软件“无论如何都将其所有二进制文件链接到 PATH”
brew link --force libpq
但是之后您将无法安装postgresql
包。
库 11.2
MacOS & zsh 或 bash
下面的作品
libpq
brew install libpq
更新路径
如果使用 zsh:
echo 'export PATH="/usr/local/opt/libpq/bin:$PATH"' >> ~/.zshrc source ~/.zshrc
如果使用 bash:
echo 'export PATH="/usr/local/opt/libpq/bin:$PATH"' >> ~/.bash_profile source ~/.bash_profile
Homebrew 只有真正有postgres公式,并且没有任何仅安装psql
工具的特定公式。
因此,获取psql
应用程序的“正确方法”确实是安装postgres公式,并且您会在“警告”部分的底部看到它实际上并没有运行数据库,它只是将文件放在您的系统:
$ brew install postgres
==> Downloading https://homebrew.bintray.com/bottles/postgresql-9.6.5.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring postgresql-9.6.5.sierra.bottle.tar.gz
==> /usr/local/Cellar/postgresql/9.6.5/bin/initdb /usr/local/var/postgres
==> Caveats
<snip>
To have launchd start postgresql now and restart at login:
brew services start postgresql
Or, if you don't want/need a background service you can just run:
pg_ctl -D /usr/local/var/postgres start
==> Summary
🍺 /usr/local/Cellar/postgresql/9.6.5: 3,269 files, 36.7MB
现在您可以使用psql
连接到远程 Postgres 服务器,并且不会运行本地服务器,但如果您真的愿意,也可以这样做。
要验证本地postgres
守护进程没有运行,请检查您安装的自制服务:
$ brew services list
Name Status User Plist
mysql stopped
postgresql stopped
如果您没有安装Homebrew Services ,只需
$ brew tap homebrew/services
...您将获得此功能。 有关Homebrew 服务的更多信息,请阅读这篇出色的博客文章,它解释了它是如何工作的。
如果您真的不需要 postgresql,那么您甚至不必更改使用 libra 的路径,只需链接libpq
。 文档说它不是的唯一原因是避免与 PostgreSQL 包发生冲突。
brew uninstall postgresql
brew install libpq
brew link --force libpq
安装 libpq:
brew install libpq
然后,创建一个符号链接:
ln -s /usr/local/opt/libpq/bin/psql /usr/local/bin/psql
希望它有帮助。
我发现所有这些确实令人不满意,尤其是当您必须支持多个版本的 postgres 时。 一个更简单的解决方案是在此处下载二进制文件:
https://www.enterprisedb.com/download-postgresql-binaries
只需运行与您正在使用的数据库匹配的psql
的可执行版本,无需任何额外步骤。
例子:
./path/to/specific/version/bin/psql -c '\x' -c 'SELECT * FROM foo;'
你可以试试brew install postgresql
但这提供了一个很好的 GUI 来管理您的数据库https://postgresapp.com
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.