DB_HELPER
SQLiteDBSync
产品说明
DB_HELPER
2016/2/27
1
DB_HELPER
SQLite DBSync 产品说明
产品主页:http://www.db-helper.com/page7
博客:http://blog.sina.com.cn/u/3210098973
QQ:1642058171
E-mail:db_helper@sina.cn
2
DB_HELPER
目录
第 1 章 系统概述................................................................................................................. 6
§1.1
§1.2
§1.3
系统结构................................................................................................................. 7
产品特色................................................................................................................. 8
功能介绍................................................................................................................. 9
§1.3.1 增量同步............................................................................................................. 9
§1.3.2 多种同步方式..................................................................................................... 9
§1.3.3 同步管理............................................................................................................. 9
§1.3.4 同步安全保障................................................................................................... 10
§1.3.5 同步过滤........................................................................................................... 10
§1.3.6 并发高效的 WEB 同步服务..............................................................................10
§1.3.7 客户端同步工具............................................................................................... 11
§1.3.8 客户端同步 API................................................................................................11
§1.3.9 同步服务器管理工具....................................................................................... 11
第 2 章 安装部署............................................................................................................... 12
§2.1
§2.2
§2.3
§2.4
支持平台............................................................................................................... 13
服务端部署........................................................................................................... 14
客户端部署........................................................................................................... 16
服务端管理........................................................................................................... 17
第 3 章 使用约束............................................................................................................... 18
第 4 章 同步服务端........................................................................................................... 19
§4.1
同步服务管理工具............................................................................................... 20
§4.1.1 Help 命令...........................................................................................................20
§4.1.2 Exit 命令............................................................................................................20
§4.1.3 Connect 命令.................................................................................................... 20
§4.1.4
Import 命令........................................................................................................21
§4.1.5
Show 命令......................................................................................................... 22
§4.1.1 Alter 命令.......................................................................................................... 24
§4.1.2 Drop 命令.......................................................................................................... 25
3
DB_HELPER
§4.2
错误码说明........................................................................................................... 28
第 5 章 同步客户端........................................................................................................... 29
§5.1
客户端同步工具................................................................................................... 30
§5.1.1 创建一个同步表............................................................................................... 30
§5.1.2 删除一个同步表............................................................................................... 31
§5.1.3 数据同步........................................................................................................... 32
§5.2
客户端 C 接口......................................................................................................34
§5.2.1
sqlite3_dbsync_version..................................................................................... 34
§5.2.2
sqlite3_dbsync_errinfo...................................................................................... 34
§5.2.3
sqlite3_dbsync_env........................................................................................... 34
§5.2.4
sqlite3_dbsync_destroy.....................................................................................35
§5.2.5
sqlite3_dbsync_setopt.......................................................................................35
§5.2.6
sqlite3_dbsync_open.........................................................................................37
§5.2.7
sqlite3_dbsync_close.........................................................................................37
§5.2.8
sqlite3_dbsync_add_synctable..........................................................................37
§5.2.9
sqlite3_dbsync_del_synctable...........................................................................38
§5.2.10
§5.2.11
§5.2.12
§5.2.13
§5.2.14
sqlite3_dbsync_export...................................................................................38
sqlite3_dbsync_import.................................................................................. 38
sqlite3_dbsync_clear_datachange................................................................ 39
sqlite3_dbsync_perform................................................................................39
sqlite3_dbsync_dbsyncid...............................................................................39
§5.3 C 接口编译与运行................................................................................................... 41
§5.4 C 接口开发例子...................................................................................................... 42
§5.4.1 同步表管理代码示例....................................................................................... 42
§5.4.2 双向同步代码示例........................................................................................... 43
§5.5
错误码说明........................................................................................................... 46
第 6 章 一个同步例子....................................................................................................... 47
同步例子需要数据表........................................................................................... 48
在同步服务端中创建同步对象........................................................................... 49
在同步客户端中创建同步对象........................................................................... 51
§6.1
§6.2
§6.3
4
DB_HELPER
§6.4
同步客户端与远程同步服务器进行同步........................................................... 52
5
DB_HELPER
第 1 章 系统概述
SQLite DBSync是开源嵌入式数据库SQLite的数据同步中间件,实现了SQLite
与异构数据库之间的增量的、双向的数据同步功能。在本章中对SQLite DBSync 的
体系结构、产品特色以及功能做了详细的介绍。
如果用户需要快速了解和学习整个同步过程,可以先阅读如下章节:
第一章 1.1 系统结构
第二章安装部署
第六章一个同步例子
6
DB_HELPER
§1.1 系统结构
SQLite DBSync 应用场景是由同步客户端、同步服务端和中心数据库三部分组
成,实现了多个同步客户端上的SQLite数据库与Oracle或MySQL等中心数据库之间
数据同步功能。
同步客户端
同步客户端主要由客户端同步引擎和SQLite数据库组成,客户端同步引擎提
供了对同步客户端上SQLite数据库的同步管理、同步增量数据捕获以及同步数据
上载与下载等功能,客户端同步引擎与同步服务器之间的通过HTTP/HTTPS传输增
量的同步数据。
同步服务端
同步服务器端主要由SQLite DBSync WEB Server(SDWS)和同步服务执行引擎
等组成,它们可以部署在应用服务器上,是同步客户端与中心数据库之间的桥梁,
SDWS 组件通过同步服务执行引擎完成与中心数据库双向的数据同步。
SDWS主要完成同步客户端并发同步请求处理及同步数据的网络传输等功能。
同步服务执行引擎主要完成同步服务端的同步对象管理、增量数据捕获以及同步
数据上载与下载等功能
中心数据库
中心数据库是部署在数据库服务器的关系型数据库比如Oracle、MySQL和
SQLServer。一般是企业的生产数据库,是集中存放企业生产数据的地方。
下图是该SQLite DBSync的体系结构图,通过上面提到的所有同步组件共同协
作实现了SQLite数据库与中心数据库之间的自动化的、增量的、双向的数据同步。
7
DB_HELPER
§1.2 产品特色
SQLite DBSync具有产品功特色如下:
同步客户端零管理:无需安装与配置,以接口库的方式嵌入到用户应用
程序中,可以与用户应用一起进行部署安装。
同步系统近乎零开发:同步系统提供了同步管理工具,用户只需简单的
配置和设计就可以实现数据同步了。
多平台支持:可以运行于 Windows、Linux、WinCE、Android 等操作系统
平台。
同步安全性:支持同步用户的登录、数据传输加密,提供数据同步的安
全保障。
同步事务支持:能够保障同步过程完整性,提供高可靠同步机制。
同步表权重支持:能够有效解决同步表之间的外键约束问题。
增量同步:提供数据库之间增量同步,有效减少同步数据容量,实现高
效的数据同步能力。
多种同步方式:支持仅下载,仅上载及双向的数据同步。
数据同步过滤:支持同步表的水平过滤、垂直过滤与水平垂直混合过滤。
多种数据类型:支持数值、字符串、日期时间、二进制、BLOB 等多种数
据类型的数据同步。
异构数据库支持:目前已实现与 MySQL 或 Oracle、SQLServer 之间的数
据同步。
全面的同步管理:同步发布管理、同步表管理、同步用户管理及同步变
量管理,可以灵活、简便地实现用户的数据同步开发与管理。
同步服务器支持:提供 WEB 服务中间件,可以完成多用户并发地自动化
的数据同步。
数据同步的高性能:同步服务器可以支持秒级的数据同步响应。
数据同步的高并发:同步服务器可以稳定的支持 100 个以上用户在线同
步并发。
数据同步的高可靠性:SQLite DBSync 可以有效地保证同步数据的一致
性。
8