从 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。
- An access key:确保该 access key 具有
更多信息,请参见 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 对
Container和Object资源具有Read和Write权限。
更多信息,请参见 Configure External Storage Access。
Alibaba Cloud OSS
要将数据导出到 Alibaba Cloud OSS,你需要提供以下信息:
- URI:
oss://<bucket-name>/<folder-path>/ - 访问凭证:你的 Alibaba Cloud 账户的 AccessKey pair。确保该 AccessKey pair 具有
oss:PutObject和oss:GetBucketInfo权限。
更多信息,请参见 Configure External Storage Access。
导出选项
数据过滤
TiDB Cloud console 支持按所选数据库和表导出数据。
数据格式
你可以按以下格式导出数据:
SQL:以 SQL 格式导出数据。CSV:以 CSV 格式导出数据。你可以指定以下选项:delimiter:指定导出数据中使用的定界符。默认定界符为"。separator:指定导出数据中用于分隔字段的字符。默认分隔符为,。header:指定是否在导出数据中包含表头行。默认值为true。null-value:指定导出数据中表示 NULL 值的字符串。默认值为\N。
Schema 和数据按照以下命名约定导出:
数据压缩
你可以使用以下算法压缩导出的 CSV 和 SQL 数据:
gzip(默认):使用gzip压缩导出数据。snappy:使用snappy压缩导出数据。zstd:使用zstd压缩导出数据。none:不压缩导出数据。
示例
将数据导出到 Amazon S3
登录 TiDB Cloud console 并进入 TiDB Instances 页面。
提示:
如果你属于多个组织,请先使用左上角的组合框切换到目标组织。
点击目标 TiDB Cloud Premium 实例的名称进入其概览页面,然后在左侧导航栏中点击 Data > Export。
在 Export 页面右上角点击 Export Data。然后配置以下设置:
- Task Name:输入导出任务名称。默认值为
SNAPSHOT_{snapshot_time}。 - Source Connection:输入 TiDB Cloud Premium 实例的 Username 和 Password,然后点击 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:选择 SQL 或 CSV。
- Compression:选择 Gzip、Snappy、Zstd 或 None。
- Task Name:输入导出任务名称。默认值为
点击 Export。
将数据导出到 Azure Blob Storage
登录 TiDB Cloud console 并进入 TiDB Instances 页面。
提示:
如果你属于多个组织,请先使用左上角的组合框切换到目标组织。
点击目标 TiDB Cloud Premium 实例的名称进入其概览页面,然后在左侧导航栏中点击 Data > Export。
在 Export 页面右上角点击 Export Data。然后配置以下设置:
- Task Name:输入导出任务名称。默认值为
SNAPSHOT_{snapshot_time}。 - Source Connection:输入 TiDB Cloud Premium 实例的 Username 和 Password,然后点击 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:选择 SQL 或 CSV。
- Compression:选择 Gzip、Snappy、Zstd 或 None。
- Task Name:输入导出任务名称。默认值为
点击 Export。
将数据导出到 Alibaba Cloud OSS
登录 TiDB Cloud console 并进入 TiDB Instances 页面。
提示:
如果你属于多个组织,请先使用左上角的组合框切换到目标组织。
点击目标 TiDB Cloud Premium 实例的名称进入其概览页面,然后在左侧导航栏中点击 Data > Export。
在 Export 页面右上角点击 Export Data:
- Task Name:输入导出任务名称。默认值为
SNAPSHOT_{snapshot_time}。 - Source Connection:输入 TiDB Cloud Premium 实例的 Username 和 Password,然后点击 Test Connection 验证凭证。
- Target Connection:
- Storage Provider:选择 Alibaba Cloud OSS。
- Folder URI:输入要导出数据的 Alibaba Cloud OSS URI,格式为
oss://<bucket-name>/<folder-path>/。 - AccessKey ID 和 AccessKey Secret:输入具有访问 bucket 权限的 AccessKey ID 和 AccessKey Secret。
- Exported Data:选择要导出的数据库或表。
- Data Format:选择 SQL 或 CSV。
- Compression:选择 Gzip、Snappy、Zstd 或 None。
- Task Name:输入导出任务名称。默认值为
点击 Export。
取消导出任务
如需取消正在进行的导出任务,请执行以下步骤:
登录 TiDB Cloud console 并进入 TiDB Instances 页面。
提示:
如果你属于多个组织,请先使用左上角的组合框切换到目标组织。
点击目标 TiDB Cloud Premium 实例的名称进入其概览页面,然后在左侧导航栏中点击 Data > Export。
在 Export 页面查看导出任务列表。
选择要取消的导出任务,然后点击 Action。
在下拉列表中选择 Cancel。请注意,你只能取消状态为 Running 的导出任务。