2.2 系统初始化
2.2.1 填充数据库[5]
(1)统一数据库
在数据库服务器dbsrv9上启动数据库consol.db后,通过Sybase Central连接到数据库,为数据库创建一个名为student的表,只添加属性SId和SName,不填充数据。
(2)远程数据库
启动Windows CE上的网络数据库服务器,并在服务器启动远程数据库remote.db。然后用Sybase Central通过网络连接到远程数据库,为数据库创建一个名为student的表,添加与统一数据库中的表student相同的属性,并添加记录。
2.2.2 创建数据源 (1)统一数据库
用ODBC管理器为统一数据库consol创建数据源test_consol。
(2)远程数据库
由于Windows CE没有ODBC管理器,因此为远程数据库创建文件数据源。创建名为student.dsn的文本文件,填充如下内容:
[ODBC]
uid=dba
pwd=sql
enginename=remote
databasename=remote
2.2.3 准备同步 (1)远程数据库
通过Sybase Central连接到远程数据库,为表student创建一个新的发布stu_pub。创建MobiLink用户ml_student,为该用户预定发布stu_pub。设置同步预定ml_student的属性,在Connection选项卡中分别设置PC机的IP地址和MobiLink服务器启动的端口号。
(2)统一数据库
通过MobiLink Synchronization连接到统一数据库,在表->DBA中将student表添加到同步表中,新建版本default。
在同步表中选择student表,为其添加如下脚本。
Download_cursor
SELECT SId, SName FROM student
Upload_insert
INSERT INTO student(SId, SName) VALUES (?,?)
Upload_update
UPDATE student SET SName =? WHERE SId =?
Upload_delete
DELETE FROM student WHERE SId =?
2.3 启动同步
2.3.1 启动MobiLink服务器 在PC机命令提示符中运行如下命令:
dbmlsrv9-c“dsn=test_consol”-o mlserver.mls-v+-dl-x tcpip(port=2639)-za-zu+
2.3.2 启动MobiLink客户端 针对Adaptive Server Anywhere远程数据库,MobiLink提供了2种客户端,(1)用于支持Win32平台;(2)用于支持Windows CE平台。在2种平台中MobiLink客户端文件名都为dbmlsync的命令行程序。
在Win32平台中启动MobiLink客户端有2种方法:
(1)直接运行程序dbmlsync,如图2所示,在这个设置界面中设置好相关参数后即可启动同步。
(2)在命令提示符中运行如下命令:
dbmlsync-c “dsn=student”-e “sch=EVERY:00:05”
与Win32平台不同的是,一方面Windows CE平台不支持命令行程序;另一方面Windows CE平台中的MibiLink客户端输入相关参数后仍然不能顺利实现同步,而且在只有触摸笔的Windows CE设备中输入参数很不方便。
为了解决这个问题,本文采用了快捷方式文件启动的方法。在Windows CE中创建名为sync.lnk的文本文件,内容如下:100#“Program FilesSybaseASA9dbmlsync.exe” -c “dsn=student” -e “sch=EVERY:00:05”。
这是一个指向dbmlsync的快捷方式文件,同时在文件中提供了程序运行所需要的参数,运行这个文件即可成功实现同步。同步后的状态如图3所示。
3 应用前景
MobiLink可以应用于具有以下要求的同步系统:
(1)大量数据库,MobiLink可用于支持大量的远程数据库。在单个系统中,可支持数以千计的远程数据库。
(2)不定时连接,MobiLink支持不定时连接或间接连接到服务器所在网络的数据库。
(3)灵活的同步调度,应用程序按指定的间隔(几分钟、几小时或几天)进行连接和同步。
(4)低或中等容量,每次只能给远程站点准备1个下载信息。在MobiLink系统中,如果数据量很大,就会造成较长的连接时间,因为远程站点在同步完成之前不能断开连接。
(5)异类数据库,MobiLink支持将许多常用的关系数据库用作统一数据库。远程站点的模式可以与统一数据库的模式不同,因为可通过编写脚本来控制同步过程。
随着移动计算技术、无线通信技术和移动数据库技术的飞速发展,MobiLink数据库同步技术将会在移动数据库系统中发挥越来越重要的作用。
本文在分析了MobiLink数据库同步技术原理的基础上,研究了通过MobiLink来实现移动数据库同步的方法,并利用快捷方式文件解决了Windows CE中MobiLink客户端不能有效传递参数和输入不便的问题,最后对MobiLink同步技术的应用前景提出了展望。