Sync Server 管理指南


设置数据和文件复制

要启用用户组来访问其成员所需要的数据和文件,必须定义一个或多个复制预订。复制预订提供了一些规范,用于说明源系统(企业服务器)中的信息如何与目标系统(移动设备)同步。

可以在“移动设备管理中心”中创建几种类型的预订:DataPropagator 预订、JDBC 预订、上载预订、文件预订和定制预订。

要确定您需要创建哪些预订,评估移动用户进行工作当前所需要的信息。他们的应用程序要访问哪些数据?它们要定期查看或使用哪些文件?

创建 JDBC 预订

使用“创建 JDBC 预订”笔记本来创建 JDBC 表预订。

您创建的每个表预订可以引用一个或多个表。

要创建 JDBC 预订

  1. 打开“创建 JDBC 预订”笔记本。
  2. 标识预订。
  3. 指定加密级别。
  4. 指定源数据库驱动程序和 URL。
  5. 指定镜像数据库驱动程序和 URL。
  6. 为预订指定源表、目标表和访问特权。
  7. 指定如何过滤源表中的数据。
  8. 对 JDBC 预订指定预订集。
  9. 单击确定

标识 JDBC 预订

在认证用户后,Sync Server 确定用户所属的组,然后查询管理控制数据库,确定哪些预订涉及到该请求。因此,Sync Server 必须能够按名称唯一地标识每个预订。

要标识 JDBC 预订

在“标识”页上,填写下列字段

名称
为预订输入一个 1 至 18 个字符的描述性的唯一名称。

描述
可选:输入最多 128 个字符的文本描述此预订。

指定加密级别

仅 Microsoft 提供的 Microsoft High Encryption Pack 为 Windows CE 和 Win32 平台提供了加密支持。必须安装 Microsoft High Encryption Pack 才能在 Windows CE/Pocket PC 客户机或 Win32 平台客户机和 DB2 Everyplace Sync Server 之间使用加密。要在 Palm OS 上支持加密, 需要 Palm OS 3.3 或更新版本。

要指定加密级别

在“标识”页上,使用加密级别字段来选择加密级别。下列三个选项可用:

在数据传输期间将不使用加密。

限制: 56 位数据加密标准
所有数据传输都将使用 56 位密钥来加密。此选项提供了基本的安全性,对性能的影响较小。

强:128 位数据加密标准
所有数据传输都将使用 128 位密钥来加密。此选项提供了增强的安全性,但是其性能比“限制”加密受到的影响更大。

指定源数据库驱动程序和 URL

必须指定源和镜像数据库。对于上载预订,不需要镜像数据库。

要指定源数据库驱动程序和 URL

在“创建 JDBC 预订”笔记本的“源”页上,提供下列信息:

数据库 URL
输入 JDBC 数据库 URL。显示了在“驱动程序” 字段中选中的 JDBC 驱动程序的正确格式。将括号中的变量替换为要连接至数据库的信息。例如,本地的 IBM DB2 UDB 的缺省“数据库 URL”为 jdbc:db2:{database}。将 {database} 替换为您计划使用的 DB2 数据库的名称。

驱动程序
选择要与此预订配合使用的 JDBC 数据库驱动程序。

用户标识
输入有效的源数据库用户标识。应确保此标识至少具有对数据库定义的预订授予的 SQL 特权。例如,如果在预订中授予了 SQL UPDATE 特权,则用户标识必须具有对源数据库定义的 UPDATE 特权。

密码
用户标识的有效源数据库密码。

验证密码
使用此字段再次输入您在密码字段中输入的密码。

单击测试连接来验证源数据库设置。

指定镜像数据库驱动程序和 URL

需要为同步预订指定镜像数据库,但不需要为上载预订指定镜像数据库。

要指定镜像数据库驱动程序和 URL

在“创建 JDBC 预订”笔记本的“镜像”页上,提供下列信息:

数据库 URL
选择镜像数据库的“JDBC 数据库”。单击 按钮以打开“选择镜像数据库”窗口。

用户标识
输入有效的 DB2 UDB 数据库用户标识。应确保此标识至少具有对数据库定义的预订授予的 SQL 特权。

密码
用户标识的有效密码。

验证密码
使用此字段再次输入您在密码字段中输入的密码。

单击“测试连接”来验证源数据库设置。

为预订指定源表、目标表和特权

您必须对每个 JDBC 预订定义至少一个表。如果为预订指定了多个表,则这些表将按照您创建预订时添加它们的次序进行同步。“定义复制预订”窗口上的表列表显示了此次序。

一定不能在两个不同的预订中指定相同的源表和目标表。如果要创建两个复制同一个源表的预订,请使用不同的目标表。

