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 教程 » 教程:编写脚本和监控同步

 

第 2 课:建立远程 SQL Anywhere 数据库

MobiLink 用于进行涉及统一数据库服务器和多个移动数据库的同步。在本节中,您将创建两个远程数据库。对于每个数据库,您将:

  • 迁移统一模式的选定部分。

  • 创建同步发布、用户和预订。

创建 SQL Anywhere 数据库

在第 1 课中,使用了 Sybase Central 创建数据库。在本教程中,您将使用命令行实用程序。这两个工具产生的结果完全相同。

♦  创建和启动 SQL Anywhere 远程数据库
  1. 在命令提示符处,浏览到要创建远程数据库的目录。

  2. 键入以下命令创建数据库:

    dbinit -p 4096 remote1.db

    对于 remote2,键入:

    dbinit -p 4096 remote2.db

    -p 选项定义了 4K 页面大小,该大小被证实可以提高许多环境下的性能。

    有关 dbinit 选项的详细信息,请参见初始化实用程序 (dbinit)

  3. 现在,要启动数据库,请键入:

    dbeng11 remote1.db

    对于 remote2,键入:

    dbeng11 remote2.db
迁移统一数据库模式的子集

迁移统一数据库模式的子集涉及到以下任务:

  • 连接到远程数据库。

  • 创建远程服务器和外部登录。

  • 使用 Sybase Central 的 [迁移数据库向导]。

♦  将统一数据库模式的子集迁移到 remote1
  1. 单击 [开始] » [程序] » [SQL Anywhere 11] » [Sybase Central]。

  2. 连接到远程数据库:

    1. 在左窗格中,单击 [SQL Anywhere 11]。

    2. 单击 [文件] » [连接]。

    3. 单击 [标识] 选项卡。

    4. 在 [用户 ID] 字段键入 DBA

    5. 在 [口令] 字段中键入 sql

    6. 单击 [数据库] 选项卡。

    7. 在 [服务器名] 字段中键入 remote1

    8. 单击 [确定]。

  3. 创建远程服务器:

    1. 在左窗格中,右击 [远程服务器] 并选择 [新建] » [远程服务器]。

    2. 在 [您要给新远程服务器指定什么名称] 字段中键入 my_sa。单击 [下一步]。

    3. 单击 [SQL Anywhere]。单击 [下一步]。

    4. 在 [连接信息是什么] 字段中键入 sa_cons。单击 [下一步]。

    5. 单击 [下一步]。

    6. 单击 [为当前用户创建外部登录]。

    7. 在 [登录名] 字段中键入 DBA

    8. 在 [口令] 字段中键入 sql

    9. 在 [确认口令] 字段中键入 sql

    10. 单击 [完成]。

  4. 迁移统一数据库模式:

    1. 单击 [工具] » [SQL Anywhere 11] » [迁移数据库]。

    2. 单击 [下一步]。

    3. 在 [要迁移到哪个数据库] 列表中,选择 remote1。单击 [下一步]。

    4. 在 [要从哪个远程服务器迁移] 列表中,选择 my_sa。单击 [下一步]。

    5. 在 [可用表] 列表中,选择 [Product],然后单击 [添加]。单击 [下一步]。

    6. 单击 [DBA]。单击 [下一步]。

    7. 清除 [迁移数据]。单击 [完成]。

    8. 单击 [关闭]。

  5. 使用 remote2 数据库重复步骤 2 至 4。

同步预订和发布

发布用于标识远程数据库上要同步的表和列。这些表和列称为 articles。同步预订会为 MobiLink 用户预订发布。

同步预订和发布存储在远程数据库中。

♦  创建远程同步发布、同步用户和同步预订
  1. 在 Sybase Central 的左窗格中,右击 [remote1 - DBA],然后选择 [文件] » [打开 Interactive SQL]。

  2. 输入 remote1 的同步信息:

    • 在 Interactive SQL 中执行以下语句:

      CREATE PUBLICATION pub_1 (TABLE Product);
      CREATE SYNCHRONIZATION USER user_1;
      CREATE SYNCHRONIZATION SUBSCRIPTION TO pub_1
       FOR user_1 TYPE TCPIP ADDRESS 'host=localhost'
       OPTION scriptversion='ver1';
  3. 启动 Interactive SQL 并连接到 remote2。

  4. 输入 remote2 的同步信息。

    • 在 Interactive SQL 中执行以下语句:

      CREATE PUBLICATION pub_2 (TABLE Product);
      CREATE SYNCHRONIZATION USER user_2;
      CREATE SYNCHRONIZATION SUBSCRIPTION TO pub_2
       FOR user_2 TYPE TCPIP ADDRESS 'host=localhost'
       OPTION scriptversion='ver1';

现在您已准备了远程数据库和统一数据库。在下一课中,您将编写同步脚本。在第 4 课中,您将执行同步。

进一步阅读

有关定义发布和预订的详细信息,请参见发布数据