PostgreSQL:import/restore Windows 上的数据库转储(pg_dump 版本 9.6.5)
PostgreSQL: import/restore database dump (pg_dump version 9.6.5) on Windows
我是新手,我有一个 .sql 类型的 postgresql 大型转储,我想导入它。我在 Windows 10 上,但未能找到解决方案。
我尝试使用 pgAdmin3 进行恢复,但在恢复时不显示 .sql 文件。我也发现了一些命令并尝试了它们,但似乎没有任何效果。
我还尝试在 IntelliJ DataGrid 中加载数据源,但在加载设置期间它没有显示正确的驱动程序。
有人可以帮忙吗?
首先,确定转储是使用 pg_dumpall
还是 pg_dump
创建的。
来自 pg_dumpall
的转储以:
开头
--
-- PostgreSQL database cluster dump
--
如果转储是使用 pg_dump
创建的,请查明是否使用了 -C
选项。
如果是,转储将包含带有 CREATE DATABASE
语句的行。
要恢复,请使用 DOS 框中的 psql
。我假设 psql
在你的路径上。
来自 pg_dumpall
或 pg_dump -C
的转储已使用
恢复
psql -U postgres -d postgres -f dumpfile.sql
没有 -C
的 pg_dump
的转储被恢复
psql -U postgres -d mydatabase -f dumpfile.sql
其中 mydatabase
应替换为转储应还原到的目标数据库的名称。
我是新手,我有一个 .sql 类型的 postgresql 大型转储,我想导入它。我在 Windows 10 上,但未能找到解决方案。
我尝试使用 pgAdmin3 进行恢复,但在恢复时不显示 .sql 文件。我也发现了一些命令并尝试了它们,但似乎没有任何效果。 我还尝试在 IntelliJ DataGrid 中加载数据源,但在加载设置期间它没有显示正确的驱动程序。
有人可以帮忙吗?
首先,确定转储是使用 pg_dumpall
还是 pg_dump
创建的。
来自 pg_dumpall
的转储以:
--
-- PostgreSQL database cluster dump
--
如果转储是使用 pg_dump
创建的,请查明是否使用了 -C
选项。
如果是,转储将包含带有 CREATE DATABASE
语句的行。
要恢复,请使用 DOS 框中的 psql
。我假设 psql
在你的路径上。
来自 pg_dumpall
或 pg_dump -C
的转储已使用
psql -U postgres -d postgres -f dumpfile.sql
没有 -C
的 pg_dump
的转储被恢复
psql -U postgres -d mydatabase -f dumpfile.sql
其中 mydatabase
应替换为转储应还原到的目标数据库的名称。