繁体   English   中英

在 macOS 上安装没有完整 Postgres 的 psql 的正确方法?

[英]Correct way to install psql without full Postgres on macOS?

官方页面没有提到这种情况。 但是很多用户只需要psql而没有本地数据库(我在 AWS 上有)。 Brew 没有psql

您也可以使用自制软件来安装 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

下面的作品

  1. 安装libpq
brew install libpq
  1. 更新路径

    如果使用 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;'

最简单的方法是从这里安装pgAdminhttps : //www.pgadmin.org/

您可以使用查询工具管理数据库并发送一些查询

在此处输入图片说明

你可以试试brew install postgresql

但这提供了一个很好的 GUI 来管理您的数据库https://postgresapp.com

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM