Postgresql -bash:psql:找不到命令

新手上路,请多包涵

我已经安装了 PostgreSQL,它工作正常。但是,当我去恢复备份时,我收到了错误 -bash: psql: command not found

  [root@server1 ~]# su postgres
 [postgres@server1 root]$ psql -f all.sql
 bash: psql: command not found
 [postgres@server1 root]$

我做错了什么?

原文由 Peter 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 4.8k
2 个回答

也许 psql 不在 postgres 用户的 PATH 中。使用 locate 命令查找 psql 所在的位置,并确保它的路径位于 postgres 用户的 PATH 中。

原文由 marto 发布,翻译遵循 CC BY-SA 3.0 许可协议

export PATH=/usr/pgsql-9.2/bin:$PATH

程序可执行文件 psql 在目录 /usr/pgsql-9.2/bin 中,并且该目录默认不包含在路径中,所以我们必须告诉我们的 shell(终端)程序在哪里找到 psql 。安装大多数软件包时,会将它们添加到现有路径,例如 /usr/local/bin ,但不会添加到此程序。

因此,如果我们不想在每次执行程序时都输入程序的完整路径,我们必须将程序的路径添加到 shell PATH 变量中。

此行通常应添加到 shell 启动脚本中,对于 bash shell,该脚本将位于文件 ~/.bashrc 中。

原文由 Pavel 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题