繁体   English   中英

pg_restore:找不到命令

[英]pg_restore: command not found

我使用Postgresql数据库在Heroku上托管了一个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

有关为什么会发生这种情况的任何想法? 显然问题是我无法恢复下载的备份。

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

听起来你需要正确设置你的PATH。

尝试使用sudo find / -name pg_restore pg_restore在系统中找到正确的pg_restore ,然后将其目录添加到PATH。

最后,你正在做的事情可能是通过一个更简单的heroku pg:pull来实现的,它从你的heroku数据库中获取备份并在一个命令中本地恢复它(但也使用pg_dump / pg_restore,所以那些需要作为好。

暂无
暂无

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

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