要将表添加至预订

  1. 在“JDBC 预订”笔记本的“标识”页上,单击定义预订。“定义复制预订”窗口打开。

  2. 在“定义复制预订”窗口中,单击添加。“添加表”窗口打开。

  3. 在“添加表”窗口中,使用列表来选择要添加到此预订中的复制源。

    单击过滤器,以更改用来限制表列表中的可用表的源过滤器。“过滤器”窗口打开。

    % 符号是一个通配符。在“源模式”和“源表” 字段中输入 % 时将显示表列表中所有可用的表。

  4. 目标模式字段中,指定表在移动设备将使用的模式。如果不指定模式,则在缺省情况下系统将使用源表的模式。

  5. 目标表字段中,指定表在移动设备上的名称。如果不指定名称,在缺省情况下系统将使用源表名。

  6. 访问特权下,选择您希望此预订的用户对此复制源具有的 SQL 访问特权。例如,如果您允许一些探访护士插入、更新或删除数据,但只允许实习护士查看数据,则需要创建两个不同的预订来处理访问特权方面的差异。这些预订必须使用独立的镜像表。有关 SQL 访问特权的更多信息,参见 DB2 通用数据库的《管理指南:设计与实现》。

  7. 可选:选择使用在所选的 DB2 源中定义的约束复选框。这使所选的 DB2 源表中的约束可用于目标表。

  8. 可选:选择使用在所选的 DB2 源中定义的索引复选框。这使所选的 DB2 源表中的索引可用于目标表。

  9. 单击添加将复制源添加到预订中。单击关闭以关闭“添加表”窗口。

过滤预订中的数据

当您对一个特定的表(例如,一组探访护士使用的 PATIENTS 表)创建预订时,出于性能方面的考虑会使您只复制该表中的数据子集。您可通过对预订中的每个表选择要复制的个别行或列来指定此子集。

例如,您可决定仅与使用 PATIENTS 表的探访护士相关的列为 PATIENT_NAME、ADDRESS、PHONE 和 DOCTOR 字段。然后,您可决定通过定义 WHERE 子句(该子句过滤为特定医生工作的护士的数据)来进一步过滤数据。

您可将预订的数据过滤器与组的过滤器集或用于个别用户的过滤器集组合使用,以进一步地过滤数据。

要过滤在同步期间将被复制的数据

  1. 在“定义复制预订”窗口中,单击高级。“高级预订定义”笔记本打开。
    注意:
    必须预订源表主键列。如果源表中有一些列不在主键内, 则必须至少预订这些列的其中一列。

  2. 可选:选择在预订中要使用的列。

    1. 转至“高级预订定义”笔记本的“目标列”页。

    2. 使用“预订集”复选框来选择要在移动设备上创建的列。在移动设备上将不会创建未选择的列。

    3. 使用“复制”复选框来选择要复制到镜像数据库中的列。您可能需要将一列复制到镜像数据库中,但是并不想在手提设备上创建该列。例如,如果 NOT NULLABLE 列在服务器上并不存在 DEFAULT VALUE,并且您未在移动设备上创建它,则必须将它复制到镜像数据库中,并使用“缺省值”数据过滤器来提供缺省值。Sync Server 将使用在“缺省值”数据过滤器中指定的 DEFAULT VALUE 来将移动设备所创建的所有行复制到源中,以完成在服务器上没有缺省值的 NOT NULLABLE 源列的内容。

    4. 单击更改来修改目标列名、“缺省值”数据过滤器或约束。

    5. 单击关闭来关闭“创建索引”窗口。

  3. 可选:为目标表定义索引。

    1. 转至“高级预订定义”笔记本的“索引”页。

    2. 单击“添加”以打开“创建索引”窗口。“创建索引”窗口打开。

    3. 在“名称”字段中输入索引的名称。

    4. 使用 >、>>、<<< 按钮来选择您想包括在索引中的列。

    5. 使用上移下移按钮来对索引排序。

    6. 选择将索引按升序排序按降序排序

    7. 单击添加来添加索引。

    8. 单击关闭来关闭“创建索引”窗口。

  4. 可选:定义用来选择要包括在预订中的个别行的 WHERE 子句。即使所有列都出现在副本中,您也可以决定只让某些行成为预订的一部分。要显示样本 WHERE 子句,单击示例
    1. 转至“高级预订定义”窗口的“行”页。
    2. 需要的所有行字段中,输入一个 WHERE 子句,该子句定义您希望在预订中出现的行选择。只能从在“步骤 1”中选择的表中选择行。

      例如,假定您想要探访护士只能在 PATIENTS 表中看到 JOBCODE 列的值为 VNURSE 的数据行。您将输入以下 WHERE 子句:

      JOBCODE='VNURSE'
      

      不必在子句开头输入 WHERE。

    3. 个别用户的行子集字段中,可输入类似于 SQL WHERE 子句的子句,以进一步限制个别用户可以看到的行。确保不要在子句开头输入 “WHERE”。可以使用参数,它的值随用户的不同而有所变化。有关在组级别或用户级别定义过滤器的详细信息,参见预订级别、组级别或用户级别的水平过滤

      例如,假定您想要用户只能看到与其自己的职位代码相关的数据。定义用来引用对每个个别用户定义的数据过滤器值的变量,而不是对整个预订的 JOBCODE 参数的值进行硬编码:

      JOBCODE=':JOB.'
      

      在个别用户的数据过滤器中,您可将 :JOB 参数设置为每个用户的职位代码。有关对个别用户过滤数据的更多信息,参见过滤对用户可用的数据预订级别、组级别或用户级别的水平过滤

    4. 单击确定以关闭“高级预订定义”窗口。
  5. 单击确定返回“定义复制预订”窗口。
注意:
在同步期间对用户设备上的 DB2 Everyplace 表中的一行所作的一系列更改会作为一个累积更改通知到 Sync Server。因此,对同一主键所作的 DELETE 操作以及接着的 INSERT 操作会作一个 UPDATE 操作通知到 SyncServer(如果执行这两个操作之间未 进行同步的话)。如果在执行这两个操作之间进行了同步,则这两个操作所作的更改会分别通知到 Sync Server。由于预订不在源表与用户表之间传送所有列,因此,对单一行执行一系列更改会导致不一致性。UPDATE 操作会保留未预订的列中的当前值,而 INSERT 操作会将未预订的列设置为缺省值。

