Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.1 » MobiLink - 入门 » MobiLink 教程 » 教程:MobiLink 简介

 

第 12 课:使用 MobiLink 监控器验证冲突脚本

本课假定您已完成前面的所有课程。 请参见第 1 课:建立 MobiLink 统一数据库

在本课中,您将通过更新客户端数据库中的同一行来生成冲突,然后使用在上一课中启动的 MobiLink 监控器检测该冲突。

在本方案中,两个客户开始时的 Screwmaster Drill 库存都为 10 件。第一个客户卖出 3 件并更新了远程数据库,然后与统一数据库进行同步。第二个客户卖出 4 件并更新了远程数据库,然后与统一数据库进行同步。第二个客户以为统一数据库会包含值 6,但却由于第一笔销售而遇到冲突。出现这种情况时,MobiLink 服务器会解决冲突。

 ♦ 生成更新冲突并使用 MobiLink 监控器检测该冲突
  1. 取消暂停图表滚动。

    单击 [监控器] » [暂停图表滚动]。

  2. 如果尚未连接 sync_mlintro_remote 数据库,则通过 Interactive SQL 进行连接。

    运行以下命令:

    dbisql -c "SERVER=sync_mlintro_remote;UID=DBA;PWD=sql"
  3. 将 Screwmaster Drill 数量更新为 7。

    执行以下 SQL 语句:

    UPDATE Product SET quantity = 7
        WHERE name ='Screwmaster Drill';
    
    COMMIT;
  4. 同步 sync_mlintro_remote 数据库与统一数据库。

    运行以下命令:

    dbmlsync -c "SERVER=sync_mlintro_remote;UID=DBA;PWD=sql" -v+

    统一数据库将 Screwmaster Drill 数量更新为 7。

  5. 关闭客户端同步窗口。

    单击 [关闭]。

  6. 如果尚未连接 sync_mlintro_remote2 数据库,则通过 Interactive SQL 进行连接。

    运行以下命令:

    dbisql -c "SERVER=sync_mlintro_remote2;UID=DBA;PWD=sql"
  7. 将 Screwmaster Drill 数量更新为 6。

    UPDATE Product SET quantity = 6
        WHERE name ='Screwmaster Drill';
    
    COMMIT;
  8. 同步 sync_mlintro_remote2 数据库与统一数据库。

    运行以下命令:

    dbmlsync -c "SERVER=sync_mlintro_remote2;UID=DBA;PWD=sql" -v+

    统一数据库将 Screwmaster Drill 数量更新为 3。

  9. 关闭客户端同步窗口。

    单击 [关闭]。

  10. 切换到 MobiLink 监控器并查看同步结果。

  11. 暂停图表滚动。

    单击 [监控器] » [暂停图表滚动]。

  12. 使用 MobiLink 监控器的 [一览表] 窗格(底部窗格)、[图表] 窗格、[运用图形] 窗格和 [详细信息表],查看关于同步的统计信息。

    1. 在 MobiLink 监控器的 [概述] 窗格中找到同步项。生成更新冲突的 sync_mlintro_remote2 同步以红色显示。

    2. 要在 [图表] 窗格中查看 sync_mlintro_remote2 同步,请单击 [概述] 窗格中的同步对象并在其上方拖动鼠标。

      该同步对象以您为 conflict_detected 监视项目所选的模式显示。

    3. 使用缩放工具查看同步详细信息。

      从 [视图] 菜单中选择 [放大]。

    4. 双击同步对象或 [详细信息表] 窗格中的相应行以查看同步属性,然后单击 [上载] 选项卡查看冲突的更新的数量。

  13. 前进至第 13 课:使用 SQL Anywhere 监控器监控 MobiLink 资源

 另请参见