PG 恢复功能在本地主机上不起作用

PG Restore function not working on localhost

我正在尝试将备份还原到我的本地主机以查看数据 - 这样我就可以真正确保备份正常工作。我正在使用 Heroku、postgres 和 rails.

我全新安装了应用程序,因此本地主机数据库中没有数据。我运行db:reset,db:migrate。

这是我要用于 pg_restore 的字符串:

 pg_restore --verbose --clean --no-acl --no-owner -h localhost -p 3000 -U ian -d backup_production latest.dump

我收到的错误是:

"connection to database "backup_production"失败:服务器意外关闭了连接"

我以前从来没有这样做过,所以任何帮助将不胜感激。我假设开发是本地主机使用的(而不是测试或生产)?

我不确定我遗漏了什么,但我会回答您的任何问题。

非常感谢。

编辑,。这是一个问题,对于这个数据库字符串,我假设我需要使用所有本地主机信息,因为我使用 heroku capture/download 创建了一个备份。我的假设错了吗?我是否应该使用来自 heroku 凭据的数据库名称和端口等?

事实证明,我不应该添加端口。删除 -p 3000 ,使该命令起作用。

试试这个

在终端中输入 postgre 配置文件

sudo gedit /etc/postgresql/POSTGRE_VERSION/main/pg_hba.conf

然后把你的配置改成这样

# Database administrative login by Unix domain socket
local   all             all                                     trust

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust
# IPv6 local connections:
host    all             all             ::1/128                 trust

重新启动您的 postgre 服务器

sudo /etc/init.d/postgresql restart

这应该是免密码访问的解决方案