一致地在两个PostgreSQL数据库之间同步表

一致地在两个PostgreSQL数据库之间同步表,postgresql,replication,Postgresql,Replication,我有两个数据库:博士后(新);tnpm(旧)。目前,我需要将数据从[tnpm]复制到[postgres]。我可以使用以下方式复制它: INSERT INTO ip_cpu_mn(datetime, resource_name, cpu_utilization) SELECT cpu_mn.datetime,resource_name, cpu_utilization FROM dblink('host=10.0.32.175 user=postgres password=po

我有两个数据库:博士后(新);tnpm(旧)。目前,我需要将数据从[tnpm]复制到[postgres]。我可以使用以下方式复制它:

   INSERT INTO ip_cpu_mn(datetime, resource_name, cpu_utilization)

   SELECT cpu_mn.datetime,resource_name, cpu_utilization
   FROM dblink('host=10.0.32.175 user=postgres password=postgres dbname=TNPM_EXT',
 'SELECT datetime, resource_name, cpu_utilization
   FROM ext_ip.cpu_mn WHERE datetime =(SELECT MAX (datetime) - interval ''10 minutes'' as maxdate FROM ext_ip.cpu_mn)')

AS cpu_mn( datetime timestamp without time zone,
  resource_name character varying(150),
  cpu_utilization numeric(6,2))
奇怪的是,当我开始验证这些数据库之间的数据时,新数据库中的数据不一致,似乎丢失了。复制进程正在使用crontab 5分钟运行。如何避免此情况


不要尝试自己复制,这是一个很难解决的问题。PostgreSQL有几个内置的。一切都会比你现在做的更好


您要做的是创建一个“热备用”,在这里数据库的副本可以用于只读查询。还有。

不要尝试自制。使用像Londiste这样成熟的工具,你真的需要复制数据吗?不能在新数据库中使用外来数据包装器直接访问旧数据库中的表吗?