数据库数据同步策略一

一、场景

       近来遇到一个MySQL同步数据的问题,需要在测试环境同步60多万的数据到生产环境,要求生产的数据不受影响。生产环境存在数据时,需保留生产的数据或者同步中测试环境存在的数据与生产的数据整合为一条唯一的数据。涉及两张表:一张表有一个字段可以确定唯一一条数据,另一张表需两个字段确定唯一一条数据。

二、解决方案

   策略:

      1、将涉及的表及表数据特点告诉DBA,交给DBA处理。

      2、基于临时表操作,结合代码处理。

  思路:

    第一种策略,从我的思路,可以写个存储过程进行同步,但DBA说涉及业务数据操作,不参与数据同步。

    第二种策略:

         1)、在测试环境创建两张临时表A、B,将60多万的数据同步到临时表A、B;

          2)、在生产环境,基于测试环境的表结构,创建两张临时表C、D;

          3)、从测试环境的临时表A、B同步生产环境的临时表C、D;

          4)、在生产环境通过域名或者IP执行接口(涉及插入、更新操作),将临时表C、D的数据同步到生产环境的正式表。

          5)、半个小时左右,六十多万的同步,同步完毕。

    工具:

      Navicat:打开Navicat,点击工具,选择数据同步,进行临时表的数据同步操作。

     Postman: 参与接口操作

注:本文只阐述同步数据的一种思路,若你有更好的策略,欢迎指点迷津,谢谢

猜你喜欢

转载自blog.csdn.net/baidu_28068985/article/details/108279721