使用 pgAdmin 导出和导入表转储 (.sql)

Posted

技术标签:

【中文标题】使用 pgAdmin 导出和导入表转储 (.sql)【英文标题】:Export and import table dump (.sql) using pgAdmin 【发布时间】:2013-09-11 08:35:10 【问题描述】:

我有 pgAdmin 版本1.16.1

所以,对于导出表 dumm 我这样做:

右键单击表格,然后在菜单中单击backup,然后在Format 中选择Plain 并将文件另存为some_name.sql

然后我删除表格。

好的,现在我需要将表备份some_name.sql 导入数据库。

如何做到这一点?我找不到如何使用 pgAdmin 将表的 .sql 转储导入数据库。

你能帮帮我吗?

【问题讨论】:

如果有人想要整个数据库然后看看Export and Import of PostgresSQL with pgAdmin III 【参考方案1】:
    在 pgAdmin 中,在对象树中选择所需的目标架构 (databases ->your_db_name -> schemas -> your_target_schema) 点击插件/PSQL 控制台(在顶部栏中) 写信\i /path/to/yourfile.sql 按回车

【讨论】:

谢谢,但是...Alternatively, you can open SQL file in query window and simply run it 当我尝试这个时,我收到错误,即在写入的行存在语法错误:COPY my_table (id, name) FROM stdin; ..... 哦,对不起,我没有意识到转储将使用复制而不是插入。然而,第一个选项应该有效。 Windows 示例:如果您在C:\database.backup 有一个PostgreSQL 备份文件,那么您可以使用\i /database.backup 开始导入。 这并不能真正回答问题。什么是目标方案?对象树在哪里?如果你还没有这些怎么办? @TomasGreif 所有关于“我找不到如何使用 pgAdmin 将表的 .sql 转储导入数据库”的问题都重定向到这里,但这并不能真正回答这个问题。【参考方案2】:

另一种方式,您可以在 Windows 上使用 CMD 轻松完成

输入你安装的版本(我的是 11)。

cd C:\Program Files\PostgreSQL\11\bin\

并运行简单查询

psql -U <postgre_username> -d <db_name> < <C:\path\data_dump.sql>

输入密码,然后等待最后的控制台消息。

注意:确保从上述查询中删除 ,除了 db_name 和文件路径之间的

例如:psql -U postgres -d dumb_db &lt; D:\db_dump.sql

【讨论】:

【参考方案3】:

使用 PgAdmin 第1步: 选择架构并右键单击并转到备份..

第 2 步: 提供文件名并单击备份按钮。

第 3 步: 详细信息复制备份文件路径。

第四步:

转到其他架构并右键单击并转到还原。 (见步骤 1)

第 5 步:

在弹出菜单中将上面的文件路径粘贴到文件名类别中,然后单击恢复按钮。

【讨论】:

这对我有用。但是,在单击“...”并将格式更改为“sql”后,我从文件选择器中选择了文件。但它有效。我认为最简单的解决方案。【参考方案4】:

跟随他的脚步。在 pgadmin 中

host-DataBase-Schemas- public (click right) CREATE script- open file -(choose xxx.sql) ,然后点击选项execute query write result to file -export data file ok- 然后点击save.its全部。它对我有用。

注意:可以搜索 pgadmin 上的版本命令脚本 enter image description herede sql 中的错误,例如: http://www.forosdelweb.com/f21/campo-tipo-datetime-postgresql-245389/

【讨论】:

不知道为什么这被否决了。英语不是很好,但可以理解并且有效。【参考方案5】:

点击“工具”列表中的“查询工具”按钮。

然后点击工具栏中的“打开文件”图片按钮。

【讨论】:

你还需要点击 [Execute] 这给了我错误“文件类型不支持”。【参考方案6】:

如果你安装了 Git bash,你可以这样做:

/c/Program\ Files\ \(x86\)/PostgreSQL/9.3/bin/psql -U <pg_role_name> -d <pg_database_name> < <path_to_your>.sql

【讨论】:

以上是关于使用 pgAdmin 导出和导入表转储 (.sql)的主要内容,如果未能解决你的问题,请参考以下文章

pgadmin数据库可以直接导出数据吗?

MySQL导出数据时提示文件损坏

从 pgAdmin4 导出的 csv 文件中保留索引列

编写PL/SQL程序使用数据泵导出导入数据

MySQL数据的导入与导出

mysql 每个表只导出1000条数据