MySQL数据库单向同步问题(Mina 逻辑实现)

  • Post author:
  • Post category:mysql


时间戳法: (用时间作比较)

用过MINA的人都知道,MINA是一个基于网络的异步通信的框架,它可以实现两台机器的信息的交互,不仅可以使用java通信,还可以应用于网页的信息交互。

不过在这里讲的是用——MINA  实现两个数据库的数据同步。


准备工作:

MINA  实现数据库同步  需要借助    JDBC 和 JSON 数据格式处理的jar包, 这里编解码器就不用说了,都是mina必备的内容。我这里用的是


累积协议编解码器



直接逻辑:


1. 需要了解一下mysql 中的一个类型为 TimeStamp 的字段,这个字段你可以手动新建一下,验证一下它的功能特点,简单来说: 它是一个可以记录 ——数据库创建一条记录或者更新一条  ——的时间,时间格式大概为“YYYY-MM-DD  HH-MM-SS”.


2. 我喜欢创建两个字段,一个记录更新的时间,一个记录数据插入的时间,这样我可以分别查找,然后分别进行操作。


3. 根据你想要同步的时间,定义你想什么时候,同步哪一个时间段的数据。(定时执行  Timer类了解一下)


4. 两个时间字段,可以大概解决数据库对数据的    更新 和 插入 的SQL操作。


5. 通过  传输数据库表的 主键,我们来找到两个数据库相同的表中需要删除的记录,假如  两个数据库的主键 有所不同,那么获取到 主键的插入时间,如果插入时间不包括在你需要执行同步时间,那么说明这条记录不是该时间段插入的,引起的不同只能是另一个表删除了,那么删除当前表内的这个数据。


以上,实现了数据库的  增、删、改、查 的基本操作,与逻辑实现。     不用谢,不用谢!!!



版权声明:本文为LOVE_HopeOne原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。