0

我需要恢复一个 Postgresql 转储文件以从中获取一些数据(注意以前从未使用过 Postgresql)

我尝试使用以下命令行(填写相关详细信息)

psql -U {user-name} -d {desintation_db}-f {dumpfilename.sql}

最初它看起来像是在工作,大量的掉落和改变闪现。但随后它结束了,数据库中没有任何内容。查看转储文件,它看起来也没有真正结束。

我也尝试过在 SQL 编辑器中打开转储文件并在我的数据库上执行它,但是进入文件的方式很短,它在这一行出现“语法错误在或接近“1”时出错

--
-- Data for Name: admin_groups; Type: TABLE DATA; Schema: public; Owner: postgres
--

COPY admin_groups (ref, title, is_locked, created, updated) FROM stdin;
1   Default t   2011-05-25 15:13:46.474025  2011-05-25 15:13:46.474025
2   Root    t   2011-05-25 15:13:54.137801  2011-05-25 15:13:54.137801
\.

有任何想法吗?

4

2 回答 2

2

这最终对我有用

psql -f {dump file name} {db name}
于 2013-03-01T10:36:39.883 回答
2

要在 Postgresql 中恢复数据库转储文件,请使用此 sql 命令

pg_restore -p 5433 -U postgres -d databasename  -v "/var/tmp/dumpfilename.dump"

对于 Postgresql 中的转储数据库,请使用此 SQL 命令

pg_dump -p 5433 -U postgres -F c -b -v -f "/var/tmp/dumpfilename.dump" databasename

这里的端口号(5433)基于安装我们使用的端口号。

于 2014-09-30T06:11:02.370 回答