对同步请求进行批处理

基于性能原因,您可能不想要 Sync Server 在每个同步请求排队时对其执行复制。要改进性能,可以执行下列其中一项:

当对同步请求进行批处理时,Sync Server 会在自上次复制后经过了对批处理窗口定义的秒数时开始复制同步请求。

有关如何将 Sync Server 设置为在任何给定时间执行复制的信息,参见按需复制

要对同步请求进行批处理:

  1. 确保“创建 JDBC 预订”笔记本的“标识”页上出现源和镜像数据库。然后单击定义预订。“定义复制预订”窗口打开。
  2. 单击定时。“预订定时”窗口打开。
  3. 批处理窗口字段中,指定想要 Sync Server 在复制周期之间等待的秒数。您最多可指定 86,400 秒(24 小时)。缺省设置为 3600 秒(60 分钟)。
  4. 单击确定

对同一镜像数据库定义的所有预订共享批处理参数的相同值。所作的任何更改都会影响对镜像数据库定义的所有预订。

对 JDBC 预订指定预订集

在定义预订之后,必须指定哪些预订集使用它。在将预订与预订集相关联时,可将该预订集指定给组,以供组成员访问在预订集引用的预订中定义的数据和文件。

一个预订可供数目不受限制的预订集使用。然而,使用不同特权定义的两个预订不能属于同一预订集。

如果两个具有不同特权的预订与同一个表进行同步,则它们必须使用不同的镜像(中间层)服务器。仅当两个具有不同特权的预订与不同的表进行同步时,才可以使用同一个镜像数据库。

要指定使用此预订的预订集

  1. 转至“创建 JDBC 预订”笔记本的“预订集”页。

  2. 可用的预订集列表中,选择想要让预订与之相关联的预订集。在选择时按住 Ctrl 键,以便依次选择多个预订集,或按住 Shift 键选择连续的多个预订集。

    如果没有任何预订集出现在可用的预订集列表中,则单击创建,以便在不关闭当前的“JDBC 预订”笔记本的情况下创建预订集。“创建预订集”笔记本打开。

  3. 单击 > 来指定预订集,或者单击 >> 来同时指定所有可用的预订集。指定的预订集出现在所选的预订集列表中。

创建 DataPropagator 预订

DataPropagator 预订提供了一些规范,用以说明源表中的数据如何与移动设备上的表同步。

您创建的每个预订可引用一个或多个表。

要创建 DataPropagator 预订:

  1. 确保表在“DB2 通用数据库”中被定义为复制源,且您对该表定义了至少一个不可空的主键列。(有关定义复制源的信息,参见 DB2 Universal Database Replication Guide and Reference。)
  2. 打开“创建 DataPropagator 预订”笔记本。(有关更多信息,参见创建同步对象。)
  3. 标识预订。
  4. 指定加密级别。
  5. 将企业系统上的源数据库映射至移动设备上它的目标数据库。
  6. 标识镜像数据库。如果在三层结构中设置了同步,则镜像位于中间层系统上。
  7. 将源表添加至预订,并提供有关您将允许这些表使用的 SQL 特权的信息。
  8. 可选:指定如何过滤源表中的数据。

    例如,您想要在每次同步时都复制源表中的所有数据吗?还是只复制某些行?对预订指定的数据过滤适用于使用该预订的所有组。

  9. 通过定义复制进程之间要经过的时间段来指定想要如何以批处理方式处理同步请求 (参见对同步请求进行批处理以了解信息)。
  10. 提供将用来以组的名义访问源系统的用户标识和密码。
  11. 指定将使用预订的预订集。
  12. 单击确定

本节中更为详细地说明了这些步骤中的大多数步骤。

标识预订

在认证用户之后,Sync Server 会确定用户所属的组,然后查询“管理控制数据库”以确定该请求涉及哪些预订。因此,Sync Server 必须能够按名称唯一地标识每个预订。

要标识 DataPropagator 预订,在“创建 DataPropagator 预订”笔记本的“标识” 页上的下列字段中输入信息:

名称
为预订提供一个 1 至 18 个字符的,描述性的唯一名称。

对于 DB2 DataPropagator 预订,系统会在将您在此处指定的名称保存到“管理控制数据库”中时将该名称转换为大写字母。在该名称保存到控制数据库中之后,不能重新命名该预订,因为 DB2 DataPropagator 不支持此功能。 必须先删除现有预订,然后用新名称创建新预订。

描述

输入最多 128 个字符的文本来描述此预订。

指定加密级别

仅 Microsoft 提供的 Microsoft High Encryption Pack 为 Windows CE 和 Win32 平台提供了加密支持。必须安装 Microsoft High Encryption Pack 才能在 Windows CE/Pocket PC 客户机或 Win32 平台客户机和 DB2 Everyplace Sync Server 之间使用加密。要在 Palm OS 上支持加密, 需要 Palm OS 3.3 或更新版本。

要指定加密级别

在“标识”页上,使用加密级别字段来选择加密级别。加密级别修改后, 预订至该预订的所有用户都必须复位。下列三个选项可用:

在数据传输期间将不使用加密。

限制: 56 位数据加密标准
所有数据传输都将使用 56 位密钥来加密。此选项提供了基本的安全性,对性能的影响较小。

