将 UltraLite 数据库与 MobiLink 服务器同步。此工具可用于在应用程序开发中测试同步。
ulsync -c "connection-string" [ options ] [synchronization parameters { REPLACE | MERGE } profile-string ]
选项 | 说明 | ||||
---|---|---|---|---|---|
-c "connection-string" | 必需。连接到 DBF 或 connection-string 的 file_name 参数所标识的数据库。如果未指定用户 ID 和口令,则会假定缺省 UID 为 DBA 且 PWD 为 sql。 | ||||
-oa | 如果过程标识数据库由 UltraLite 的前一版本创建(将导致数据库升级),则将该过程取消。 | ||||
-or |
以只读模式同步数据库。UltraLite 会创建原始文件的副本,然后使用此副本测试脚本而不会变更数据库。完成后会放弃对复制文件的更改。 如果直接从桌面操作系统连接到已部署到 Windows Mobile 设备的数据库,则不支持此参数。 |
||||
-ou | 如果数据库由较旧版本的 UltraLite 创建,则升级数据库。 | ||||
-p | 使用已命名的同步配置文件同步等效于:
请参见同步配置文件选项。 |
||||
-q | 将实用程序设置为在安静模式下运行。取消信息性标题、版本号和状态消息。但是,仍然会显示错误消息。 | ||||
-r | 显示上次同步的结果,然后退出。 | ||||
-s | 同步之后运行可用的 SQL 直通脚本。 | ||||
-v | 显示同步进度消息。还可以确定是否为任何同步显示进度,是否使用 C++ API 或 SQL 同步配置文件语句。请参见UltraLite CREATE SYNCHRONIZATION PROFILE 语句。 |
不再支持以下选项(它们对于版本 10 及更旧版本有效):-a authenticate-parameters、-e sync-parms、-k stream-type、-n(不同步)和 -x protocol options。-e <keyword>=<value> 目前是同步参数字符串的一部分,并且 -k 和 -x 已包含于 Stream=<stream{<stream-parms>} 同步参数字符串。
根据用法,ulsync 被视为等效于以下 SQL 语句之一:
ulsync -p <profile> "<parms>" |
等效于:
SYNCHRONIZE PROFILE <profile> MERGE <parms> |
和
ulsync "<parms>" |
等效于:
SYNCHRONIZE USING <parms> |
为了安全同步,UltraLite 应用程序必须已经访问了公共证书。可通过以下方法参考证书:
在创建时,使用 ulinit、ulload 或 ulcreate,通过 -t file 选项将证书信息加入到 UltraLite 数据库中。
在同步时通过 trusted_certificates=file 流选项参考外部证书文件。
此实用程序会返回错误代码。除 0 之外的任何值均意味着操作失败。
以下命令为名为一个 remoteA 的 MobiLink 用户同步一份名为 myuldb.udb 的数据库文件。
ulsync -c DBF=myuldb.udb "MobiLinkUid=remoteA;Stream=http;ScriptVersion=2" |
以下命令通过带 c:\certs\rsa.crt 证书的 HTTPS 同步一份名为 myuldb.udb 的数据库文件。必须使用 trusted_certificates=file 选项,因为在创建数据库时,未将受信任证书文件添加到数据库。此外,MobiLink 用户名是 remoteB。
ulsync -c DBF=myuldb.udb "Stream=https{trusted_certificates=c:\certs\rsa.crt}; MobiLinkUid=remoteB;ScriptVersion=2;UploadOnly=ON" |
以下命令显示名为 synced.udb 的数据库文件的上一次同步的结果。
ulsync -r -c dbf=synced.udb |
下面列出以前的同步结果:
SQL Anywhere UltraLite Database Synchronize Utility Version XX.X Results of last synchronization: Succeeded Download timestamp: 2006-07-25 16:39:36.708000 Upload OK No ignored rows Partial download retained Authentication value: 1000 (0x3e8) |
以下示例显示了在 2439 端口上,通过 TCP/IP,使用用户名 50 同步 CustDB 数据库的命令行。
ulsync -c "dbf=C:\Documents and Settings\All Users\Documents\SQL Anywhere 11\Samples\UltraLite\SyncEncrypt\custdb.udb" MobiLinkUid=50;ScriptVersion=custdb 11.0;Stream=tcpip{port=2439} |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |