问题很简单,但我找不到任何相关文档:
如何将特定表从一个数据库镜像到另一个数据库?
基本思想是拥有两个数据库,它们之间只共享特定的表
任何建议将不胜感激!如果 PostgreSQL 做不到,是否有另一个 RDBMS 可以做到? 提前致谢!
编辑: 我想这样做的原因是使用 django 在两个数据库之间共享“任意”信息,而不会丢失适当的参照完整性。 例如:
假设我们有客户、产品和销售表。我们想 在两家公司之间共享我们的客户和产品基础,但不是我们的 销售量。这可以扩展到任何特定情况(股票 但不是客户,用户而不是权限等)。所以我想 最简单的解决方案是在数据库之间共享特定的表。如果 有更好的方法来解决这个问题,随时分享你的 经验!提前致谢
最佳答案
有几种可能性:
主/主复制(Bucardo),主/从复制(Slony)
使用外部数据包装器 - 您可以从其他数据库访问任何表。 9.2提供comfort FDW read only driver,9.3包含read/write FDW driver
CREATE EXTENSION postgres_fdw ; CREATE SERVER omega FOREIGN DATA WRAPPER postgres_fdw OPTIONS (host 'localhost', dbname 'other_database'); CREATE USER MAPPING FOR pavel SERVER omega; CREATE FOREIGN TABLE oo (a int) SERVER omega; postgres=# EXPLAIN ANALYZE VERBOSE SELECT * FROM oo WHERE a BETWEEN 1 AND 100;
FDW 可能是最简单的数据共享解决方案。
关于postgresql - 镜像 postgreSQL 中的特定表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21138302/