将数据从 Azure SQL 托管实例复制到自治 AI 事务处理

了解如何使用 OCI GoldenGate 将数据从 Azure SQL 托管实例复制到自治 AI 事务处理。

环境设置:Azure SQL 托管实例

要成功完成此快速入门,您必须:

  1. 创建 Azure SQL 托管实例资源

  2. 配置 Azure SQL 托管实例以允许公共连接

  3. 使用 SQL 客户机连接到 Azure SQL 托管实例,然后完成以下步骤:

    1. 创建 GGADMIN 用户:

      CREATE login GGADMIN with password = '<password>'
      Create user GGADMIN for login GGADMIN
      ALTER SERVER ROLE sysadmin ADD MEMBER GGADMIN

      注:只有 sysadmin 角色才能添加 TRANDATA 和脉动表。然后,可以删除 sysadmin 权限并使用 db_owner: ALTER ROLE db_owner ADD MEMBER GGADMIN;

    2. 创建数据库:

      Create database SRC_OCIGGLL
    3. 以新创建的用户 (GGADMIN) 和数据库 (SRC_OCIGGLL) 的身份断开和重新连接。

    4. 在数据库级别启用更改数据捕获 (CDC):

      EXECUTE sys.sp_cdc_enable_db
    5. 创建模式:

      Create schema GGADMIN
    6. 运行 SQL 脚本

环境设置:自治 AI 事务处理

  1. 下载并解压缩示例数据库方案

  2. 解锁 GGADMIN 用户。

    1. 在 Oracle Cloud 控制台中,从“Autonomous AI Databases(自治 AI 数据库)”页面中选择 ATP 实例,以查看其详细信息并访问 Database Actions。

    2. 选择数据库操作,然后选择数据库用户

    3. 找到 GGADMIN ,然后选择其省略号菜单(三个点)并选择编辑

    4. 在 "Edit User"(编辑用户)面板中,输入 GGADMIN 密码,确认密码,然后取消选择 Account is Locked

    5. 选择 Apply Changes(应用更改)

  3. 加载目标示例方案和数据。

    1. 从“Database Actions(数据库操作)”菜单中,选择 SQL

    2. 将脚本从 OCIGGLL_OCIGGS_SETUP_USERS_ADW.sql 复制并粘贴到 SQL 工作表中。

    3. 选择运行脚本。“Script Output(脚本输出)”选项卡显示确认消息。

    4. 清除 SQL 工作表,然后从 OCIGGLL_OCIGGS_SRC_MIRROR_USER_SEED_DATA.sql 复制并粘贴 SQL。

    5. 要验证表是否已成功创建,请关闭 SQL 窗口,然后重新打开它。在“Navigator(导航器)”选项卡中,查找 SRC_OCIGGLL 方案,然后从其各自的下拉列表中选择表。

任务 1:创建 OCI GoldenGate 资源

此快速入门示例需要源和目标的部署和连接。

  1. 为源 SQL Server 和目标自治 AI 事务处理创建部署

  2. 使用以下值为 Azure SQL 数据库创建 Azure SQL 托管实例连接

    1. 对于数据库,输入 SRC_OCIGGLL

    2. 对于端口,输入公共端点的 3342

    3. 对于主机,使用 Azure 控制台中 Azure SQL 托管实例详细信息页中的服务器名称(例如 xyz.database.windows.net)。

    4. 对于 User ,输入 GGADMIN

    5. 对于 Password(密码),输入 GGADMIN 用户密码。

    6. 对于安全协议,从下拉列表中选择

  3. 将 Azure SQL 托管实例连接分配给 SQL Server 部署

  4. 创建 GoldenGate 连接,然后将其分配给 SQL Server 部署

  5. 创建自治 AI 事务处理 (ATP) 连接

  6. 将 ATP 连接分配给 Oracle 部署

任务 2:创建提取

创建初始加载和更改数据捕获提取。

  1. 在“Deployments(部署)”页面上,选择在任务 1 中创建的 SQL Server 部署。

  2. 在“部署详细信息”页上,选择启动控制台

  3. 使用在任务 1 中创建部署时指定的管理员身份证明登录源 SQL Server 部署控制台。

  4. 添加交易信息

    1. 在导航菜单中,依次选择 DB Connections(DB 连接)、源数据库和 TRANDATA

    2. 在“TRANDATA”页上,选择添加 TRANDATA (加号图标)。

    3. 在“添加 Trandata”面板中,对于方案名称,输入 SRC_OCIGGLL,然后选择提交

      提示:提交时不会刷新屏幕。要确认已添加 TRANDATA,请在搜索字段中输入 SRC_OCIGGLL,然后选择搜索。返回 SRC_OCIGGLL,并准备 6 个表进行实例化。

  5. 接下来,在导航菜单中,依次选择任务清除更改数据,然后完成以下操作:

    1. 添加清除更改数据(添加图标)上选择。

    2. 输入名称。

    3. 选择提交

  6. 添加初始加载提取。

    1. 在“提取”页上,选择添加提取(加号图标),然后按如下方式填写表单:

      • 在“提取信息”页面上:
        1. 对于提取类型,选择“初始加载”。

        2. 进程名称中,输入 EIL

        3. 选择 Next

      • 在“参数文件”页上,将 MAP *.*, TARGET *.*; 替换为以下内容:

        TABLE SRC_OCIGGLL.*;
    2. 选择创建并运行

    返回到“提取”页面,在此页面中可能需要一些时间才能开始提取。然后,可以选择“提取”以查看其详细信息并查看报告文件。它列出所有表以及每个表的导出记录数。

  7. 添加更改数据捕获提取。

    1. 在导航菜单中,选择提取

    2. 在“提取”页上,选择添加提取(加号图标),然后按如下方式填写表单:

      • 在“提取信息”页面上:

        1. 对于提取类型,选择“更改数据捕获”。

        2. 进程名称中,输入 ECDC

        3. 选择 Next

      • 在“提取选项”页面上:

        1. 对于源身份证明,选择源数据库的别名

        2. 对于提取线索名称,输入两个字符的名称,例如 C1

        3. 选择 Next

      • 在“参数文件”页上,将 MAP *.*, TARGET *.*; 替换为以下内容:

        TABLE SRC_OCIGGLL.*;
    3. 选择创建并运行