强:128 位数据加密标准
所有数据传输都将使用 128 位密钥来加密。此选项提供了增强的安全性,但是其性能比“限制”加密受到的影响更大。

将源映射至目标

源数据库是用作数据复制的源的数据库。

目标数据库是移动设备上从源系统接收复制数据的数据库。

要将企业系统上的源数据库映射至移动设备上它的目标数据库,在“创建 DataPropagator 预订”笔记本的“标识”页上的下列字段中输入信息:

源数据库

必须对源数据库编目。通过单击

按钮,从已编目数据库的列表中选择名称。

目标数据库

此字段自动缺省为您在源数据库字段中输入的名称。仅当在这是对源数据库定义的第一个预订时,您才能覆盖此目标数据库名。

此字段不适用于运行 Palm OS 的设备,因为该操作系统并未使用传统的数据库结构。

标识镜像数据库

在开始设置同步之前,必须在中间层系统上创建镜像数据库。您可以通过单击创建按钮启动“创建数据库”向导来创建镜像数据库。然后,可在预订中标识该镜像数据库。

要标识镜像数据库,从“创建 DataPropagator 预订”笔记本“标识页”上的镜像数据库字段中的列表中选择一个镜像数据库名。此字段会显示在调用了“移动设备管理中心”的服务器上定义的所有数据库。

添加复制源

复制源是一个表,它驻留在数据从其复制至目标系统的源系统上。您必须对每个 DataPropagator 预订定义至少一个复制源。一定不能在两个不同的预订中指定相同的源表和目标表。如果要创建两个复制同一个源表的预订,请使用不同的目标表。

如果为预订指定了多个表,则这些表将按照您创建预订时添加它们的次序进行同步。“定义复制预订”窗口上的表列表显示了此次序。

要将复制源添加至预订:

  1. 确保已将表定义为 DB2 DataPropagator 复制源。您可使用“DB2 控制中心”来定义复制源。有关更多信息,参见 DB2 Universal Database Replication Guide and Reference

    因为复制源可由不同于 DB2 Everyplace Sync Server 的工具使用和管理,所以在您定义源时,确保以所有应用程序都可利用的方式来控制对数据的访问。

  2. 在“创建 DataPropagator 预订”笔记本的“标识”页上,单击

    按钮从列表中选择源数据库。
  3. 单击定义预订。“定义复制预订”窗口打开。

    预订名字段反映您在“标识” 页上输入的预订的名称。Apply 限定符字段表示 Sync Server 用于对此数据库定义的所有预订的唯一限定符。

    Apply 限定符使中间层镜像数据库与企业系统上它的主数据库的同步进程更为流畅;当 Apply 程序运行时,DataPropagator 用同一个 Apply 限定符为所有预订复制数据。Apply 限定符缺省为镜像数据库的名称。

  4. 在“定义复制预订”窗口中,单击添加。“添加”窗口打开。
  5. 复制源列表中,选择要添加至此预订的复制源。
  6. 访问特权字段中,选择想要此预订的用户对此复制源具有的 SQL 访问特权。例如,如果允许某些探访护士插入、更新或删除数据,而只允许见习护士查看数据,则您需要创建两个不同的预订来处理访问特权中的这一差异。这些预订必须使用独立的镜像表。有关 SQL 访问特权的更多信息,参见 DB2 Universal Database SQL Reference

    在将复制源添加至预订之后,仅可更改对源定义的 SQL 访问特权。

  7. 目标表字段中,指定该表将在移动设备上使用的名称。如果不指定名称,在缺省情况下系统将使用源表名。创建目标表复选框始终是被禁用的。

    在同一预订中,源表可映射至多个目标表名。但是,DB2 DataPropagator 使用单一更改数据表来在两个目标表之间复制更改。

  8. 单击添加以将复制源添加至预订。

过滤预订中的数据

在创建特定表(例如,探访护士组的 PATIENTS 表)的预订时,基于性能方面的考虑,您可能只能复制预订中的数据子集。您可通过对预订中的每个表选择要复制的个别行来指定此子集。

例如,您可决定仅与使用 PATIENTS 表的探访护士相关的列为 PATIENT_NAME、ADDRESS、PHONE 和 DOCTOR 字段。然后,您可决定通过定义 WHERE 子句(该子句过滤为特定医生工作的护士的数据)来进一步过滤数据。

您可将预订的数据过滤器与组的过滤器集或用于个别用户的过滤器集组合使用,以进一步地过滤数据。

要过滤将在同步期间复制的数据:

  1. 在“定义复制预订”窗口中,选择想要对其定义列过滤或行过滤的表。
  2. 单击高级。“高级预订定义”笔记本打开。
  3. 可选:定义用来选择要包括在预订中的个别行的 WHERE 子句。即使所有列都出现在副本中,您也可以决定只让某些行成为预订的一部分。
    1. 转至“高级预订定义”窗口的“行”页。
    2. 需要的所有行字段中,输入一个 WHERE 子句,该子句定义您希望在预订中出现的行选择。只能使用在“步骤 1”中选择的表。

      例如,假定您想要探访护士只能在 PATIENTS 表中看到 JOBCODE 列的值为 VNURSE 的数据行。您可输入以下 WHERE 子句:

      JOBCODE='VNURSE'
      

      一定不能在子句开头使用 WHERE 关键字。

      您可单击示例来显示样本 WHERE 子句。

    3. 个别用户的行子集字段中,可输入类似于 SQL WHERE 子句的子句,以进一步限制个别用户可以看到的行。确保不要在子句开头输入 “WHERE”。可以使用参数,它的值随用户的不同而有所变化。有关在组级别或用户级别定义过滤器的详细信息,参见预订级别、组级别或用户级别的水平过滤

      例如,假定您想要用户只能看到与其自己的职位代码相关的数据。定义用来引用对每个个别用户定义的数据过滤器值的变量,而不是对整个预订的 JOBCODE 参数的值进行硬编码:

      JOBCODE=':JOB.'
      

      在个别用户的数据过滤器中,您可将 :JOB 参数设置为每个用户的职位代码。有关对个别用户过滤数据的更多信息,参见过滤对用户可用的数据预订级别、组级别或用户级别的水平过滤

    4. 单击确定以关闭“高级预订定义”窗口。
