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

SQL Anywhere 11.0.1 (中文) » MobiLink - 入门 » MobiLink 技术简介 » MobiLink 模型 » 部署模型

 

同步已部署的模型

部署模型时,可以选择在 [创建同步模型向导] 的第一页上所选择的位置处创建目录和文件。将根据当时所选择的模型名称为这些文件和目录命名。

假定您将模型命名为 MyModel 并保存在 c:\SyncModels 中。根据所选择的部署选项,可以有以下文件:

目录(基于示例的名称和位置) 说明和内容(基于示例的名称)
c:\SyncModels 包含模型文件,保存为 MyModel.mlsm
c:\SyncModels\MyModel 包含保存部署文件的文件夹。
c:\SyncModels\MyModel\consolidated

包含用于统一数据库的部署文件:

  • MyModel_consolidated.sql - 用于设置统一数据库的 SQL 文件。
  • MyModel_consolidated.bat - 用于运行 SQL 文件的批处理文件。
c:\SyncModels\MyModel\mlsrv

包含用于 MobiLink 服务器的部署文件:

  • MyModel_mlsrv.bat - 用于运行 MobiLink 服务器的批处理文件。如果已经设置服务器启动的同步,则运行该文件也将启动通告程序。
c:\SyncModels\MyModel\remote

包含用于远程数据库的部署文件:

  • dblsn.txt - 如果设置服务器启动的同步,它将是包含监听器选项设置的文本文件。该文件由 MyModel_dblsn.bat 使用。
  • MyModel_dblsn.bat - 如果设置服务器启动的同步,该文件为用于运行监听器的批处理文件。
  • MyModel_dbmlsync.bat - 如果部署了一个 SQL Anywhere 远程数据库,则它是用于通过 dbmlsync 同步 SQL Anywhere 数据库的批处理文件。
  • MyModel_remote.bat - 用于运行 MyModel_remote.sql 的批处理文件。
  • MyModel_remote.db - 如果选择创建一个新的 SQL Anywhere 远程数据库,则此文件即是该数据库。
  • MyModel_remote.sql - 用于设置新 SQL Anywhere 远程数据库的 SQL 文件。
  • MyModel_remote.udb - 如果选择创建一个新的 UltraLite 远程数据库,则此文件即是该数据库。
  • MyModel_ulsync.bat - 如果部署了一个 UltraLite 数据库,则为用于通过 ulsync 实用程序来测试与 UltraLite 远程数据库的同步的批处理文件。
运行批处理文件

必须从命令行运行由 [部署同步模型向导] 创建的批处理文件,并且必须将连接信息包括在内。在运行这些批处理文件之前,可能需要创建 ODBC 数据源。

请参见创建 ODBC 数据源

♦  使用批处理文件同步模型
  1. 如果尚未在统一数据库上运行 MobiLink 设置脚本,则在部署之前运行这些脚本。

    请参见建立统一数据库

  2. 在运行 [部署同步模型向导] 时,如果选择创建一个在以后运行的文件(在 [统一数据库部署目标] 页面上),则必须运行位于模型的 consolidated 子文件夹中的批处理文件。此文件创建您已选择在统一数据库中创建的所有对象,其中包括同步脚本、影子表和触发器。该文件也可在统一数据库中注册 MobiLink 用户。

    要运行此文件,请浏览到 consolidated 目录,然后运行以 _consolidated.bat 结尾的文件。必须将连接信息包括在内。例如,运行:

    MyModel_consolidated.bat "dsn=MY_ODBC_DATASOURCE"
  3. 在运行 [部署同步模型向导] 时,如果选择创建一个在以后运行的文件(在 [新 SQL Anywhere 远程数据库] 页面或 [新 UltraLite 远程数据库] 页面上),则必须运行位于 remote 目录中的批处理文件。此文件将创建您已选择要在远程数据库中创建的所有对象,其中包括表、发布、预订和 MobiLink 用户。

    要运行此文件,请浏览到 remote 目录,然后运行以 _remote.bat 结尾的文件。例如,运行:

    MyModel_remote.bat

    如果要使用现有远程数据库,系统将提示您输入口令。

  4. 通过运行 mlsrv\MyModel_mlsrv.bat 启动 MobiLink 服务器。如果设置服务器启动的同步,则运行该文件也将启动通告程序。必须将连接信息包括在内。例如,运行:

    MyModel_mlsrv.bat "dsn=MY_ODBC_DATASOURCE"
  5. 执行同步。

    对于 SQL Anywhere 远程数据库:

    • 将 REMOTE DBA 权限授予非 DBA 用户(建议)。例如,使用 Interactive SQL 执行以下语句:

      GRANT REMOTE DBA
      TO userid, IDENTIFIED BY password
    • 以具有 REMOTE DBA 权限的用户身份进行连接。

    • 启动位于 remote 目录中的远程数据库。例如,运行:

      dbeng11 MyModel_remote.db
    • 启动 dbmlsync、SQL Anywhere MobiLink 客户端。运行 remote 目录中以 _dbmlsync.bat 结尾的文件。必须将连接信息包括在内。例如,运行:

      MyModel_dbmlsync.bat "uid=dba;pwd=sql;eng=MyModel_remote"

    对于 UltraLite 远程数据库:

    • 要测试同步,请运行 remote 目录中以 _ulsync.bat 结尾的文件。

    • 或者,运行 UltraLite 应用程序。

  6. 如果设置服务器启动的同步,则需要执行第一次同步,然后启动监听器。要创建远程 ID 文件,必须进行第一次同步。要启动监听器,请运行 remote 目录中以 _dblsn.bat 结尾的文件。例如,运行:

    MyModel_dblsn.bat
另请参见