如何备份一些带有数据的表和一些表只有模式 PostgreSQL

Posted

技术标签:

【中文标题】如何备份一些带有数据的表和一些表只有模式 PostgreSQL【英文标题】:How to backup some tables with data and some tables only schema PostgreSQL 【发布时间】:2011-07-28 13:59:00 【问题描述】:

我想转储一个数据库。

我有三张桌子:

表1 表2 表3

从 table1 我想要架构和数据。

从 table2 和 table3 我只想要架构。

我该怎么做?

【问题讨论】:

“不起作用”不是有效的 PostgreSQL 错误消息。 我使用参数“--inserts”解决了“从标准输入复制”的问题 【参考方案1】:

仅从几个表中获取数据:

pg_dump myDatabase --inserts -a -t table1 -t table2 > backup.sql;

pg_dump myDatabase --inserts -a -t seq1 -t seq2 > backupSequences.sql;

参数说明:

-a, --data-only 只转储数据,不转储架构

-t, --table=TABLE 只转储指定的表

--将转储数据作为 INSERT 命令插入,而不是 复制

这就是我想要的:)

谢谢大家!

【讨论】:

请注意,如果您碰巧正在运行 pg -t 参数。您可以使用多个转储命令解决此问题,但解决重建的约束依赖关系是一个问题。【参考方案2】:

使用pg_dump,它同时具有仅模式和模式+数据输出。

【讨论】:

以上是关于如何备份一些带有数据的表和一些表只有模式 PostgreSQL的主要内容,如果未能解决你的问题,请参考以下文章

H2 JdbcSQLException:“找不到表”,带有驼峰表和实体名称

如何使用Jquery数据表重新初始化表控制器列表

SQL Server如何查找表名或列名中包含空格的表和列

SSMS数据的导入和导出不能保持视图结构。

如何将ACCESS的表和查询创建成动态的WEB?

mysql删掉的表可以恢复吗