"pg_restore是否适用于zip文件?"

5

我正在尝试从资源中恢复教程数据库:

http://www.postgresqltutorial.com/load-postgresql-sample-database/

因此,在运行这段代码后:

pg_restore -U postgres -d dvdrental /Users/fedotarte/Downloads/dvdrental.zip

我收到了以下信息:

pg_restore:[档案管理器] 输入文件似乎不是有效的归档文件

为了成功恢复数据库,应该怎么做呢?

谢谢您提前!


1
解压它 - 里面有什么?.. tar?dump?压缩的dump?.. - Vao Tsun
1
“下载页面上的引用”(http://www.postgresqltutorial.com/postgresql-sample-database/):“*数据库文件以zip格式(dvdrental.zip)提供,因此您需要将其提取到dvdrental.tar*”。一旦完成此步骤,请按照链接[将示例数据库加载到PostgreSQL数据库服务器中](http://www.postgresqltutorial.com/load-postgresql-sample-database/)进行操作。 - user330315
1
你好,@VaoTsun,这里有.dat文件和restore.sql。 - Artem Fedotov
@ArtemFedotov 请遵循指示。 - Vao Tsun
@VaoTsun,感谢你的帮助,正确答案直接在问题下面。 - Artem Fedotov
@ArtemFedotov 我回答了恢复的正确方式。无论如何,我很高兴你找到了解决方法。 - Vao Tsun
2个回答

6

2
我还需要传递主机和端口,因为我在Docker上运行我的postgres。 pg_restore -h localhost -p 5432 -U postgres -d dvdrental ~/Downloads/dvdrental - Alish Giri

1

按照指示,我解压缩了文件,并找到一个tar文件,在命令行中使用以下命令进行还原:

-bash-4.2$ pg_restore -d dd -F t /tmp/dvdrental.tar

所以你应该使用-F t来指定tar格式。

-bash-4.2$ psql -d dd -c "\dt+"
                          List of relations
 Schema |     Name      | Type  |  Owner   |    Size    | Description
--------+---------------+-------+----------+------------+-------------
 public | actor         | table | postgres | 40 kB      |
 public | address       | table | postgres | 88 kB      |
 public | category      | table | postgres | 8192 bytes |
 public | city          | table | postgres | 64 kB      |
 public | country       | table | postgres | 8192 bytes |
 public | customer      | table | postgres | 96 kB      |
 public | film          | table | postgres | 464 kB     |
 public | film_actor    | table | postgres | 264 kB     |
 public | film_category | table | postgres | 72 kB      |
 public | inventory     | table | postgres | 224 kB     |
 public | language      | table | postgres | 8192 bytes |
 public | payment       | table | postgres | 888 kB     |
 public | rental        | table | postgres | 1224 kB    |
 public | staff         | table | postgres | 16 kB      |
 public | store         | table | postgres | 8192 bytes |
(15 rows)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接