任务 3:创建分发路径

  1. 如果使用 GoldenGate 身份证明存储,请在目标 Oracle 部署中为分发路径创建用户,并在源 SQL Server 部署中创建路径连接。如果使用 IAM 身份证明存储,请跳过此步骤。

  2. 在源 Azure SQL 托管实例 GoldenGate 部署控制台中,创建初始加载提取的分发路径。在示例中,我们将初始加载提取命名为 EIL

  3. 创建更改数据捕获提取的分配路径。在示例中,我们将更改数据捕获提取命名为 ECDC

任务 4:创建副本

  1. 启动并登录在任务 1 中创建的 Oracle 部署控制台。

  2. 打开导航菜单,然后选择 DB Connections(DB 连接)

  3. 选择连接到数据库

  4. 添加检查点表。

    1. 在导航菜单中,选择 Checkpoint

    2. 在“检查点”页中,选择添加检查点(加号图标)。

    3. 对于检查点表,输入 SRCMIRROR_OCIGGLL.CHECKTABLE

    4. 选择提交

      新的检查点表将显示在列表中。

  5. 为初始加载提取添加复制:

    1. 依次选择 Administrator ServiceReplicats

    2. 在 "Replicats"(复制)页面上,选择 Add Replicat(添加复制)(加号图标),然后按如下方式填写表单:

      1. 在 "Replicat Information" 上,填写以下表单字段,然后选择 Next

        1. 对于复制类型,选择未集成的复制

        2. 对于进程名称,输入名称,如 RIL

      2. 在“复制选项”页面上,填写以下表单字段,然后选择下一步

        1. 对于名称,输入任务 2 (I1) 中的线索名称。

        2. 对于,选择自治 AI 数据库连接的域。

        3. 对于别名,选择自治 AI 数据库连接的别名。

        4. 对于检查点表,选择在步骤 4 中创建的检查点表。

      3. 在“参数”页上,添加以下映射,然后选择创建并运行

        MAP SRC_OCIGGLL.*, TARGET SRCMIRROR_OCIGGLL.*;

      返回到 "Overview"(概述)页面,您可以在该页面中查看复制详细信息。

    3. 选择复制 ( RIL ) 并查看其 Details

    4. 选择统计信息并查看插入数。刷新页。

      • 如果插入数未更改,则已装入初始装入中的所有记录,您可以停止复制 ( RIL )。

      • 如果插入数继续增加,则继续刷新页面,直到全部加载初始加载记录,然后再继续。

  6. 添加用于更改数据捕获的复制:

    1. 在 "Replicats"(复制)页面上,选择 Add Replicat(添加复制)(加号图标),然后按如下方式填写表单:

      1. 在 "Replicat Information" 上,填写以下表单字段,然后选择 Next

        1. 对于复制类型,选择未集成的复制

        2. 对于进程名称,输入名称,如 RCDC

      2. 在“复制选项”页面上,填写以下表单字段,然后选择下一步

        1. 对于线索名称,输入任务 2 (C1) 中的线索名称。

        2. 对于,选择自治 AI 数据库连接的域。

        3. 对于别名,选择自治 AI 数据库连接的别名。

        4. 对于检查点表,选择在步骤 4 中创建的检查点表。

      3. 在“参数”页上,添加以下映射:

        MAP SRC_OCIGGLL.*, TARGET SRCMIRROR_OCIGGLL.*;
    2. 选择创建。请勿运行复制。

    3. 在 "Replicats"(复制)页面上,选择 "Replicat for Initial Load"(初始装入的复制)( RIL ) 并查看其详细信息

    4. 选择统计信息并查看插入数。刷新页。

      • 如果插入数未更改,则已加载初始加载中的所有记录,您可以停止复制 (RIL)。

      • 如果插入数继续增加,则继续刷新页面,直到全部加载初始加载记录,然后再继续。

      注:如果看不到任何插入,请选择性能度量服务,选择提取,然后选择数据库统计信息

    5. 返回到“管理服务复制”页,然后启动 RCDC 复制。

    6. 启动 RCDC 之后,查看其详细信息统计信息以查看插入数。