📣
TiDB Cloud Premium 开放公测中。为企业级工作负载提供无限扩展、即时弹性伸缩和高级安全保障。此页面由 AI 自动翻译,英文原文请见此处。

从 TiDB Cloud Premium 导出数据



TiDB Cloud 支持将数据从 TiDB Cloud Premium 实例导出到外部存储服务。你可以将导出的数据用于备份、迁移、数据分析或其他用途。

虽然你也可以使用 mysqldump 和 TiDB Dumpling 等工具导出数据,但 TiDB Cloud 提供的导出功能为从 TiDB Cloud Premium 实例导出数据提供了更便捷、更高效的方式。它具有以下优势:

  • 便捷性:导出服务提供了一种简单易用的方式来从 TiDB Cloud Premium 实例导出数据,无需额外的工具或资源。
  • 隔离性:导出服务使用独立的计算资源,确保与在线服务所使用的资源相隔离。
  • 一致性:导出服务可在不加锁的情况下确保导出数据的一致性,因此不会影响你的在线服务。

导出位置

你可以将数据导出到以下外部存储位置:

Amazon S3

要将数据导出到 Amazon S3,你需要提供以下信息:

  • URI:s3://<bucket-name>/<folder-path>/
  • 以下访问凭证之一:
    • An access key:确保该 access key 具有 s3:PutObject 权限。
    • A role ARN:确保该 role ARN(Amazon Resource Name)具有 s3:PutObject 权限。请注意,只有托管在 AWS 上的 TiDB Cloud Premium 实例支持 role ARN。

更多信息,请参见 Configure External Storage Access

Azure Blob Storage

要将数据导出到 Azure Blob Storage,你需要提供以下信息:

  • URI:azure://<account-name>.blob.core.windows.net/<container-name>/<folder-path>/https://<account-name>.blob.core.windows.net/<container-name>/<folder-path>/
  • 访问凭证:你的 Azure Blob Storage 容器的 shared access signature (SAS) token。确保该 SAS token 对 ContainerObject 资源具有 ReadWrite 权限。

更多信息,请参见 Configure External Storage Access

Alibaba Cloud OSS

要将数据导出到 Alibaba Cloud OSS,你需要提供以下信息:

  • URI:oss://<bucket-name>/<folder-path>/
  • 访问凭证:你的 Alibaba Cloud 账户的 AccessKey pair。确保该 AccessKey pair 具有 oss:PutObjectoss:GetBucketInfo 权限。

更多信息,请参见 Configure External Storage Access

导出选项

数据过滤

TiDB Cloud console 支持按所选数据库和表导出数据。

数据格式

你可以按以下格式导出数据:

  • SQL:以 SQL 格式导出数据。
  • CSV:以 CSV 格式导出数据。你可以指定以下选项:
    • delimiter:指定导出数据中使用的定界符。默认定界符为 "
    • separator:指定导出数据中用于分隔字段的字符。默认分隔符为 ,
    • header:指定是否在导出数据中包含表头行。默认值为 true
    • null-value:指定导出数据中表示 NULL 值的字符串。默认值为 \N

Schema 和数据按照以下命名约定导出:

ItemNot compressedCompressed
Database schema{database}-schema-create.sql{database}-schema-create.sql.{compression-type}
Table schema{database}.{table}-schema.sql{database}.{table}-schema.sql.{compression-type}
Data{database}.{table}.{0001}.csv{database}.{table}.{0001}.csv.{compression-type}
Data{database}.{table}.{0001}.sql{database}.{table}.{0001}.sql.{compression-type}

数据压缩

你可以使用以下算法压缩导出的 CSV 和 SQL 数据:

  • gzip(默认):使用 gzip 压缩导出数据。
  • snappy:使用 snappy 压缩导出数据。
  • zstd:使用 zstd 压缩导出数据。
  • none:不压缩导出数据。

示例

