通用型的同步软件,支持SQL、NoSQL各种数据库,用于系统对接、数据备份、异地传输等。


文章目录

  • 通用型的同步软件,支持SQL、NoSQL各种数据库,用于系统对接、数据备份、异地传输等。
  • 一、功能特点
  • 非侵入式,独立运行
  • 支持各种数据库
  • 支持异构同步
  • 支持异地同步、跨平台同步
  • 支持增量同步
  • 数据过滤与处理
  • 秒级实时同步
  • 异常提醒通知
  • 二、工作原理
  • 三、运行环境
  • 四、数据同步
  • 五、参考资料



一、功能特点

非侵入式,独立运行

  • 非侵入式,无需改动数据库,无需注入脚本或触发器,不影响现有系统运行。只需连接上即可同步,独立运行,简单易用。

支持各种数据库

  • 支持Oracle、MySQL、SQL Server、Access、PostgreSQL、MongoDB、DB2、ES、SQLite、Firebird…各种数据库都可同步。

支持异构同步

  • 既支持同构数据库之间的同步,如Access到Access,MySQL到MySQL,又支持异构数据库同步,如Access到SQLServer、SQLServer到MySQL、MySQL到Oracle等。

支持异地同步、跨平台同步

  • 支持异地同步,例如云端、本地之间同步;既可同构平台同步,如Windows到Windows,Linux到Linux,又可跨平台同步,如Windows到Linux,Linux到Unix等。

支持增量同步

  • 既支持简单的复制式同步(Copy),又支持增量同步。软件能快速扫描数据库,找出相互间的差异(即增量),只对增量进行同步。

数据过滤与处理

  • 参与同步的范围,可以是整个库,也可以是个别表,或者表中部分行列,可任意过滤;可设置同步后SQL更新语句,实现额外数据处理。

秒级实时同步

  • 重复同步的时间间隔最短可设置为1秒,源数据库发生变更后,1秒后就同步过去,几乎等同于实时同步。

异常提醒通知

  • 软件具有提醒通知功能,每当任务执行出现异常,可自动Email通知当事人,让您及时了解异常情况,及时排错。

二、工作原理

db2 hadr数据同步原理 db2数据库同步工具_SqlServer

  • DBSync工作原理并不复杂,它不依靠数据库日志、触发器、脚本等内部过程,只读取双方数据,采用独有高效算法,快速扫描比较,找出增量并写入目标库,从而使双方保持一致。
  • DBSync采用驱动程序连接数据库,任何可用OLEDB或ODBC连接的数据均可同步,因此它支持各种数据库,包括关系型、NoSQL型、数据文件等。
  • 使用时,先设置数据库连接字串,使得DBSync能连接双方数据库,再指定双方表与字段的对应关系,再设置同步方式(如增量同步)、同步频度(如每分钟一次),即可开始同步。
  • 这种不介入数据库内部、按表同步的特征,使得DBSync适用范围广、灵活性强、可靠性高,不会遗漏数据,且简单易用。
  • 本软件是供技术人员使用的,要同步数据,你需要知道双方数据库的基本情况。比如,要同步客户资料,你需要知道其存储位置与结构:在源数据库里,它是哪个表,在目标数据库里,它又是哪个表,两表的字段是如何对应的…等等。另外,对于源数据库,你需要有读权限;对于目标数据库,你需要有写权限。写入时,DBSync仍然遵守目标数据库的各种约束限制,不会绕过或破坏该限制,确保数据安全。
  • 下载地址:DBSync

三、运行环境

Windows系统的电脑均可运行,可以运行在源数据库端,也可以运行在目标数据库端,还可以运行在第三方电脑上。任选一台电脑,只要能连接数据库即可。绿色软件,免安装,下载后解压即可运行。

db2 hadr数据同步原理 db2数据库同步工具_MySQL_02

四、数据同步

  1. 右上角新建,下面我以SqlServer为例
  2. db2 hadr数据同步原理 db2数据库同步工具_数据同步_03

  3. 连接字符串,可参考下面的参考资料。
  4. 第二步,选择对应同步的表
  5. db2 hadr数据同步原理 db2数据库同步工具_db2 hadr数据同步原理_04

  6. 如果表没有设置主键,可以选择主键,如果有主键会自动匹配
  7. db2 hadr数据同步原理 db2数据库同步工具_数据库_05

  8. 注意:没有主键的无法增量同步
  9. db2 hadr数据同步原理 db2数据库同步工具_数据同步_06

  10. 没有主键列,全部同步即可
  11. db2 hadr数据同步原理 db2数据库同步工具_SqlServer_07

  12. 最后直接点击同步就可以了。

五、参考资料

本软件采用 OleDbConnection (.NET) 连接数据库,连接字符串需填写OLE DB 的形式。OLE DB是一种广泛采用的数据库访问接口,大部分数据库都支持该接口,个别不支持的可采取OLE DB Provider for ODBC进行连接,因此本软件支持各种数据源,包括常规数据库、Excel文件、文本文件等。以下是各种数据源的连接字符串格式,供参考。

● Access 连接字符串
 标准连接:
 Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\mydb.mdb;Persist Security Info=False;带密码的连接:
 Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\mydb.mdb;Persist Security Info=False; ;Jet OLEDB:Database Password=123456;● SQL Server 2000连接字符串
 带密码的连接:
 Provider=sqloledb;Server=(local);Database=Northwind;Uid=sa;Pwd=123456;不带密码的信任连接:
 Provider=sqloledb;Server=(local);Database=Northwind;Integrated Security=SSPI;● SQL Server 2005连接字符串
 带密码的连接:
 Provider=SQLNCLI;Server=(local);Database=Northwind;Uid=sa;Pwd=123456;不带密码的信任连接:
 Provider=SQLNCLI;Server=(local);Database=Northwind;Integrated Security=SSPI;● SQL Server 2008连接字符串
 带密码的连接:
 Provider=SQLNCLI10;Server=(local);Database=Northwind;Uid=sa;Pwd=123456;不带密码的信任连接:
 Provider=SQLNCLI10;Server=(local);Database=Northwind;Integrated Security=SSPI;● SQL Server 2012\2014\2016连接字符串
 带密码的连接:
 Provider=SQLNCLI11;Server=(local);Database=Northwind;Uid=sa;Pwd=123456;不带密码的信任连接:
 Provider=SQLNCLI11;Server=(local);Database=Northwind;Integrated Security=SSPI;● Oracle连接字符串
 微软提供的OLE DB连接:
 Provider=msdaora;Data Source=127.0.0.1;User Id=sa;Password=123456;Oracle提供的OLE DB连接:
 Provider= OraOLEDB.Oracle; Data Source=127.0.0.1;User Id=sa;Password=123456;Oracle提供的OLE DB信任连接:
 Provider= OraOLEDB.Oracle;Data Source= Northwind; OSAuthent=1;● MySQL连接字符串
 Provider=MySQLProv;Data Source=127.0.0.1;User Id=sa;Password=123456;● DB2连接字符串
 Provider=DB2OLEDB;Network Transport Library=TCPIP;Network Address=127.0.0.1;Initial Catalog=MyCtlg;Package Collection=MyPkgCol;Default Schema=Schema;User ID=sa;Password=123456;● Excel连接字符串
 Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\myExcel.xls;Extended Properties=“Excel 8.0;HDR=YES”;


说明:
A、用数据库接口访问Excel文件,是将Excel文件当作数据库,Excel中的Sheet当作数据表来访问的。
B、连接字符串中的HDR=YES,用于指定第一行为标题行。