本地未找到psql命令

28
我正在遵循这里的说明。当我尝试运行$ heroku pg:psql$ heroku pg:psql HEROKU POSTGRESQL_BROWN时,我收到以下错误消息:

! 找不到本地 psql 命令! 要安装 psql,请参阅local-postgresql

我在它给我的链接上找不到有用的信息(它只是链接到我已经在使用的说明,但在页面下方),而且我也找不到其他地方出现这个错误。
如果我错过了你需要知道的任何事情,请告诉我。我对所有这些都很新,并在自学中前进。

Heroku pg:info 命令会输出你的数据库信息吗? - Robert H
是的,它确实有用。那个信息会帮助吗? - TheMarron
12个回答

30

即使我在本地安装了Postgres,仍然出现相同的错误。 但在看到这个之后, 我发现 "pqsl" 不在 PATH 中,所以我接着执行了以下操作:

PATH=%PATH%;C:\Program Files\PostgreSQL\9.2\bin

这对我起了作用


4
注意:这对我也起作用,但我必须关闭并重新打开PowerShell窗口,然后键入$Env:Path以查看路径并确认它是否存在。然后我在提示符(在我的node-js-getting-started文件夹内)中键入heroku pg:psql,它就可以工作了! - CodeDreamer68
虽然这是一个老问题,但由于它仍未修补,因此值得添加:PSQL解析路径中仍存在错误:http://www.postgresql.org/message-id/E1VPJrB-00071y-RR@wrigleys.postgresql.org - Linef4ult

6
我已经自己解决了这个问题。运行heroku pg:info时,它显示版本号为9.1.8,而我本地使用的是9.2。安装9.1.8并确保路径指向适当的文件夹解决了这个问题。

不错,它救了我的一天。我的是9.6对10。 - Hanny Setiawan
很好,这帮助我解决了问题,我原来写的是9.5,应该是10.5。 - Csa77

4

在更改路径后,请确保重新启动终端!


2

设置PATH。要查找您的psql脚本的PATH(在mac上),请从Applications / Postgres安装中打开sql shell脚本以查看。这将为您提供有关其安装位置的提示。打开窗口后,我发现它位于此处:/Library/PostgreSQL/8.4/scripts/runpsql.sh

然后,我通过在终端窗口中键入以下内容来设置PATH变量:

$ PATH="/Library/PostgreSQL/8.4/bin:$PATH"

(根据您的PostgreSQL安装位置,首先找到bin路径,另一个例子:/usr/local/Cellar/postgresql@9.6/9.6.8/bin)

或者......

您还可以通过直接从postgres安装文件夹打开shell来连接shell。然后输入凭据。如果您不知道凭据,请按如下方式查找:

$ heroku pg:info === HEROKU_POSTGRESQL_RED_URL (DATABASE_URL)

$ heroku pg:credentials HEROKU_POSTGRESQL_RED_URL


2
最初的回答对我来说行不通,我的系统无法通过管理员访问使用cmd添加路径(不确定原因)。
所以,请按照以下步骤操作:Windows键 > 环境变量 > 系统变量,并添加最后一行(您的版本可能在路径上有所不同)。 enter image description here

1

1

请确保已安装工具包,因为psql默认已安装。

但是,您还需要确保已安装了本地的PostgreSQL副本;如果没有安装,工具包将无法找到本机的psql客户端。

假设您已经安装了本地的PostgreSQL,请确保可以直接从命令行执行psql(即确保路径设置正确)。如果该命令未执行,请检查您的PATH环境变量;如果可以执行,请尝试使用Heroku控制面板提供的PSQL连接字符串连接。如果可以连接,请重新安装工具包;如果无法连接,请预留另一个开发数据库并再次尝试。

如果仍有问题,建议在验证状态页面(此处)上没有列出API问题后,请联系Heroku支持以获得帮助。


1
我通过添加一个没有空格的路径元素来消除Windows上这个令人讨厌的消息,即:

C:\Progra~1\PostgreSQL\9.4\data

替换为

“C:\Program Files\PostgreSQL\9.4\data”


1
这种类型的错误通常出现在Windows环境中,因为如果您在安装Postgresql之后不更新PATH,则heroku pg:psql命令将无法工作。
因此,您需要更新PATH环境变量以添加您的Postgres安装的bin目录。该目录看起来像这样:C:\Program Files\PostgreSQL\<VERSION>\bin。有关更多信息,请访问Heroku本地设置网站:

heroku-postgresql: 本地设置


0

我在Windows上找到的唯一解决方案:

  1. 进入高级系统设置
  2. 进入环境变量
  3. 选择Path变量并点击编辑
  4. 添加一行,输入您的bin目录路径(C:\Program Files\PostgreSQL<version>\bin),然后点击确定
  5. 重新启动终端
  6. 输入您的psql命令(heroku pg:psql)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接