注意:
在同步期间对用户设备上的 DB2 Everyplace 表中的一行所作的一系列更改会作为一个累积更改通知到 Sync Server。因此,对同一主键所作的 DELETE 操作以及接着的 INSERT 操作会作一个 UPDATE 操作通知到 SyncServer(如果进行这两个操作时未插入同步的话)。如果在进行这两个操作时插入了同步, 则这两个操作所作的更改会分别通知到 Sync Server。如果预订未在源表和用户表间传送所有列,这就可能导致不一致, 因为 UPDATE 操作会保留未预订的列中的当前值,而 INSERT 操作会将未预订的列设置为缺省值。

对同步请求进行批处理

基于性能原因,您可能不想要 Sync Server 在每个同步请求排队时对其执行复制。要改进性能,可以执行下列其中一项:

当对同步请求进行批处理时,Sync Server 会在自上次复制后经过了对批处理窗口定义的秒数时开始复制同步请求。

有关如何将 Sync Server 设置为在给定时间执行复制的信息,参见按需复制

要对同步请求进行批处理:

  1. 确保“创建 DataPropagator 预订”笔记本的“标识”页上出现源和镜像数据库。然后单击定义预订。“定义复制预订”窗口打开。
  2. 单击定时。“预订定时”窗口打开。
  3. 批处理窗口字段中,指定想要 Sync Server 在复制周期之间等待的秒数。您最多可指定 86,400 秒(24 小时)。缺省设置为 3600 秒(60 分钟)。
  4. 单击确定

对同一镜像数据库定义的所有预订共享批处理参数的相同值。所作的任何更改都会影响对镜像数据库定义的所有预订。

为预订提供用户标识和密码

对源数据库定义的所有预订共享同一用户标识和密码以获得对数据库的访问权。如果这是对源数据库创建的第一个预订,则您需要指定此用户标识和密码。为此,在“创建 DataPropagator 预订”笔记本的“认证”页上输入下列值:

Sync Server 会根据此信息创建 DataPropagator 用来访问源数据库的密码文件。该密码文件存储在 Sync Server 运行于其中的目录中。

指定使用预订的预订集

在定义预订之后,必须指定要使用它的预订集。如果将预订与预订集相关联,则可将该预订集指定给组,以便让组成员可以访问在预订集引用的预订中定义的数据和文件。

一个预订可供数目不受限制的预订集使用。然而,使用不同特权定义的两个预订不能属于同一预订集。

如果两个具有不同特权的预订指向同一个表,则它们必须使用不同的镜像(中间层)服务器。仅当两个具有不同特权的预订与不同的表进行同步时,才可以使用同一个镜像数据库。

要指定使用此预订的预订集:

  1. 转至“创建 DataPropagator 预订”笔记本的“预订集”页。
  2. 可用的预订集列表中,选择想要让预订与之相关联的预订集。要依次选择多个预订集,在选择时按住 Ctrl 键;要连续选择多个预订集,在选择时按住 Shift 键。

    如果可用的预订集列表中没有显示任何预订集,则将需要创建预订集。可现在单击创建来打开“创建预订集”笔记本,或稍后创建预订集,并在以后将其与预订相关联。有关创建预订集的更多信息,参见使组能够访问其数据和文件

  3. 单击 > 来指定预订集,或者单击 >> 来同时指定所有可用的预订集。指定的预订集显示在所选的预订集列表中。

创建上载预订

上载预订是一种 JDBC 预订,它允许将行直接插入到源数据库中的表中。源表可以驻留在任何支持 JDBC 的数据库中。上载预订可以改进 Sync Server 的吞吐量、简化管理和提高系统可靠性。

在客户机设备只用于收集数据并且及时获取客户机设备上的表的更新 并不是主要的关心事项的情况下,可以使用上载预订。这样的情况包括:

除了要求源数据库必须支持 JDBC 和 SQL INSERT 语句之外,对源数据库没有什么限制。由于上载预订不进行复制,所以,对 Sync Server 的压力大为减轻。

在上载预订中,当与 Sync Server 进行同步时,手持式设备上的 DB2 Everyplace 数据库引擎直接与源数据库进行通信,以插入已添加至 DB2 Everyplace 数据库的行。数据流是单向的,不刷新设备上的表。此过程不涉及镜像数据库。

如果使用主键,就会拒绝导致主键冲突的多个插入。这些拒绝同时记录在客户机中以及 Sync Server 上的“移动设备管理中心”(MDAC)中。其他操作,如 DELETE 和 UPDATE, 或者被源数据库忽略,或者被拒绝。表 7列示了客户机操作和结果。

