【问题标题】:Replicate selected postgresql tables between two servers?在两台服务器之间复制选定的 postgresql 表?
【发布时间】:2020-08-14 13:10:21
【问题描述】:

将单个数据库表从主 postgresql 服务器复制到从属计算机的最佳方法是什么?它可以使用 cron+rsync 或任何可能内置的 postgresql 或某种 OSS 工具来完成,但到目前为止,postgres 文档似乎并未涵盖 如何 进行表复制。我无法进行完整的数据库复制,因为某些表连接了许可证-> IP 内容,并且我无法在从属计算机上复制这些内容。我不需要即时复制,每小时也可以接受。

如果我只需要 rsync,有人可以帮助确定 /var/lib/pgsql 目录中的哪些文件需要同步,或者我如何知道它们是哪些表。

【问题讨论】:

    标签: postgresql replication rsync failover


    【解决方案1】:

    您可能想试试 Bucardo,它是一个开源软件,可以在表之间同步行,即使它们位于远程位置。这是一个非常简单的软件,它也能够创建单向同步关系。

    查看http://bucardo.org/wiki/Bucardo

    【讨论】:

      【解决方案2】:

      从 Postgres 10 开始,逻辑复制被内置到 Postgres 中!这通常是比外部解决方案更好的解决方案。 The Postgres docs 很棒而且很容易理解。这很容易。请参阅quick setup docs,本质上归结为运行此:

      -- On publisher DB
      CREATE PUBLICATION mypub FOR TABLE users, departments;
      
      -- On subscriber DB
      CREATE SUBSCRIPTION mysub CONNECTION 'dbname=foo host=bar user=repuser' PUBLICATION mypub;
      

      【讨论】:

      • (在这个老问题上发帖,因为它是 Google 的顶级搜索结果)
      【解决方案3】:

      您无法通过复制数据目录中的单个表文件来获得任何有用的信息。如果您想复制选定的表,有很多不错的选择。

      http://wiki.postgresql.org/wiki/Replication,_Clustering,_and_Connection_Pooling

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-08-20
        • 2023-03-05
        • 2017-11-18
        • 1970-01-01
        • 1970-01-01
        • 2016-07-01
        • 2018-02-11
        相关资源
        最近更新 更多