问题描述
我已经提取了一个 pg_dump,但我不是 100% 确定我应该命名我的输出文件。这是我的命令:
pg_dump --dbname=db --format=t --host=foo --username=db --password=bar --dbname=db --exclude-table=store > db_backup
这得到了我的一个不错的文件,120megs,正如我所期望的。当我尝试在 PG 管理员中执行 pg_restore 时,我得到:
pg_restore: error: input file does not appear to be a valid archive
pgdmin 正在运行的命令是这样的:
pg_restore.exe --host "localhost" --port "5432" --username "foo" --no-password --role "yanis" --dbname "air" --verbose
解决方法
请确保在 pgadmin 恢复窗口中您正在传递包括文件名的完整路径。 Pgdmin 将创建一个类似这样的命令:
pg_restore.exe --host "localhost" --port "5432" --username "foo" --no-password --role "yanis" --dbname "air" --verbose "C:/db_backup"
另外,请确保 pgadmin 可以读取 db_backup 文件,并且文件的权限不受限制。