假设目前有四个数据库D1、D2、D3、D4, 想将它们统一集中地备份到一个数据库b中。这些DB可能都不在同一个服务器上。D1、D2、D3、D4等中的若干表, 如产生增、删、改等即立即更新b中的备份。
要求:(1)产生更新后,一分钟内必须更新b中的数据;(2)b的容量可能会比较大, 要考虑其扩容与执行效率。
mysql可以这样做原生方案:5.7版本 使用multi-source replication功能,就相当于搭建了从库。主库压力不大,从库资源还行的话,基本实时。b执行考虑问题,可以打开并行复制,并且降低数据安全性(为了降低写入IO)。容量的话,建议数据盘做成lvm方便扩展。如果数据量更大可以考虑上存储或者额外的硬盘柜
第三方组件方案:自己用程序或者canal解析每台的binlog,然后把相关库的binlog去b库中回演。然后b库可以用mycat中间件等分布式架构,满足容量问题
关于TWT使用指南社区专家合作厂商入驻社区企业招聘投诉建议版权与免责声明联系我们 © 2024talkwithtrend — talk with trend,talk with technologist京ICP备09031017号-30