如何使用自制软件安装特定版本的postgresql,该软件还包括psql和pg_dump等BIN?

如何使用自制软件安装特定版本的postgresql,该软件还包括psql和pg_dump等BIN?,postgresql,homebrew,Postgresql,Homebrew,当我安装postgresql时,brew当前安装v10.0。我需要它来安装v9.6,所以我安装了brewpostgresql@9.6但现在没有像psql、pg\u dump或pg\u restore这样的二进制文件。我有可能将它与v10.0混为一谈,只需安装两个版本,然后在v9.6中运行服务器,二进制文件将位于v10.0上。但是我现在想把所有东西都放在9.6版上。我怎样才能做到这一点 安装postgresql的两个版本,当前brew安装postgresql和旧版brew安装postgresql@

当我安装postgresql时,
brew当前安装
v10.0
。我需要它来安装
v9.6
,所以我安装了
brewpostgresql@9.6
但现在没有像
psql
pg\u dump
pg\u restore
这样的二进制文件。我有可能将它与
v10.0
混为一谈,只需安装两个版本,然后在
v9.6
中运行服务器,二进制文件将位于
v10.0
上。但是我现在想把所有东西都放在9.6版上。我怎样才能做到这一点

  • 安装postgresql的两个版本,当前
    brew安装postgresql
    和旧版
    brew安装postgresql@9.6
  • 之后卸载这两个
  • /usr/local/Homebrew/Library/Taps/Homebrew/Homebrew core/Formula/
    中,您应该拥有两个版本的postgresql的公式文件,
    postgresql@9.6.rb
    postgresql.rb
  • 打开两个文件进行编辑。从
    postgresql@9.6.rb
    并用它们覆盖文件
    postgresql.rb中相应的
  • 删除文件夹
    /usr/local/var/postgres
    (只是为了清除以前安装的所有剩余内容)
  • 现在,使用常规命令
    brew install postgresql
    再次安装postgresql。9.6版应通过编辑的公式文件
    postgresql.rm
    识别,并作为最新版本安装
  • 最后一步,您可以立即锁定您的postgresql版本
    brew锁定postgresql
  • 通过此过程,您已经安装了postgresql 9.6和可工作的CLI命令

    版本化公式通常仅为keg,这实际上意味着它们没有符号链接到
    /usr/local
    。所以你有它们,只是不能自动访问。Homebrew应该在安装后注意事项备忘录(包括其他手动设置选项)中告诉您这一点。根据您的具体情况,以下其中一项应起作用:

  • 手动将桶二进制文件添加到
    PATH
    变量中,例如
    export PATH=“/usr/local/opt/postgresql@9.6/bin:$PATH“
  • 使用
    brew链接强制创建符号链接postresql@9.6--强制力
  • 如果已安装/需要安装多个版本,请使用
    brew开关

  • 希望有帮助。

    我不熟悉自制软件,但您可以随时从源代码安装任意版本。编译postgres非常简单。我知道,但我更喜欢使用包管理器。是的,没问题,我想指出,如果你没有其他选择,postgres尤其容易编译。为什么不卸载not wanted ver?。正如我所说,二进制文件丢失了。看来这些变化会被自制软件隐藏起来。