【发布时间】:2021-06-04 20:06:43
【问题描述】:
我有一个tar 格式的备份文件,获取此备份没有问题。但是,当尝试使用以下脚本恢复此备份时,我遇到 "pg_restore: error: connection to database "db-dev" failed: FATAL: password authentication failed for user "db-dev-user"" em> 输入密码后出错。
pg_restore -v -h 127.0.0.1 -p 5432 -d db-dev -U db-dev-user < C:\dB\db-dev.tar
我正在尝试将此备份还原到 Docker 容器,在该容器中我可以轻松地创建一个具有相同名称 (db-dev) 的空数据库。我也在使用 Windows 10。那么,我该如何解决这个问题?请问这个问题和Docker有关吗?
【问题讨论】:
-
不,这是 PostgreSQL 的问题。查看 PostgreSQL 日志以确保它确实是密码错误。然后使用正确的密码。
-
是的,但错误消息有时可能是通用的。第一步,我想确定是否存在密码问题。出于这个原因,您能回答以下问题吗? >>>
-
我应该使用我恢复数据库的服务器中的一个用户吗?还是用户或备份数据库?
-
在
pg_restore命令中,我使用db-dev-user,即备份数据库的用户。但是,它应该是恢复备份的服务器的用户吗? -
啊,我明白了。是的,您必须使用
pg_restore的-U选项从目标数据库中指定一个用户,并且您需要输入该用户的密码。
标签: postgresql docker postgresql-9.5 pg-dump pg-restore