将数据导出到 Amazon S3

  1. 登录 TiDB Cloud console 并进入 TiDB Instances 页面。

    提示:

    如果你属于多个组织,请先使用左上角的组合框切换到目标组织。

  2. 点击目标 TiDB Cloud Premium 实例的名称进入其概览页面,然后在左侧导航栏中点击 Data > Export

  3. Export 页面右上角点击 Export Data。然后配置以下设置:

    • Task Name:输入导出任务名称。默认值为 SNAPSHOT_{snapshot_time}
    • Source Connection:输入 TiDB Cloud Premium 实例的 UsernamePassword,然后点击 Test Connection 验证凭证。
    • Target Connection
      • Storage Provider:选择 Amazon S3。
      • Folder URI:输入 Amazon S3 的 URI,格式为 s3://<bucket-name>/<folder-path>/
      • Bucket Access:选择以下访问凭证之一,然后填写凭证信息:
        • AWS Role ARN:输入具有访问 bucket 权限的 role ARN。建议使用 AWS CloudFormation 创建该 role ARN。更多信息,请参见 Configure External Storage Access
        • AWS Access Key:输入具有访问 bucket 权限的 access key ID 和 access key secret。
    • Exported Data:选择要导出的数据库或表。
    • Data Format:选择 SQLCSV
    • Compression:选择 GzipSnappyZstdNone
  4. 点击 Export

将数据导出到 Azure Blob Storage

  1. 登录 TiDB Cloud console 并进入 TiDB Instances 页面。

    提示:

    如果你属于多个组织,请先使用左上角的组合框切换到目标组织。

  2. 点击目标 TiDB Cloud Premium 实例的名称进入其概览页面,然后在左侧导航栏中点击 Data > Export

  3. Export 页面右上角点击 Export Data。然后配置以下设置:

    • Task Name:输入导出任务名称。默认值为 SNAPSHOT_{snapshot_time}
    • Source Connection:输入 TiDB Cloud Premium 实例的 UsernamePassword,然后点击 Test Connection 验证凭证。
    • Target Connection
      • Storage Provider:选择 Azure Blob Storage。
      • Folder URI:输入 Azure Blob Storage 的 URI,格式为 azure://<account-name>.blob.core.windows.net/<container-name>/<folder-path>/
      • SAS Token:输入具有访问 container 权限的 SAS token。建议使用 Azure ARM template 创建 SAS token。更多信息,请参见 Configure External Storage Access
    • Exported Data:选择要导出的数据库或表。
    • Data Format:选择 SQLCSV
    • Compression:选择 GzipSnappyZstdNone
  4. 点击 Export

将数据导出到 Alibaba Cloud OSS

  1. 登录 TiDB Cloud console 并进入 TiDB Instances 页面。

    提示:

    如果你属于多个组织,请先使用左上角的组合框切换到目标组织。

  2. 点击目标 TiDB Cloud Premium 实例的名称进入其概览页面,然后在左侧导航栏中点击 Data > Export

  3. Export 页面右上角点击 Export Data

    • Task Name:输入导出任务名称。默认值为 SNAPSHOT_{snapshot_time}
    • Source Connection:输入 TiDB Cloud Premium 实例的 UsernamePassword,然后点击 Test Connection 验证凭证。
    • Target Connection
      • Storage Provider:选择 Alibaba Cloud OSS。
      • Folder URI:输入要导出数据的 Alibaba Cloud OSS URI,格式为 oss://<bucket-name>/<folder-path>/
      • AccessKey IDAccessKey Secret:输入具有访问 bucket 权限的 AccessKey ID 和 AccessKey Secret。
    • Exported Data:选择要导出的数据库或表。
    • Data Format:选择 SQLCSV
    • Compression:选择 GzipSnappyZstdNone
  4. 点击 Export

取消导出任务

如需取消正在进行的导出任务,请执行以下步骤:

  1. 登录 TiDB Cloud console 并进入 TiDB Instances 页面。

    提示:

    如果你属于多个组织,请先使用左上角的组合框切换到目标组织。

  2. 点击目标 TiDB Cloud Premium 实例的名称进入其概览页面,然后在左侧导航栏中点击 Data > Export

  3. Export 页面查看导出任务列表。

  4. 选择要取消的导出任务,然后点击 Action

  5. 在下拉列表中选择 Cancel。请注意,你只能取消状态为 Running 的导出任务。

文档内容是否有帮助?