📣

TiDB Cloud Serverless 现已更名为
Starter
!此页面由 AI 自动翻译,英文原文请见
此处。

连接 AWS DMS 到 TiDB Cloud 集群

AWS Database Migration Service (AWS DMS) 是一项云服务,可以迁移关系型数据库、数据仓库、NoSQL 数据库以及其他类型的数据存储。你可以使用 AWS DMS 将数据从 TiDB Cloud 集群迁移出去,或迁移到 TiDB Cloud 集群中。本文档介绍如何将 AWS DMS 连接到 TiDB Cloud 集群。

前置条件

拥有具备足够权限的 AWS 账号

你需要拥有一个具备管理 DMS 相关资源权限的 AWS 账号。如果没有,请参考以下 AWS 文档:

拥有 TiDB Cloud 账号和 TiDB 集群

你需要拥有一个 TiDB Cloud 账号,以及 TiDB Cloud Starter、TiDB Cloud Essential 或 TiDB Cloud Dedicated 集群。如果没有,请参考以下文档创建:

配置网络

在创建 DMS 资源之前,你需要正确配置网络,以确保 DMS 能够与 TiDB Cloud 集群通信。如果你不熟悉 AWS,请联系 AWS 支持。以下为你提供几种可能的配置方式,供参考。

    对于 TiDB Cloud Starter 或 TiDB Cloud Essential,你的客户端可以通过公有端点或私有端点连接到集群。

    对于 TiDB Cloud Dedicated,你的客户端可以通过公有端点、私有端点或 VPC Peering 连接到集群。

    • 若要通过公有端点连接 TiDB Cloud Dedicated 集群,请执行以下任一操作,确保 DMS 复制实例可以访问互联网。此外,你还需要将复制实例或 NAT 网关的公有 IP 地址添加到集群的 IP 访问列表

      • 在公有子网中部署复制实例,并启用 Public accessible。更多信息请参见 互联网访问配置

      • 在私有子网中部署复制实例,并将私有子网的流量路由到公有子网。在这种情况下,你至少需要三个子网,两个私有子网和一个公有子网。两个私有子网组成一个子网组,复制实例部署在其中。然后你需要在公有子网中创建一个 NAT 网关,并将两个私有子网的流量路由到该 NAT 网关。更多信息请参见 从私有子网访问互联网

    • 若要通过私有端点连接 TiDB Cloud Dedicated 集群,请先设置私有端点,并在私有子网中部署复制实例。

    • 若要通过 VPC Peering 连接 TiDB Cloud Dedicated 集群,请先设置 VPC Peering 连接,并在私有子网中部署复制实例。

    创建 AWS DMS 复制实例

    1. 在 AWS DMS 控制台,进入 Replication instances 页面,并切换到对应的区域。建议 AWS DMS 与 TiDB Cloud 使用相同的区域。

      Create replication instance

    2. 点击 Create replication instance

    3. 填写实例名称、ARN 和描述。

    4. Instance configuration 部分,配置实例:

      • Instance class:选择合适的实例类型。更多信息请参见 选择复制实例类型
      • Engine version:保持默认配置。
      • High Availability:根据你的业务需求选择 Multi-AZSingle-AZ
    5. Allocated storage (GiB) 字段配置存储空间。

    6. 配置连接和安全性。你可以参考上一节的网络配置说明。

      • Network type - new:选择 IPv4
      • Virtual private cloud (VPC) for IPv4:选择你需要的 VPC。
      • Replication subnet group:为你的复制实例选择一个子网组。
      • Public accessible:根据你的网络配置进行设置。

      Connectivity and security

    7. 如有需要,配置 Advanced settingsMaintenanceTags 部分,然后点击 Create replication instance 完成实例创建。

    创建 TiDB Cloud DMS 端点

    在连接方面,无论将 TiDB Cloud 集群作为源端还是目标端,步骤基本相同,但 DMS 对源端和目标端的数据库设置有一些不同的要求。更多信息请参见 将 MySQL 作为源端将 MySQL 作为目标端。当将 TiDB Cloud 集群作为源端时,你只能选择 Migrate existing data,因为 TiDB 不支持 MySQL binlog。

    1. 在 AWS DMS 控制台,进入 Endpoints 页面,并切换到对应的区域。

      Create endpoint

    2. 点击 Create endpoint 创建目标数据库端点。

    3. Endpoint type 部分,选择 Source endpointTarget endpoint

    4. Endpoint configuration 部分,填写 Endpoint identifier 和 ARN 字段。然后,将 Source engineTarget engine 选择为 MySQL

    5. Access to endpoint database 字段,勾选 Provide access information manually,并按如下方式填写集群信息:

        • Server name:集群的 HOST
        • Port:集群的 PORT
        • User name:用于迁移的集群用户。确保其满足 DMS 要求。
        • Password:集群用户的密码。
        • Secure Socket Layer (SSL) mode:如果你通过公有端点连接,强烈建议将模式设置为 verify-full,以确保传输安全。如果你通过私有端点连接,可以将模式设置为 none
        • (可选)CA certificate:使用 ISRG Root X1 证书。更多信息请参见 TLS 连接到 TiDB Cloud Starter 或 Essential
        • Server name:TiDB Cloud Dedicated 集群的 HOST
        • Port:TiDB Cloud Dedicated 集群的 PORT
        • User name:用于迁移的 TiDB Cloud Dedicated 集群用户。确保其满足 DMS 要求。
        • Password:TiDB Cloud Dedicated 集群用户的密码。
        • Secure Socket Layer (SSL) mode:如果你通过公有端点连接,强烈建议将模式设置为 verify-full,以确保传输安全。如果你通过私有端点连接,可以设置为 none
        • (可选)CA certificate:根据 TLS 连接到 TiDB Cloud Dedicated 获取 CA 证书。

        Provide access information manually

      • 如果你要将端点创建为 Target endpoint,请展开 Endpoint settings 部分,勾选 Use endpoint connection attributes,然后将 Extra connection attributes 设置为 Initstmt=SET FOREIGN_KEY_CHECKS=0;

      • 如有需要,配置 KMS KeyTags 部分。点击 Create endpoint 完成实例创建。

      文档内容是否有帮助?