表 7. 客户机的可能操作以及它们的结果

操作 结果
在主键中不引起冲突的客户机 INSERT 操作 插入到源数据库中
在主键中引起冲突的客户机 INSERT 操作 被拒绝,并将错误信息记录在客户机和 MDAC 中
客户机的 UPDATE 操作 被拒绝,并将错误信息记录在客户机和 MDAC 中
客户机的 DELETE 操作 被安静地忽略
第一次同步 在客户机中创建不带行的表

在上载预订中,Sync Server 从不更新设备的 DB2 Everyplace 数据库中的相关表。

使用“创建上载预订”笔记本来创建上载表预订。有关如何打开笔记本的信息,参见创建同步对象。您创建的每个表预订可以引用一个或多个表。

要创建上载预订

  1. 打开“创建上载预订”笔记本。
  2. 标识上载预订。
  3. 指定加密级别。
  4. 指定源数据库驱动程序和 URL。
  5. 为预订指定源表和目标表。
  6. 对上载预订指定预订集。
  7. 单击确定

本节中更详细地说明了这些步骤。

标识上载预订

在认证用户后,Sync Server 确定用户所属的组,然后查询管理控制数据库,确定哪些预订涉及到该请求。因此,Sync Server 必须能够按名称唯一地标识每个预订。

要标识上载预订

  1. 单击“创建上载预订”笔记本的标识选项卡。
  2. 填写这些字段:

    名称
    为上载预订输入一个 1 至 18 个字符的描述性的唯一名称。

    描述
    可选:输入最多 128 个字符的文本描述此预订。

指定加密级别

仅 Microsoft 提供的 Microsoft High Encryption Pack 为 Windows CE 和 Win32 平台提供了加密支持。必须安装 Microsoft High Encryption Pack 才能在 Windows CE/Pocket PC 客户机或 Win32 平台客户机和 DB2 Everyplace Sync Server 之间使用加密。要在 Palm OS 上支持加密, 需要 Palm OS 3.3 或更新版本。

要加密加密级别

标识页上,从加密级别下拉列表中选择加密级别。下列三个选项可用:

在数据传输期间将不使用加密。

限制: 56 位数据加密标准
所有数据传输都将使用 56 位密钥来加密。此选项提供了基本的安全性,对性能的影响较小。

强:128 位数据加密标准
所有数据传输都将使用 128 位密钥来加密。此选项提供了增强的安全性,但是其性能比“限制”加密受到的影响更大。

指定源数据库驱动程序和 URL

由于不涉及镜像数据库,所以,只能为上载预订指定源数据库。

要指定源数据库驱动程序和 URL

在“创建上载预订”笔记本的页上,提供下列信息:

数据库 URL
输入 JDBC 数据库 URL。显示了在“驱动程序”字段中选中的 JDBC 驱动程序的正确格式。将括号中的变量替换为要连接至数据库的信息。例如,本地的 IBM DB2 UDB 的缺省“数据库 URL”为 jdbc:db2:{database}。将 {database} 替换为您计划使用的 DB2 数据库的名称。

驱动程序
使用此字段来选择要与此预订配合使用的 JDBC 数据库驱动程序。

用户标识
输入有效的源数据库用户标识。确保此标识对源数据库具有 SQL INSERT 特权。

密码
用户标识的有效源数据库密码。

验证密码
再次输入您在密码字段中输入的密码。

指定源表和目标表

您必须对每个上载预订定义至少一个表。

要将表添加至预订

  1. 在“创建上载预订”笔记本的标识页上,单击定义预订。“定义复制预订”窗口打开。

  2. 在“定义复制预订”窗口中,单击添加。“添加表”窗口打开。

  3. 在“添加表”窗口中,使用列表来选择要添加到此预订中的复制源。

    单击过滤器,以更改用来限制表列表中的可用表的源过滤器。“过滤器”窗口打开。

    % 符号是一个通配符。在“源模式”和“源表” 字段中输入 % 时将显示表列表中所有可用的表。

  4. 目标模式字段中,指定表在移动设备将使用的模式。如果不指定模式,在缺省情况下系统将使用源表的模式。

  5. 目标表字段中,指定表在移动设备上的名称。如果不指定名称,在缺省情况下系统将使用源表名。

  6. 可选:选择使用在所选的 DB2 源中定义的约束复选框。这使所选的 DB2 源表中的约束可用于目标表。

  7. 可选:选择使用在所选的 DB2 源中定义的索引复选框。这使所选的 DB2 源表中的索引可用于目标表。

  8. 单击添加将复制源添加到预订中。单击关闭以关闭“添加表”窗口。

对上载预订指定预订集

在定义预订之后,必须指定哪些预订集使用它。在将预订与预订集相关联之后,可将该预订集指定给一个组,以使组成员能够访问数据和文件。组可以访问的数据和文件在该预订集所引用的预订中定义。

一个预订可供数目不受限制的预订集使用。

要指定使用此预订的预订集

  1. 转至“创建上载预订”笔记本的预订集页。

  2. 可用的预订集列表中,选择想要让预订与之相关联的预订集。在选择时按住 Ctrl 键,以便依次选择多个预订集,或按住 Shift 键选择连续的多个预订集。

    如果没有任何预订集出现在可用的预订集列表中, 则单击创建,以便在不关闭当前“创建上载预订”笔记本的 情况下创建预订集。“创建预订集”笔记本打开。

  3. 单击 > 来指定预订集,或者单击 >> 来同时指定所有可用的预订集。指定的预订集出现在所选的预订集列表中。

