当前位置: 首页 > 知识库问答 >
问题:

pg_restore:未找到命令

何骞尧
2023-03-14

我在Heroku上使用Postgresql数据库托管了一个RoR应用程序,并且一直在使用PG备份工具将数据库从我的应用程序备份到本地机器上。由于该应用程序仍在开发中,它从编程的角度帮助我降低了我的同事对数据库所做的更改。几个月来,我一直在成功地使用PG备份进行捕获和恢复,但最近,当我运行此处所示的典型命令时:

$curl -o latest.dump `heroku pgbackups:url --app XXXXX`
$pg_restore --verbose --clean --no-acl --no-owner -h localhost -U XXXXX -d XXXXX_development latest.dump

在curl命令执行后,我遇到此错误:

-bash: pg_restore: command not found

你知道为什么会这样吗?显然,问题是我无法恢复下载的备份。

共有1个答案

柳俊健
2023-03-14

听起来像是本地环境中发生了变化,现在pg_restore,一个与postgres以及pg_dump和psql捆绑在一起的客户端命令工具不可用。

听起来您需要正确设置路径。

试着在系统中找到正确的pg_restore,也许用sudo查找/-namepg_restore,然后将其目录添加到PATH。

最后,您正在做的事情可能可以通过一个更简单的heroku pg:拉来完成,它从heroku数据库中获取备份,并在一个命令中在本地还原(但也使用pg_dump/pg_restore,所以这些也需要可用。

 类似资料:
  • 我是新的Python开发和尝试使用pipenv。我运行命令,它成功运行: 然而,当我在一个新的根项目目录中运行命令时,我收到以下消息:。我怀疑我可能需要修改我的. bashrc,但是我不清楚要向文件中添加什么,或者是否需要修改。

  • 我使用的是节点0.10。35和grunt指挥部运作良好。现在升级到0.12之后。3 grunt命令已停止工作。 OS:Mac OSX 10.10.1节点:0.12.3 npm:2.9.1 grunt:0.4.5 我认为可能有问题的节点安装所以我清理安装了3-4次 我试着用- node-v0.12.3.pkg 节点版本管理器(nvm) 许多此类问题的解决方案建议使用 然后使用安装本地节点模块。 我遵

  • 我试着做一个文件: 但是得到了错误: Android:命令未找到 我试图设置Android SDK的路径,但没有帮助: 有没有可能解决这个问题? UPD:我正在使用这个软件中的Git Shell:http://git-scm.com/download/win

  • 我正在学习laravel并遵循这个教程, 但当我尝试安装npm时,它说

  • 我的discord bot能够运行其on_消息代码,但当我尝试运行命令%ping时,它会出错并显示“discord.ext.commands.errors.CommandNotFound:未找到命令”ping“。 我已经导入了所有需要的模块,在底部写了client.run(令牌),并定义了我的令牌和客户端对象,我认为没有必要包含这些代码行。 我已经包括等待client.process_comman

  • 我重新安装了Ubuntu,在安装了Yi2等之后,我似乎无法再运行codecept了。 我用的是Yii2。我需要composer.json中最新的codecept版本,该版本运行良好。但我似乎找不到让codeception再次运行的方法。 我已经浏览了所有的指南,但没有一个指南有任何其他的东西,只是为了满足composer的要求或将其添加到composer.json中。我确实注意到,当我想将code