進行オフセットは、サブスクリプションのすべての操作がアップロードおよび確認されたところまでの時点を示す整数値です。dbmlsync ユーティリティは、オフセットを使用してどのデータをアップロードするか決定します。リモートデータベースでは、オフセットは SYS.ISYSSYNC システムテーブルの progress カラムに格納されます。統合データベースでは、オフセットは ml_subscription テーブルの progress カラムに格納されます。
リモートごとに、リモートデータベースと統合データベースが各サブスクリプションに対するオフセットを管理します。Mobile Link ユーザーが同期を行うと、その Mobile Link ユーザーに関連するすべてのサブスクリプションに対してオフセットが確認されます。これは、その時点でサブスクリプションの同期が取られていない場合でも同様です。このように処理されるのは、複数のパブリケーションに同じデータを含めることができるためです。唯一の例外として、dbmlsync は、アップロードを試みるまでサブスクリプションの進行オフセットをチェックしません。
リモートデータベースのオフセットと統合データベースのオフセットが一致しない場合、デフォルトの動作はリモートデータベースのオフセットを統合データベースの値で更新し、そのオフセットに基づいて新しいアップロードを送信します。通常、このデフォルト動作が適切です。たとえば、統合データベースがバックアップからリストアされ、リモートトランザクションログが変更されていないとき、またはアップロードは成功したが通信エラーによりアップロードの確認が送信されないときに、広く有効です。
進行オフセットが一致しない場合の大部分は、統合データベース進行値を使用することで自動的に解決されます。進行オフセットの問題の修正が必要になることがまれにありますが、この場合は dbmlsync -r オプションを使用できます。
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |