将数据从 HeatWave 复制到 Google Cloud Storage

了解如何使用 OCI GoldenGate 将数据从 HeatWave 复制到 Google Cloud Storage。

开始之前

要成功完成此快速入门,您必须具有以下各项:

环境设置:HeatWave

要为此快速入门设置环境,请执行以下操作:

  1. 下载示例数据脚本,然后在 OCI 数据库上的 HeatWave 上运行该脚本以创建数据库并加载数据。

  2. 使用以下脚本创建 ggadmin 用户。请记住将 <ggadmin-password> 替换为有效的口令:

    CREATE USER 'ggadmin' IDENTIFIED BY '<ggadmin-password>';
    GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT, CREATE,CREATE VIEW, EVENT, INSERT, UPDATE, DROP,EXECUTE, DELETE ON *.* TO 'ggadmin';
  3. 打开 port 3306,OCI GoldenGate 可以通过该服务进行连接。

    1. 在 Oracle Cloud 控制台中,找到基于 OCI 的 HeatWave 数据库使用的子网。

    2. 在子网的安全列表中,为 port TCP/3306 创建入站规则。

任务 1:创建 OCI GoldenGate 资源

  1. 为源 HeatWave 数据库创建 MySQL 部署

  2. 为目标 Google Cloud Storage 创建大数据部署

  3. 创建与源 MySQL Heatwave 数据库的连接

  4. 连接到 Google Cloud Storage

  5. 创建与 GoldenGate 的连接,然后将此连接分配给源 MySQL 部署

  6. 将源连接分配给源 MySQL 部署

  7. 将目标连接分配给目标大数据部署

任务 2:创建提取

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

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

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

  4. 添加具有以下值的更改数据捕获提取

    • 提取类型:更改数据捕获提取

    • 流程名称ECDC

    • 提取线索名称C1

    • 参数文件:将 MAP *.*, TARGET *.*; 替换为 TABLE SRC_OCIGGLL.*;

任务 3:创建目标大数据部署的分发路径

  1. 如果使用 IAM 身份证明存储,请继续执行步骤 3。如果使用 GoldenGate 身份证明存储,则创建源 GoldenGate 用于连接到目标 GoldenGate 的用户。

    1. 在“部署”页上,选择目标大数据部署。

    2. 在部署详细信息页上,选择启动控制台,然后以管理员用户身份登录。

    3. 在部署控制台导航菜单中,选择用户管理

    4. 选择添加新用户(加号图标),按如下所示填写字段,然后选择提交

      • 对于用户名,输入 ggsnet

      • 对于角色,选择运算符

      • 输入两次口令进行验证。

  2. source MySQL 部署控制台中,为上一步中创建的用户创建路径连接。

    1. 打开导航菜单,然后选择路径连接

    2. 选择添加路径连接(加号图标),按如下方式填写字段,然后选择提交

      • 对于身份证明别名,输入 dpuser

      • 对于用户 ID ,输入 ggsnet

      • 对于 Password(密码),输入上一步中使用的相同密码。

  3. source MySQL 部署控制台中,使用以下值添加分发路径

    1. 源选项页上:

      • 对于源提取,选择在任务 2 中创建的提取。

      • 对于线索名称,输入两个字符的名称,例如 C1

    2. 目标选项页上:

      • 对于目标主机,输入目标部署的主机域。

      • 端口号中,输入 443

      • 对于线索名称,输入两个字符的名称,例如 C1

      • 对于别名,输入在步骤 2 中创建的身份证明别名。

  4. 在目标 OCI GoldenGate 大数据部署控制台中,查看分配路径后创建的接收器路径:

    1. 选择接收者服务

    2. 查看接收方路径详细信息。

任务 4:为 Google Cloud Storage 添加复制

  1. 在大数据部署中,选择复制,然后选择添加复制(加号图标)

  2. Add a Replicat ,包含以下值:

    1. 在 "Replicat Information" 页面上的 "Replicat type" 下,选择 Classic Replicat 并输入进程名称。

    2. 在“复制选项”页面上:

      • 对于名称,输入任务 2 中的线索名称。

      • 对于目标,选择 Google Cloud Storage。

      • 对于别名,选择在任务 1 中创建的 Google Cloud Storage 连接。

    3. 在“复制参数”页上,保留默认值。

    4. 在“属性文件”页上,查找 gg.eventhandler.gcs.bucketMappingTemplate=<gcs bucket>,然后将 <gcs bucket> 替换为存储桶的名称。如果您没有存储桶,OCI GoldenGate 将为您创建一个存储桶。

    5. 选择创建并运行

任务 5:验证从 HeatWave 到 Google Cloud Storage 的数据复制

对源 HeatWave 数据库执行更新以验证复制到 Google Cloud Storage。

  1. 在 OCI Bastion 中,使用 MySQL IP 和 port 3306 创建 SSH 端口转发会话。添加公共 SSH 密钥。

  2. 使用私钥和 port 3306 连接到 Cloud Shell 中的 MySQL。

  3. 成功连接后,运行以下命令:

    mysqlsh admin@localhost:3306 --sql
  4. 运行以下脚本以对 HeatWave 数据库执行插入:

    use SRC_OCIGGLL;
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1000,'Houston',20,743113);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1001,'Dallas',20,822416);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1002,'San Francisco',21,157574);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1003,'Los Angeles',21,743878);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1004,'San Diego',21,840689);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1005,'Chicago',23,616472);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1006,'Memphis',23,580075);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1007,'New York City',22,124434);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1008,'Boston',22,275581);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1009,'Washington D.C.',22,688002);
    commit;
  5. 在源 MySQL 部署控制台中,选择“更改数据捕获提取”名称 (ECDC),然后选择统计信息。验证 SRC_OCIGGLL.SRC_CITY 是否具有 10 个插入。

  6. 在目标大数据部署控制台中,选择“复制名称”,然后选择统计信息。验证 SRC_OCIGGLL.SRC_CITY 是否具有 10 个插入。

  7. 在 Amazon Kinesis 中,您可以检查目标数据流/数据查看器中的消息。