postgresql replication 数据库异地镜像有什么比较好的做法? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
clino
V2EX    问与答

postgresql replication 数据库异地镜像有什么比较好的做法?

  •  
  •   clino 2015-11-04 14:07:45 +08:00 3068 次点击
    这是一个创建于 3629 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我的需求是最近因为网络不稳定,连接异地的 postgresql 老是出问题,现在感觉不得不做一下相关的数据库镜像,这样本地读至少不会被网络问题困扰,我只需要一个只读的 slave 就行了,对两边同步的一致性要求也没那么高

    我之前大致看了一下 https://wiki.postgresql.org/wiki/Replication,_Clustering,_and_Connection_Pooling ,感觉有好多选择,然后里面提到的 http://momjian.us/main/writings/pgsql/replication.pdf 这里也有很多比较,有点看晕了

    还看了一篇: https://www.digitalocean.com/community/tutorials/how-to-set-up-master-slave-replication-on-postgresql-on-an-ubuntu-12-04-vps 感觉我的场合用这个是不是就可以了? 有经验的达人给些评论哈,谢谢!
    5 条回复    2015-11-05 14:54:01 +08:00
    wd
        1
    wd  
       2015-11-04 14:42:28 +08:00   1
    pg 的 slave 是只读的,这个没问题么?
    那你可选的方案两种。
    1 主从 db 不直接连接,主库把 xlog 归档到从库所在机器。这个归档不成功一般不会影响主库。主要是配置 archive_command.
    2 主从 db 通过 streaming 连接,这个需要 9.x 以上版本。

    当然如果为了保险期间,可以两种配置。
    clino
        2
    clino  
    OP
       2015-11-04 14:55:58 +08:00
    @wd 我现在用的是 9.1 所以可以用这个 streaming 的方式哈? 就是我贴的最后这个连接说的这个方式,应该是靠谱的哈
    wd
        3
    wd  
       2015-11-05 13:54:33 +08:00
    @clino streaming 方式可能会有问题的时候是,主从如果差异非常大的时候,可能会断开主从,这个时候是没有办法通过他们之间的这种连接继续同步数据的,需要通过 xlog 方式让主从差异缩小,然后才能继续 streaming 。
    clino
        4
    clino  
    OP
       2015-11-05 13:58:37 +08:00
    @wd 那断开以后的处理需要手动去做吗? 感觉如果有这种断开的异常岂不是很麻烦...
    如果是这样的话,感觉 streaming 这个做得不够好啊
    wd
        5
    wd  
       2015-11-05 14:54:01 +08:00   2
    @clino
    你可以看看 omnipitr ,然后 streaming + xlog 同时做,有 streaming 走 streaming ,失败了走 xlog 。
    另外,刚看到 pg 的文档说有个 replication slot 你可以看看。 http://www.postgresql.org/docs/9.4/static/warm-standby.html#STREAMING-REPLICATION-SLOTS
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2178 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 00:28 PVG 08:28 LAX 17:28 JFK 20:28
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86