创建文件预订

要为用户提供对它们所需的文件的访问权,可定义一个或多个文件预订。与 DataPropagator 预订(它可包含多个表)不同,一个文件预订只能包含一个文件。因此,如果用户组需要访问几个文件,则您必须创建几个文件预订(然后按指定预订集会访问的信息中所说明的那样将它们指定给预订集,并按启用组以访问数据和文件中所说明的那样 将预订集指定给组)。一个文件不能在多个预订中被引用。

对其预订组的文件可以是存储在源服务器上的任何文件。可以使用文件预订来作为一种方便的将数据和应用程序文件分布至用户并进行更新的方法。例如,它可以是要安装在移动设备上的应用程序文件,或是使 Palm OS 应用程序起作用所必需的资源文件,或是包含晨会备忘录的平面文件。

要创建文件预订:

  1. 打开“创建文件预订”笔记本。有关更多信息,参见创建同步对象
  2. 标识预订。
  3. 指定加密级别。
  4. 指定源文件的名称。
  5. 指定将使用预订的预订集。
  6. 单击确定

这些步骤会在本节中作进一步的说明。

标识预订

在认证用户之后,Sync Server 会确定用户所属的组,然后查询“管理控制数据库”以确定该请求涉及哪些预订。为此,Sync Server 必须能够根据名称唯一地标识每个文件预订。

要标识文件预订,在“创建文件预订”笔记本的“标识” 页上输入下列信息:

名称

为预订提供一个 1 至 18 个字符的,描述性的唯一名称。名称是区分大小写的。

描述

输入最多 128 个字符的文本来描述此预订。

指定加密级别

仅 Microsoft 提供的 Microsoft High Encryption Pack 为 Windows CE 和 Win32 平台提供了加密支持。必须安装 Microsoft High Encryption Pack 才能在 Windows CE/Pocket PC 客户机或 Win32 平台客户机和 DB2 Everyplace Sync Server 之间使用加密。要在 Palm OS 上支持加密, 需要 Palm OS 3.3 或更新版本。

要加密加密级别

在“标识”页上,使用加密级别字段来选择加密级别。下列三个选项可用:

在数据传输期间将不使用加密。

限制: 56 位数据加密标准
所有数据传输都将使用 56 位密钥来加密。此选项提供了基本的安全性,对性能的影响较小。

强:128 位数据加密标准
所有数据传输都将使用 128 位密钥来加密。此选项提供了增强的安全性,但是其性能比“限制”加密受到的影响更大。

指定源文件的名称

源文件是驻留在被复制至目标设备的源系统上的文件。

目标文件是在同步期间接收源文件内容的目标系统上的文件。

源文件必须可用于在调用“移动设备管理中心”的中间层系统中进行选择。因此,在定义预订之前,连接至文件所在的源系统,或将文件从源系统复制至中间层系统。如果同步配置只有两层,则文件可能已经在调用“移动设备管理中心”的系统上。

在“创建文件预订”笔记本的“标识” 页上的源文件名字段中指定源文件的名称。

在创建文件预订之后,会存储在此处指定的文件的副本来确保预订的完整性,以防文件有任何闪失。如果更新了文件,必须标志要再次复制至每个预订的用户的源文件。有关更多信息,参见标志出引用已更改的文件的预订

由于 Palm OS 移动设备将文件名存储在文件自身中,所以目标文件名字段会被忽略。

指定使用预订的预订集

在定义预订之后,必须指定要使用它的预订集。如果将预订与预订集相关联,则可将该预订集指定给组,以供其成员访问在预订集引用的预订中定义的数据和文件。

一个预订可供数目不受限制的预订集使用。

要指定使用此预订的预订集:

  1. 转至“创建文件预订”笔记本的“预订集”页。
  2. 可用的预订集列表中,选择想要让预订与之相关联的预订集。要依次选择多个预订集,在选择时按住 Ctrl 键;要连续选择多个预订集,按住 Shift 键。

    如果可用的预订集列表中没有显示任何预订集,则将需要创建预订集。可现在单击创建来打开“创建预订集” 笔记本,或稍后创建预订集,并在以后将其与预订相关联。有关创建预订集的更多信息,参见使组能够访问其数据和文件

  3. 单击 > 来指定预订集,或者单击 >> 来同时指定所有可用的预订集。指定的预订集显示在所选的预订集列表中。

您还可以使用“预订集”笔记本将预订与预订集相关联。有关更多信息,参见指定预订集会访问的信息

标志出引用已更改的文件的预订

如果对预订中引用的文件作了更改,则需要标志出源文件已更改,以使 Sync Server 在下一次同步时将该文件复制至预订的用户。这是一种非常方便的在移动设备上更新或升级应用程序和数据文件的方法。

要标志源文件已更改:

  1. 在“移动设备管理中心”的对象树中打开预订对象文件夹。
  2. 在内容窗格中,右键单击文件预订并选择复位

创建定制预订

使用“创建定制预订”笔记本来创建定制预订。定制预订可用来定制缺省适配器或使用第三方适配器。

要创建定制预订

  1. 打开“创建定制预订”笔记本。
  2. 标识定制预订。
  3. 指定加密级别。
  4. 启动定制器。
  5. 对定制预订指定预订集。
  6. 单击确定

这些步骤会在本节中作进一步的说明。

