使用 pg_dump 的选择性模式转储
Posted
技术标签:
【中文标题】使用 pg_dump 的选择性模式转储【英文标题】:Selective Schema dump using pg_dump 【发布时间】:2021-02-23 02:35:37 【问题描述】:我是 Postgres 的新手,我的任务是备份一个 PG 数据库并将其恢复到另一个,我的源 Postgres 数据库有 150 个模式,但我的任务是选择性地仅从 150 转储 75 并将 75 恢复到新的数据库服务器中,我打算使用 pg_dump 来做同样的事情。我需要从列表中排除的 75 具有相似的名称,都以名称 PatSchema_x 开头,x 可以是 1,2,3....N。有没有我可以将“PatSchema”之类的模式名称模式传递给 pg_dump 以便它排除所有这些模式并只转储剩余的模式。请告诉我。
谢谢
【问题讨论】:
【参考方案1】:使用-N
选项,如the documentation 描述:
-N <em><strong>pattern</strong></em>
--exclude-schema=<em><strong>pattern</strong></em>
不要转储任何匹配
<em><strong>pattern</strong></em>
的模式。该模式的解释规则与<em><strong>-n</strong></em>
相同。
所以试试
-N "PatSchema_*"
【讨论】:
以上是关于使用 pg_dump 的选择性模式转储的主要内容,如果未能解决你的问题,请参考以下文章
Postgres pg_dump 每次都以不同的顺序转储数据库
使用 pg_dump 将 Postgres 从 Windows 迁移到 Linux 时如何选择正确的排序规则来创建数据库?