标识定制预订

在认证用户后,Sync Server 确定用户所属的组,然后查询管理控制数据库,确定哪些预订涉及到该请求。因此,Sync Server 必须能够按名称唯一地标识每个预订。

要标识定制预订

在“标识”页上,填写下列字段:

名称
为预订输入一个 1 至 18 个字符的描述性的唯一名称。

描述
可选:输入最多 128 个字符的文本描述此预订。

指定加密级别

定制预订不支持加密。在加密字段中选择“无”。

启动定制器

要启动定制器

在“标识”页上,单击 按钮来启动在预订所使用的定制适配器的 “定制器”类名字段中所定义的定制 Java 类文件。仅当适配器请求时,定制器才可用。否则, 会在其他字段输入定制预订的附加参数。

对定制预订指定预订集

在定义预订之后,必须指定哪些预订集使用它。在将预订与预订集相关联时,可将该预订集指定给组,以供组成员访问在预订集引用的预订中定义的数据和文件。

一个预订可供数目不受限制的预订集使用。

要指定使用此预订的预订集

  1. 转至“创建定制预订”笔记本的“预订集”页。

  2. 可用的预订集列表中,选择想要让预订与之相关联的预订集。在选择时按住 Ctrl 键,以便依次选择多个预订集,或按住 Shift 键选择连续的多个预订集。

    如果没有任何预订集出现在可用的预订集列表中,则单击创建,以便在不关闭当前“定制预订”笔记本的情况下创建预订集。“创建预订集”笔记本打开。

  3. 单击 > 来指定预订集,或者单击 >> 来同时指定所有可用的预订集。指定的预订集出现在所选的预订集列表中。

创建定制适配器

使用“创建定制适配器”笔记本来创建定制适配器。DB2 Everyplace Sync Server 包括四个缺省适配器。这些缺省适配器包括:

DSYDPROPR      用于关系数据的 DataPropagator 适配器
DSYJDBC        用于关系数据的 JDBC 适配器
DSYFILE        用来复制文件的文件适配器
Agent Adapter  用来运行存储过程的“远程查询和存储过程”适配器

定制适配器允许您扩展 DB2 Everyplace Sync Server 的功能。

要创建定制适配器

  1. 打开“创建定制适配器”笔记本。
  2. 标识定制适配器。
  3. 指定“定制器”类名和“签名”。
  4. 指定通信属性。
  5. 指定文件属性。
  6. 单击确定

这些步骤会在本节中作进一步的说明。

标识定制适配器

要标识定制适配器

在“标识”页上,填写下列字段:

名称
为适配器输入一个 1 至 18 个字符的描述性的唯一名称。

描述
可选:输入最多 128 个字符的文本来描述此适配器。

指定“定制器”类名和“签名”

要指定“定制器”类名和“签名”

在“标识”页上,填写下列字段:

定制器类名
输入要由 按钮 调用的 Java 类名。

签名
输入用来标识使用此适配器的预订的“签名”。

签名用来标识适配器的。这会防止将关系数据预订与文件适配器一起使用。例如, 如果 WIDGET 适配器有许多实例(所有实例都使用同一签名 WidgetSig), 且 WIDGET 适配器的每个实例都有一个不同的函数, 则使用此 WIDGET 适配器的每个现存定制预订都可以使用相同签名(WidgetSig)的任何定制 WIDGET 适配器。

指定通信属性

要指定通信属性

在“标识”页上,填写下列字段:

命令
输入要对此适配器运行的命令。

服务器 IP 地址:端口
按以下格式输入适配器要连接的服务器 IP 地址和端口:
XXX.XXX.XXX.XXX:PPPP

其中,XXX.XXX.XXX.XXX 是 IP 地址,PPPP 是端口号。

队列管理器后缀
可选:为队列管理器输入一个 1 至 18 个字符的描述性的唯一后缀。

输入队列名
可选:输入最多 128 个字符的文本描述此预订。

指定文件属性

要指定文件属性

在“标识”页上,填写下列字段:

库名
输入要用于此适配器的库的文件名。该库必须位于路径中。

其他参数
可选:为库名中命名的文件输入最多 128 个字符的其他参数。

按需复制

按需复制功能使您能够随时请求复制。这是将复制设置为根据常规时间间隔自动运行的替代方法。可以在创建新预订时启用按需复制,可以在编辑现有预订时启用按需复制。如果重新配置现有的预订,则必须重新启动 Sync Server 小服务程序以使更改生效。

要启用按需复制:

  1. 在“创建 DataPropagator 预订”笔记本或“创建 JDBC 预订”笔记本上,转至“标识”页并单击定义预订。“定义复制预订”窗口打开。
  2. 单击定时。“预订定时”窗口打开。
  3. 批处理窗口字段中,将定时设置为 0。
  4. 单击确定

当 Sync Server 小服务程序启动时,初始复制照常发生。但是,不自动执行任何后续复制。可以使用 dsyreplicate 命令请求后续复制。要请求复制:

  1. 打开 DB2 命令窗口。
  2. 切换至 DB2 Everyplace 安装目录下的 SyncServer/Server 子目录。例如,db2e/SyncServer/Server。
  3. 发出 dsyreplicate <mirror_database_name> 命令以请求复制。例如:

    dsyreplicate m_vnurse

  4. 关闭 DB2 命令窗口。

注意:


[ 页的顶部 | 上一页 | 下一页 | 目录 | 索引 ]