diff --git a/develop/dev-guide-sample-application-python-peewee.md b/develop/dev-guide-sample-application-python-peewee.md index 67af2b93320b9..c6797fdb8c894 100644 --- a/develop/dev-guide-sample-application-python-peewee.md +++ b/develop/dev-guide-sample-application-python-peewee.md @@ -1,23 +1,23 @@ --- title: 使用 peewee 连接 TiDB -summary: 学习如何使用 peewee 连接 TiDB。本教程提供适用于 TiDB 的 Python 示例代码片段,演示如何使用 peewee。 +summary: 学习如何使用 peewee 连接 TiDB。本教程提供了适用于 TiDB 的 Python 示例代码片段,演示如何使用 peewee 进行操作。 --- # 使用 peewee 连接 TiDB -TiDB 是一个与 MySQL 兼容的数据库,[peewee](https://docs.peewee-orm.com/) 是一个流行的 Python 对象关系映射(ORM)库。 +TiDB 是一个兼容 MySQL 的数据库,[peewee](https://docs.peewee-orm.com/) 是 Python 中流行的对象关系映射(ORM)工具。 在本教程中,你可以学习如何使用 TiDB 和 peewee 完成以下任务: -- 设置你的环境。 +- 搭建你的开发环境。 - 使用 peewee 连接到你的 TiDB 集群。 -- 构建并运行你的应用程序。可选地,你还可以找到用于基本 CRUD 操作的示例代码片段。 +- 构建并运行你的应用程序。你还可以找到基本 CRUD 操作的示例代码片段。 > **Note:** > -> 本教程适用于 {{{ .starter }}}、TiDB Cloud Dedicated 和 TiDB 自托管集群。 +> 本教程适用于 TiDB Cloud Serverless、TiDB Cloud Dedicated 以及 TiDB 自建集群。 -## 前提条件 +## 前置条件 完成本教程,你需要: @@ -27,139 +27,139 @@ TiDB 是一个与 MySQL 兼容的数据库,[peewee](https://docs.peewee-orm.co -**如果你还没有 TiDB 集群,可以按照以下方式创建:** +**如果你还没有 TiDB 集群,可以按如下方式创建:** -- (推荐)参考 [Creating a {{{ .starter }}} cluster](/develop/dev-guide-build-cluster-in-cloud.md) 来创建你自己的 TiDB Cloud 集群。 -- 也可以参考 [Deploy a local test TiDB cluster](/quick-start-with-tidb.md#deploy-a-local-test-cluster) 或 [Deploy a production TiDB cluster](/production-deployment-using-tiup.md) 来创建本地集群。 +- (推荐)参考[创建 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md)来创建你自己的 TiDB Cloud 集群。 +- 参考[部署本地测试 TiDB 集群](/quick-start-with-tidb.md#deploy-a-local-test-cluster)或[部署生产环境 TiDB 集群](/production-deployment-using-tiup.md)来创建本地集群。 -**如果你还没有 TiDB 集群,可以按照以下方式创建:** +**如果你还没有 TiDB 集群,可以按如下方式创建:** -- (推荐)参考 [Creating a {{{ .starter }}} cluster](/develop/dev-guide-build-cluster-in-cloud.md) 来创建你自己的 TiDB Cloud 集群。 -- 也可以参考 [Deploy a local test TiDB cluster](https://docs.pingcap.com/tidb/stable/quick-start-with-tidb#deploy-a-local-test-cluster) 或 [Deploy a production TiDB cluster](https://docs.pingcap.com/tidb/stable/production-deployment-using-tiup) 来创建本地集群。 +- (推荐)参考[创建 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md)来创建你自己的 TiDB Cloud 集群。 +- 参考[部署本地测试 TiDB 集群](https://docs.pingcap.com/tidb/stable/quick-start-with-tidb#deploy-a-local-test-cluster)或[部署生产环境 TiDB 集群](https://docs.pingcap.com/tidb/stable/production-deployment-using-tiup)来创建本地集群。 -## 运行示例应用以连接到 TiDB +## 运行示例应用并连接 TiDB 本节演示如何运行示例应用代码并连接到 TiDB。 -### 步骤 1:克隆示例应用仓库 +### 第 1 步:克隆示例应用仓库 -在终端窗口中运行以下命令以克隆示例代码仓库: +在终端窗口中运行以下命令,克隆示例代码仓库: ```shell git clone https://github.com/tidb-samples/tidb-python-peewee-quickstart.git cd tidb-python-peewee-quickstart ``` -### 步骤 2:安装依赖 +### 第 2 步:安装依赖 -运行以下命令以安装示例应用所需的包(包括 peewee 和 PyMySQL): +运行以下命令,安装示例应用所需的依赖包(包括 peewee 和 PyMySQL): ```shell pip install -r requirements.txt ``` -#### 为什么使用 PyMySQL? +#### 为什么要使用 PyMySQL? -peewee 是一个支持多数据库的 ORM 库。它为数据库提供了高级抽象,帮助开发者以更面向对象的方式编写 SQL 语句。然而,peewee 不包含数据库驱动。要连接数据库,你需要安装数据库驱动。本示例应用使用 PyMySQL 作为数据库驱动,它是一个纯 Python 的 MySQL 客户端库,兼容 TiDB,并且可以在所有平台上安装。更多信息请参考 [peewee 官方文档](https://docs.peewee-orm.com/en/latest/peewee/database.html?highlight=mysql#using-mysql)。 +peewee 是一个支持多种数据库的 ORM 库。它为数据库操作提供了高级抽象,帮助开发者以更面向对象的方式编写 SQL 语句。然而,peewee 并不自带数据库驱动。要连接数据库,你需要安装相应的数据库驱动。本示例应用使用 PyMySQL 作为数据库驱动,它是一个纯 Python 实现的 MySQL 客户端库,兼容 TiDB,并可在所有平台上安装。更多信息请参考 [peewee 官方文档](https://docs.peewee-orm.com/en/latest/peewee/database.html?highlight=mysql#using-mysql)。 -### 步骤 3:配置连接信息 +### 第 3 步:配置连接信息 根据你选择的 TiDB 部署方式,连接到你的 TiDB 集群。 -
+
-1. 进入 [**Clusters**](https://tidbcloud.com/console/clusters) 页面,然后点击目标集群的名称,进入其概览页面。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群名称进入集群概览页。 -2. 点击右上角的 **Connect**,显示连接对话框。 +2. 点击右上角的 **Connect**,弹出连接对话框。 -3. 确认连接对话框中的配置与你的操作环境匹配。 +3. 确保连接对话框中的配置与你的操作环境一致。 - **Connection Type** 设置为 `Public` - **Branch** 设置为 `main` - **Connect With** 设置为 `General` - - **Operating System** 与你的环境一致。 + - **Operating System** 与你的环境一致 > **Tip:** > - > 如果你的程序在 Windows Subsystem for Linux (WSL) 中运行,请切换到对应的 Linux 发行版。 + > 如果你的程序运行在 Windows Subsystem for Linux (WSL) 中,请切换到对应的 Linux 发行版。 -4. 点击 **Generate Password**,生成随机密码。 +4. 点击 **Generate Password** 生成随机密码。 > **Tip:** > - > 如果之前已经创建过密码,可以使用原有密码,也可以点击 **Reset Password** 生成新密码。 + > 如果你之前已经创建过密码,可以继续使用原密码,或点击 **Reset Password** 生成新密码。 -5. 运行以下命令,将 `.env.example` 复制并重命名为 `.env`: +5. 运行以下命令,复制 `.env.example` 并重命名为 `.env`: ```shell cp .env.example .env ``` -6. 将对应的连接字符串复制粘贴到 `.env` 文件中。示例内容如下: +6. 将对应的连接字符串复制粘贴到 `.env` 文件中。示例结果如下: ```dotenv - TIDB_HOST='{host}' # 例如 gateway01.ap-northeast-1.prod.aws.tidbcloud.com + TIDB_HOST='{host}' # e.g. gateway01.ap-northeast-1.prod.aws.tidbcloud.com TIDB_PORT='4000' - TIDB_USER='{user}' # 例如 xxxxxx.root + TIDB_USER='{user}' # e.g. xxxxxx.root TIDB_PASSWORD='{password}' TIDB_DB_NAME='test' - CA_PATH='{ssl_ca}' # 例如 /etc/ssl/certs/ca-certificates.crt(Debian / Ubuntu / Arch) + CA_PATH='{ssl_ca}' # e.g. /etc/ssl/certs/ca-certificates.crt (Debian / Ubuntu / Arch) ``` - 一定要将 `{}` 占位符替换为从连接对话框获取的连接参数。 + 请务必将 `{}` 占位符替换为连接对话框中获取的连接参数。 7. 保存 `.env` 文件。
-1. 进入 [**Clusters**](https://tidbcloud.com/console/clusters) 页面,然后点击目标集群的名称,进入其概览页面。 +1. 进入 [**Clusters**](https://tidbcloud.com/console/clusters) 页面,点击目标集群名称进入集群概览页。 -2. 点击右上角的 **Connect**,显示连接对话框。 +2. 点击右上角的 **Connect**,弹出连接对话框。 3. 在连接对话框中,从 **Connection Type** 下拉列表选择 **Public**,然后点击 **CA cert** 下载 CA 证书。 - 如果还未配置 IP 访问列表,请点击 **Configure IP Access List** 或按照 [Configure an IP Access List](https://docs.pingcap.com/tidbcloud/configure-ip-access-list) 的步骤进行配置,然后再首次连接。 + 如果你还未配置 IP 访问列表,请点击 **Configure IP Access List**,或参考 [Configure an IP Access List](https://docs.pingcap.com/tidbcloud/configure-ip-access-list) 进行配置后再首次连接。 - 除了 **Public** 连接类型外,TiDB Cloud Dedicated 还支持 **Private Endpoint** 和 **VPC Peering** 连接类型。更多信息请参考 [Connect to Your TiDB Cloud Dedicated Cluster](https://docs.pingcap.com/tidbcloud/connect-to-tidb-cluster)。 + 除了 **Public** 连接类型,TiDB Cloud Dedicated 还支持 **Private Endpoint** 和 **VPC Peering** 连接类型。更多信息请参见 [Connect to Your TiDB Cloud Dedicated Cluster](https://docs.pingcap.com/tidbcloud/connect-to-tidb-cluster)。 -4. 运行以下命令,将 `.env.example` 复制并重命名为 `.env`: +4. 运行以下命令,复制 `.env.example` 并重命名为 `.env`: ```shell cp .env.example .env ``` -5. 将对应的连接字符串复制粘贴到 `.env` 文件中。示例内容如下: +5. 将对应的连接字符串复制粘贴到 `.env` 文件中。示例结果如下: ```dotenv - TIDB_HOST='{host}' # 例如 tidb.xxxx.clusters.tidb-cloud.com + TIDB_HOST='{host}' # e.g. tidb.xxxx.clusters.tidb-cloud.com TIDB_PORT='4000' - TIDB_USER='{user}' # 例如 root + TIDB_USER='{user}' # e.g. root TIDB_PASSWORD='{password}' TIDB_DB_NAME='test' CA_PATH='{your-downloaded-ca-path}' ``` - 一定要将 `{}` 占位符替换为从连接对话框获取的连接参数,并将 `CA_PATH` 配置为上一步下载的证书路径。 + 请务必将 `{}` 占位符替换为连接对话框中获取的连接参数,并将 `CA_PATH` 配置为上一步下载的证书路径。 6. 保存 `.env` 文件。
-
+
-1. 运行以下命令,将 `.env.example` 复制并重命名为 `.env`: +1. 运行以下命令,复制 `.env.example` 并重命名为 `.env`: ```shell cp .env.example .env ``` -2. 将对应的连接字符串复制粘贴到 `.env` 文件中。示例内容如下: +2. 将对应的连接字符串复制粘贴到 `.env` 文件中。示例结果如下: ```dotenv TIDB_HOST='{tidb_server_host}' @@ -169,14 +169,14 @@ peewee 是一个支持多数据库的 ORM 库。它为数据库提供了高级 TIDB_DB_NAME='test' ``` - 一定要将 `{}` 占位符替换为连接参数,并删除 `CA_PATH` 行。如果你在本地运行 TiDB,默认主机地址为 `127.0.0.1`,密码为空。 + 请务必将 `{}` 占位符替换为连接参数,并删除 `CA_PATH` 这一行。如果你在本地运行 TiDB,默认主机地址为 `127.0.0.1`,密码为空。 3. 保存 `.env` 文件。
-### 步骤 4:运行代码并检查结果 +### 第 4 步:运行代码并检查结果 1. 执行以下命令运行示例代码: @@ -184,15 +184,15 @@ peewee 是一个支持多数据库的 ORM 库。它为数据库提供了高级 python peewee_example.py ``` -2. 查看 [Expected-Output.txt](https://github.com/tidb-samples/tidb-python-peewee-quickstart/blob/main/Expected-Output.txt),确认输出是否匹配。 +2. 检查 [Expected-Output.txt](https://github.com/tidb-samples/tidb-python-peewee-quickstart/blob/main/Expected-Output.txt) 文件,确认输出是否一致。 ## 示例代码片段 你可以参考以下示例代码片段,完成你自己的应用开发。 -完整示例代码和运行方法,请查看 [tidb-samples/tidb-python-peewee-quickstart](https://github.com/tidb-samples/tidb-python-peewee-quickstart) 仓库。 +完整示例代码及运行方法请参考 [tidb-samples/tidb-python-peewee-quickstart](https://github.com/tidb-samples/tidb-python-peewee-quickstart) 仓库。 -### 连接到 TiDB +### 连接 TiDB ```python from peewee import MySQLDatabase @@ -216,7 +216,7 @@ def get_db_engine(): ) ``` -使用此函数时,需要将 `${tidb_host}`、`${tidb_port}`、`${tidb_user}`、`${tidb_password}`、`${tidb_db_name}` 和 `${ca_path}` 替换为你的 TiDB 集群的实际值。 +使用该函数时,你需要将 `${tidb_host}`、`${tidb_port}`、`${tidb_user}`、`${tidb_password}`、`${tidb_db_name}` 和 `${ca_path}` 替换为你 TiDB 集群的实际值。 ### 定义数据表 @@ -238,15 +238,15 @@ class Player(BaseModel): table_name = "players" ``` -更多信息请参考 [peewee 文档:Models 和 Fields](https://docs.peewee-orm.com/en/latest/peewee/models.html)。 +更多信息请参考 [peewee 文档:Models and Fields](https://docs.peewee-orm.com/en/latest/peewee/models.html)。 ### 插入数据 ```python -# 插入单条记录 +# Insert a single record Player.create(name="test", coins=100, goods=100) -# 插入多条记录 +# Insert multiple records Player.insert_many( [ {"name": "test1", "coins": 100, "goods": 100}, @@ -255,66 +255,66 @@ Player.insert_many( ).execute() ``` -更多信息请参考 [Insert data](/develop/dev-guide-insert-data.md)。 +更多信息请参考 [插入数据](/develop/dev-guide-insert-data.md)。 ### 查询数据 ```python -# 查询所有记录 +# Query all records players = Player.select() -# 查询单条记录 +# Query a single record player = Player.get(Player.name == "test") -# 查询多条记录 +# Query multiple records players = Player.select().where(Player.coins == 100) ``` -更多信息请参考 [Query data](/develop/dev-guide-get-data-from-single-table.md)。 +更多信息请参考 [查询数据](/develop/dev-guide-get-data-from-single-table.md)。 ### 更新数据 ```python -# 更新单条记录 +# Update a single record player = Player.get(Player.name == "test") player.coins = 200 player.save() -# 更新多条记录 +# Update multiple records Player.update(coins=200).where(Player.coins == 100).execute() ``` -更多信息请参考 [Update data](/develop/dev-guide-update-data.md)。 +更多信息请参考 [更新数据](/develop/dev-guide-update-data.md)。 ### 删除数据 ```python -# 删除单条记录 +# Delete a single record player = Player.get(Player.name == "test") player.delete_instance() -# 删除多条记录 +# Delete multiple records Player.delete().where(Player.coins == 100).execute() ``` -更多信息请参考 [Delete data](/develop/dev-guide-delete-data.md)。 +更多信息请参考 [删除数据](/develop/dev-guide-delete-data.md)。 ## 后续步骤 -- 通过 [peewee 文档](https://docs.peewee-orm.com/) 学习更多用法。 -- 参考 [开发者指南](https://github.com/tidb-samples/tidb-python-peewee-quickstart) 中的章节,学习 TiDB 应用开发的最佳实践,例如 [Insert data](/develop/dev-guide-insert-data.md)、[Update data](/develop/dev-guide-update-data.md)、[Delete data](/develop/dev-guide-delete-data.md)、[Single table reading](/develop/dev-guide-get-data-from-single-table.md)、[Transactions](/develop/dev-guide-transaction-overview.md) 和 [SQL 性能优化](/develop/dev-guide-optimize-sql-overview.md)。 -- 通过专业的 [TiDB 开发者课程](https://www.pingcap.com/education/) 学习,并在考试通过后获得 [TiDB 认证](https://www.pingcap.com/education/certification/)。 +- 通过 [peewee 官方文档](https://docs.peewee-orm.com/) 学习更多 peewee 的用法。 +- 通过 [开发者指南](/develop/dev-guide-overview.md) 各章节,学习 TiDB 应用开发最佳实践,例如 [插入数据](/develop/dev-guide-insert-data.md)、[更新数据](/develop/dev-guide-update-data.md)、[删除数据](/develop/dev-guide-delete-data.md)、[单表读取](/develop/dev-guide-get-data-from-single-table.md)、[事务](/develop/dev-guide-transaction-overview.md) 以及 [SQL 性能优化](/develop/dev-guide-optimize-sql-overview.md)。 +- 通过专业的 [TiDB 开发者课程](https://www.pingcap.com/education/),并在通过考试后获得 [TiDB 认证](https://www.pingcap.com/education/certification/)。 ## 需要帮助? -在 [Discord](https://discord.gg/DQZ2dy3cuc?utm_source=doc) 或 [Slack](https://slack.tidb.io/invite?team=tidb-community&channel=everyone&ref=pingcap-docs) 社区提问,或 [提交支持工单](/support.md)。 +在 [Discord](https://discord.gg/DQZ2dy3cuc?utm_source=doc) 或 [Slack](https://slack.tidb.io/invite?team=tidb-community&channel=everyone&ref=pingcap-docs) 社区提问,或[提交支持工单](/support.md)。 -在 [Discord](https://discord.gg/DQZ2dy3cuc?utm_source=doc) 或 [Slack](https://slack.tidb.io/invite?team=tidb-community&channel=everyone&ref=pingcap-docs) 社区提问,或 [提交支持工单](https://tidb.support.pingcap.com/)。 +在 [Discord](https://discord.gg/DQZ2dy3cuc?utm_source=doc) 或 [Slack](https://slack.tidb.io/invite?team=tidb-community&channel=everyone&ref=pingcap-docs) 社区提问,或[提交支持工单](https://tidb.support.pingcap.com/)。 - \ No newline at end of file + diff --git a/latest_translation_commit.json b/latest_translation_commit.json index 399a4b0fb0015..dffbd4ccda02d 100644 --- a/latest_translation_commit.json +++ b/latest_translation_commit.json @@ -1 +1 @@ -{"target":"release-8.5","sha":"0205ededf901476ea31dcd603f21ab9c9bed3f0d"} +{"target":"release-8.5","sha":"6b3c0fadec1d62f44690ecaafa0ac03d762a2ba9"} \ No newline at end of file diff --git a/tidb-cloud/ai-feature-concepts.md b/tidb-cloud/ai-feature-concepts.md index be01bcd87bcac..6fd2f3724fa54 100644 --- a/tidb-cloud/ai-feature-concepts.md +++ b/tidb-cloud/ai-feature-concepts.md @@ -1,50 +1,50 @@ --- -title: AI 功能 +title: AI Features summary: 了解 TiDB Cloud 的 AI 功能。 --- # AI 功能 -TiDB Cloud 中的 AI 功能使你能够充分利用先进技术进行数据探索、搜索和集成。从自然语言驱动的 SQL 查询生成到高性能向量搜索,TiDB 将数据库功能与现代 AI 功能相结合,为创新应用提供动力。通过支持流行的 AI 框架、嵌入模型以及与 ORM 库的无缝集成,TiDB 为语义搜索和 AI 驱动的分析等用例提供了一个多功能平台。 +TiDB Cloud 的 AI 功能让你能够充分利用先进技术进行数据探索、搜索和集成。从基于自然语言的 SQL 查询生成,到高性能的向量搜索,TiDB 将数据库能力与现代 AI 功能相结合,为创新应用提供强大动力。TiDB 支持主流 AI 框架、嵌入模型,并可与 ORM 库无缝集成,为语义搜索和 AI 驱动分析等场景提供了多样化的平台。 -本文档重点介绍这些 AI 功能以及它们如何增强 TiDB 体验。 +本文档将重点介绍这些 AI 功能,以及它们如何提升 TiDB 的使用体验。 ## Chat2Query(Beta) -Chat2Query 是集成在 SQL 编辑器中的 AI 驱动功能,可帮助用户使用自然语言指令生成、调试或重写 SQL 查询。更多信息,请参见[使用 AI 辅助的 SQL 编辑器探索数据](/tidb-cloud/explore-data-with-chat2query.md)。 +Chat2Query 是集成在 SQL Editor 中的 AI 驱动功能,能够帮助用户通过自然语言指令生成、调试或重写 SQL 查询。更多信息,参见 [Explore your data with AI-assisted SQL Editor](/tidb-cloud/explore-data-with-chat2query.md)。 -此外,TiDB Cloud 为 TiDB Cloud Serverless 集群提供 Chat2Query API。启用后,TiDB Cloud 将自动在数据服务中创建一个名为 Chat2Query 的系统数据应用和一个 Chat2Data 端点。你可以调用此端点,通过提供指令让 AI 生成并执行 SQL 语句。更多信息,请参见[开始使用 Chat2Query API](/tidb-cloud/use-chat2query-api.md)。 +此外,TiDB Cloud 为 TiDB Cloud Serverless 集群提供了 Chat2Query API。启用后,TiDB Cloud 会自动创建一个名为 Chat2Query 的系统 Data App,以及一个 Data Service 中的 Chat2Data endpoint。你可以调用该 endpoint,通过提供指令让 AI 生成并执行 SQL 语句。更多信息,参见 [Get started with Chat2Query API](/tidb-cloud/use-chat2query-api.md)。 ## 向量搜索(Beta) -向量搜索是一种优先考虑数据含义以提供相关结果的搜索方法。 +向量搜索是一种以数据语义为核心、提供相关性结果的搜索方式。 -与依赖精确关键词匹配和词频的传统全文搜索不同,向量搜索将各种数据类型(如文本、图像或音频)转换为高维向量,并基于这些向量之间的相似度进行查询。这种搜索方法捕捉数据的语义含义和上下文信息,从而更准确地理解用户意图。 +与依赖精确关键词匹配和词频的传统全文搜索不同,向量搜索会将多种数据类型(如文本、图片或音频)转换为高维向量,并基于这些向量之间的相似度进行查询。这种搜索方式能够捕捉数据的语义含义和上下文信息,从而更准确地理解用户意图。 -即使搜索词与数据库中的内容不完全匹配,向量搜索仍然可以通过分析数据的语义提供符合用户意图的结果。例如,对"会游泳的动物"进行全文搜索只会返回包含这些确切关键词的结果。相比之下,向量搜索可以返回其他会游泳的动物的结果,如鱼或鸭子,即使这些结果不包含确切的关键词。 +即使搜索词与数据库中的内容并不完全匹配,向量搜索也能通过分析数据的语义,返回符合用户意图的结果。例如,全文搜索 “a swimming animal” 只会返回包含这些精确关键词的结果。而向量搜索则可以返回其他游泳动物(如鱼或鸭子)的结果,即使这些结果中并不包含完全相同的关键词。 -更多信息,请参见[向量搜索(Beta)概述](/tidb-cloud/vector-search-overview.md)。 +更多信息,参见 [Vector Search (Beta) Overview](/vector-search/vector-search-overview.md)。 ## AI 集成 ### AI 框架 -TiDB 官方支持多个流行的 AI 框架,使你能够轻松地将基于这些框架开发的 AI 应用程序与 TiDB 向量搜索集成。 +TiDB 官方支持多种主流 AI 框架,使你能够轻松将基于这些框架开发的 AI 应用与 TiDB 向量搜索集成。 -有关支持的 AI 框架列表,请参见[向量搜索集成概述](/tidb-cloud/vector-search-integration-overview.md#ai-frameworks)。 +支持的 AI 框架列表,参见 [Vector Search Integration Overview](/vector-search/vector-search-integration-overview.md#ai-frameworks)。 -### 嵌入模型和服务 +### 嵌入模型与服务 -向量嵌入(也称为嵌入)是一个数字序列,用于在高维空间中表示现实世界的对象。它捕捉非结构化数据(如文档、图像、音频和视频)的含义和上下文。 +向量嵌入(embedding),也称为嵌入,是一组数字序列,用于在高维空间中表示现实世界的对象。它能够捕捉非结构化数据(如文档、图片、音频和视频)的语义和上下文信息。 -嵌入模型是将数据转换为[向量嵌入](/tidb-cloud/vector-search-overview.md#vector-embedding)的算法。选择合适的嵌入模型对于确保语义搜索结果的准确性和相关性至关重要。 +嵌入模型是一类将数据转换为 [vector embeddings](/vector-search/vector-search-overview.md#vector-embedding) 的算法。选择合适的嵌入模型对于确保语义搜索结果的准确性和相关性至关重要。 -TiDB 向量搜索支持存储最多 16383 维的向量,可以适应大多数嵌入模型。对于非结构化文本数据,你可以在 [Massive Text Embedding Benchmark (MTEB) 排行榜](https://huggingface.co/spaces/mteb/leaderboard)上找到性能最佳的文本嵌入模型。 +TiDB 向量搜索支持存储最多 16383 维的向量,能够满足大多数嵌入模型的需求。对于非结构化文本数据,你可以在 [Massive Text Embedding Benchmark (MTEB) Leaderboard](https://huggingface.co/spaces/mteb/leaderboard) 上找到表现最优的文本嵌入模型。 ### 对象关系映射(ORM)库 -对象关系映射(ORM)库是一种工具,通过允许开发人员像处理编程语言中的对象一样处理数据库记录,从而促进应用程序和关系数据库之间的交互。 +对象关系映射(ORM)库是一类工具,能够让开发者以所选编程语言中的对象形式操作数据库记录,从而简化应用与关系型数据库之间的交互。 -TiDB 允许你将向量搜索与 ORM 库集成,以便与传统关系数据一起管理向量数据。这种集成对于需要存储和查询 AI 模型生成的向量嵌入的应用程序特别有用。通过使用 ORM 库,开发人员可以无缝地与存储在 TiDB 中的向量数据交互,利用数据库的功能执行最近邻搜索等复杂的向量操作。 +TiDB 支持将向量搜索与 ORM 库集成,实现对向量数据与传统关系数据的统一管理。这一集成对于需要存储和查询 AI 模型生成的向量嵌入的应用尤为有用。通过使用 ORM 库,开发者可以无缝操作存储在 TiDB 中的向量数据,利用数据库能力执行如最近邻搜索等复杂的向量操作。 -有关支持的 ORM 库列表,请参见[向量搜索集成概述](/tidb-cloud/vector-search-integration-overview.md#object-relational-mapping-orm-libraries)。 +支持的 ORM 库列表,参见 [Vector Search Integration Overview](/vector-search/vector-search-integration-overview.md#object-relational-mapping-orm-libraries)。 \ No newline at end of file diff --git a/tidb-cloud/architecture-concepts.md b/tidb-cloud/architecture-concepts.md index e0c124ceddfd2..4857f90bc27d8 100644 --- a/tidb-cloud/architecture-concepts.md +++ b/tidb-cloud/architecture-concepts.md @@ -5,100 +5,100 @@ summary: 了解 TiDB Cloud 的架构概念。 # 架构 -TiDB Cloud 是一个全托管的数据库即服务(DBaaS),它将开源 HTAP(混合事务和分析处理)数据库 [TiDB](https://docs.pingcap.com/tidb/stable/overview) 的灵活性和强大功能带到了 AWS、Azure 和 Google Cloud 平台。 +TiDB Cloud 是一款全托管的数据库即服务(DBaaS),将开源 HTAP(混合事务与分析处理)数据库 [TiDB](https://docs.pingcap.com/tidb/stable/overview) 的灵活性与强大功能带到 AWS、Azure 和 Google Cloud。 -TiDB 兼容 MySQL,这使得迁移和使用现有应用程序变得容易,同时提供无缝扩展能力,可以处理从小型工作负载到大规模高性能集群的各种场景。它在一个系统中同时支持事务处理(OLTP)和分析处理(OLAP)工作负载,简化了运维并实现了实时数据洞察。 +TiDB 兼容 MySQL,使得迁移和对接现有应用变得简单,同时具备无缝扩展能力,能够应对从小型负载到大规模高性能集群的各种需求。它在同一系统中同时支持事务型(OLTP)和分析型(OLAP)负载,简化运维并实现实时洞察。 -TiDB Cloud 提供两种部署选项:**TiDB Cloud Serverless**,用于自动扩展、成本效益高的工作负载,以及 **TiDB Cloud Dedicated**,用于具有专用资源和高级功能的企业级应用。TiDB Cloud 让你能够轻松扩展数据库、处理复杂的管理任务,并专注于开发可靠、高性能的应用程序。 +TiDB Cloud 提供两种部署选项:**TiDB Cloud** **Serverless**,适用于自动弹性伸缩、成本高效的负载,以及 **TiDB Cloud Dedicated**,为企业级应用提供专属资源和高级能力。TiDB Cloud 让你轻松扩展数据库,处理复杂的管理任务,专注于开发可靠且高性能的应用。 ## TiDB Cloud Serverless -TiDB Cloud Serverless 是一个全托管的无服务器解决方案,提供与传统 TiDB 类似的 HTAP 功能,同时提供自动扩展功能,以减轻用户在容量规划和管理复杂性方面的负担。它包含一个基础使用的免费层级,对超出免费限制的使用采用基于消费的计费方式。TiDB Cloud Serverless 提供两种高可用性选项以满足不同的运维需求。 +TiDB Cloud Serverless 是一款全托管的无服务器解决方案,提供与传统 TiDB 类似的 HTAP 能力,同时具备自动弹性伸缩,减轻用户在容量规划和管理复杂性方面的负担。它包含一个免费额度,超出免费额度的部分按用量计费。TiDB Cloud Serverless 提供两种高可用性类型,以满足不同的运维需求。 -默认情况下,使用可用区高可用性选项的集群将所有组件都部署在同一个可用区内,这样可以降低网络延迟。 +默认情况下,选择 Zonal High Availability 选项的集群,其所有组件都位于同一个可用区,从而带来更低的网络延迟。 -![TiDB Cloud Serverless 可用区高可用性](/media/tidb-cloud/serverless-zonal-high-avaliability-aws.png) +![TiDB Cloud Serverless zonal high availability](/media/tidb-cloud/serverless-zonal-high-avaliability-aws.png) -对于需要最大基础设施隔离和冗余的应用,区域高可用性选项会将节点分布在多个可用区中。 +对于需要最大基础设施隔离和冗余的应用,可以选择 Regional High Availability 选项,将节点分布在多个可用区。 -![TiDB Cloud Serverless 区域高可用性](/media/tidb-cloud/serverless-regional-high-avaliability-aws.png) +![TiDB Cloud Serverless regional high availability](/media/tidb-cloud/serverless-regional-high-avaliability-aws.png) ## TiDB Cloud Dedicated -TiDB Cloud Dedicated 专为关键业务而设计,提供跨多个可用区的高可用性、水平扩展和完整的 HTAP 功能。 +TiDB Cloud Dedicated 专为关键业务场景设计,提供跨多个可用区的高可用性、水平扩展能力以及完整的 HTAP 能力。 -它基于隔离的云资源构建,如 VPC、虚拟机、托管 Kubernetes 服务和云存储,充分利用主要云服务提供商的基础设施。TiDB Cloud Dedicated 集群支持完整的 TiDB 功能集,支持快速扩展、可靠备份、在特定 VPC 中部署以及地理级别的灾难恢复。 +它基于隔离的云资源(如 VPC、VM、托管 Kubernetes 服务和云存储)构建,充分利用主流云服务商的基础设施。TiDB Cloud Dedicated 集群支持完整的 TiDB 功能集,实现快速扩容、可靠备份、在指定 VPC 内部署以及地理级别的灾备能力。 -![TiDB Cloud Dedicated 架构](/media/tidb-cloud/tidb-cloud-dedicated-architecture.png) +![TiDB Cloud Dedicated Architecture](/media/tidb-cloud/tidb-cloud-dedicated-architecture.png) ## TiDB Cloud 控制台 -[TiDB Cloud 控制台](https://tidbcloud.com/)是 TiDB Cloud Serverless 和 TiDB Cloud Dedicated 的基于 Web 的管理界面。它提供了管理集群、导入或迁移数据、监控性能指标、配置备份、设置安全控制以及与其他云服务集成的工具,所有这些都可以在一个用户友好的平台上完成。 +[TiDB Cloud 控制台](https://tidbcloud.com/) 是 TiDB Cloud Serverless 和 TiDB Cloud Dedicated 的 Web 管理界面。你可以通过它管理集群、导入或迁移数据、监控性能指标、配置备份、设置安全控制,并与其他云服务集成,所有操作都在一个易用的平台上完成。 ## TiDB Cloud CLI(Beta) -TiDB Cloud CLI(`ticloud`)允许你通过简单的命令直接从终端管理 TiDB Cloud Serverless 和 TiDB Cloud Dedicated。你可以执行以下任务: +TiDB Cloud CLI,即 `ticloud`,允许你通过简单命令在终端直接管理 TiDB Cloud Serverless 和 TiDB Cloud Dedicated。你可以执行如下任务: - 创建、删除和列出集群。 - 向集群导入数据。 - 从集群导出数据。 -更多信息,请参见 [TiDB Cloud CLI 参考](/tidb-cloud/cli-reference.md)。 +更多信息,参见 [TiDB Cloud CLI Reference](/tidb-cloud/cli-reference.md)。 ## TiDB Cloud API(Beta) -TiDB Cloud API 是一个基于 REST 的接口,提供了对 TiDB Cloud Serverless 和 TiDB Cloud Dedicated 资源进行编程访问的能力。它支持自动化和高效处理任务,如管理项目、集群、备份、恢复、数据导入、计费以及 [TiDB Cloud 数据服务](/tidb-cloud/data-service-overview.md)中的其他资源。 +TiDB Cloud API 是基于 REST 的接口,提供对 TiDB Cloud Serverless 和 TiDB Cloud Dedicated 资源的编程访问能力。它支持自动化、高效地处理项目、集群、备份、恢复、数据导入、计费以及 [TiDB Cloud Data Service](/tidb-cloud/data-service-overview.md) 中的其他资源管理任务。 -更多信息,请参见 [TiDB Cloud API 概述](/tidb-cloud/api-overview.md)。 +更多信息,参见 [TiDB Cloud API Overview](/tidb-cloud/api-overview.md)。 ## 节点 在 TiDB Cloud 中,每个集群由 TiDB、TiKV 和 TiFlash 节点组成。 -- 在 TiDB Cloud Dedicated 集群中,你可以根据性能需求完全管理专用 TiDB、TiKV 和 TiFlash 节点的数量和大小。更多信息,请参见[可扩展性](/tidb-cloud/scalability-concepts.md)。 -- 在 TiDB Cloud Serverless 集群中,TiDB、TiKV 和 TiFlash 节点的数量和大小是自动管理的。这确保了无缝扩展,无需用户处理节点配置或管理任务。 +- 在 TiDB Cloud Dedicated 集群中,你可以根据性能需求完全管理专属 TiDB、TiKV 和 TiFlash 节点的数量和规格。更多信息,参见 [Scalability](/tidb-cloud/scalability-concepts.md)。 +- 在 TiDB Cloud Serverless 集群中,TiDB、TiKV 和 TiFlash 节点的数量和规格由系统自动管理,实现无缝扩展,无需用户手动配置或管理节点。 ### TiDB 节点 -[TiDB 节点](/tidb-computing.md)是一个无状态的 SQL 层,使用 MySQL 兼容的端点连接应用程序。它处理 SQL 查询的解析、优化和创建分布式执行计划等任务。 +[TiDB 节点](/tidb-computing.md) 是无状态的 SQL 层,通过兼容 MySQL 的端点与应用连接。它负责解析、优化 SQL 查询,并生成分布式执行计划。 -你可以部署多个 TiDB 节点以实现水平扩展并管理更高的工作负载。这些节点与负载均衡器(如 TiProxy 或 HAProxy)配合使用,提供无缝接口。TiDB 节点本身不存储数据——它们将数据请求转发到 TiKV 节点进行行式存储或 TiFlash 节点进行列式存储。 +你可以部署多个 TiDB 节点以实现水平扩展,满足更高的负载需求。这些节点通常与负载均衡器(如 TiProxy 或 HAProxy)配合,提供无缝的访问接口。TiDB 节点本身不存储数据——它们会将数据请求转发给 TiKV 节点(行存储)或 TiFlash 节点(列存储)。 ### TiKV 节点 -[TiKV 节点](/tikv-overview.md)是 TiDB 架构中数据存储的核心,作为分布式事务性键值存储引擎,提供可靠性、可扩展性和高可用性。 +[TiKV 节点](/tikv-overview.md) 是 TiDB 架构中数据存储的核心,作为分布式事务型键值存储引擎,具备高可靠性、可扩展性和高可用性。 **主要特性:** - **基于 Region 的数据存储** - - 数据被划分为多个 [Region](https://docs.pingcap.com/tidb/dev/glossary#regionpeerraft-group),每个 Region 覆盖特定的键范围(左闭右开区间:从 `StartKey` 到 `EndKey`)。 - - 每个 TiKV 节点中共存多个 Region,确保高效的数据分布。 + - 数据被划分为多个 [Region](https://docs.pingcap.com/tidb/dev/glossary#regionpeerraft-group),每个 Region 覆盖特定的 Key Range(左闭右开区间:`StartKey` 到 `EndKey`)。 + - 每个 TiKV 节点内可包含多个 Region,实现高效的数据分布。 - **事务支持** - - TiKV 节点在键值层面提供原生分布式事务支持,默认隔离级别为快照隔离。 - - TiDB 节点将 SQL 执行计划转换为对 TiKV 节点 API 的调用,实现无缝的 SQL 级事务支持。 + - TiKV 节点在键值层面原生支持分布式事务,默认隔离级别为快照隔离(Snapshot Isolation)。 + - TiDB 节点会将 SQL 执行计划转化为对 TiKV 节点 API 的调用,从而实现无缝的 SQL 级事务支持。 - **高可用性** - - TiKV 节点中的所有数据都会被复制(默认三副本)以确保持久性。 - - TiKV 确保原生高可用性并支持自动故障转移,防止节点故障。 + - TiKV 节点中的所有数据都会被复制(默认三副本),以保证数据持久性。 + - TiKV 原生支持高可用和自动故障转移,保障节点故障时的数据安全。 -- **可扩展性和可靠性** +- **可扩展性与可靠性** - - TiKV 节点设计用于处理不断扩大的数据集,同时保持分布式一致性和容错性。 + - TiKV 节点设计用于应对不断扩展的数据集,同时保持分布式一致性和容错能力。 ### TiFlash 节点 -[TiFlash 节点](/tiflash/tiflash-overview.md)是 TiDB 架构中的一种专门存储节点。与普通的 TiKV 节点不同,TiFlash 采用列式存储模型,专为分析加速而设计。 +[TiFlash 节点](/tiflash/tiflash-overview.md) 是 TiDB 架构中的一种专用存储节点。与普通 TiKV 节点不同,TiFlash 采用列式存储模型,专为分析加速设计。 **主要特性:** - **列式存储** - TiFlash 节点以列式格式存储数据,这使其针对分析查询进行了优化,显著提高了读密集型工作负载的性能。 + TiFlash 节点以列式格式存储数据,针对分析型查询进行了优化,大幅提升了读密集型负载的性能。 -- **向量搜索索引支持** +- **向量检索索引支持** - 向量搜索索引功能使用表的 TiFlash 副本,支持高级搜索功能,提高复杂分析场景的效率。 + 向量检索索引功能利用表的 TiFlash 副本,实现高级检索能力,并提升复杂分析场景下的效率。 \ No newline at end of file diff --git a/tidb-cloud/backup-and-restore-concepts.md b/tidb-cloud/backup-and-restore-concepts.md index c2ce2fffc6eb9..cd5e4d214f7db 100644 --- a/tidb-cloud/backup-and-restore-concepts.md +++ b/tidb-cloud/backup-and-restore-concepts.md @@ -1,42 +1,42 @@ --- -title: 备份和恢复 -summary: 了解 TiDB Cloud 的备份和恢复概念。 +title: 备份与恢复 +summary: 了解 TiDB Cloud 的备份与恢复相关概念。 --- -# 备份和恢复 +# 备份与恢复 -TiDB Cloud 备份和恢复功能旨在通过使你能够备份和恢复集群数据来保护你的数据并确保业务连续性。 +TiDB Cloud 的备份与恢复功能旨在保护你的数据安全,并通过支持集群数据的备份与恢复,保障业务的连续性。 ## 自动备份 -对于 TiDB Cloud Serverless 和 TiDB Cloud Dedicated 集群,默认情况下会自动进行快照备份,并根据你的备份保留策略进行存储。 +对于 TiDB Cloud Serverless 和 TiDB Cloud Dedicated 集群,默认会自动进行快照备份,并根据你的备份保留策略进行存储。 -更多信息,请参见以下内容: +如需了解更多信息,请参见以下内容: - [TiDB Cloud Serverless 集群的自动备份](/tidb-cloud/backup-and-restore-serverless.md#automatic-backups) - [TiDB Cloud Dedicated 集群的自动备份](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup) ## 手动备份 -手动备份是 TiDB Cloud Dedicated 的一项功能,使你能够根据需要将数据备份到已知状态,然后随时恢复到该状态。 +手动备份是 TiDB Cloud Dedicated 的一项功能,允许你根据需要将数据备份到已知状态,并可在任何时间恢复到该状态。 -更多信息,请参见[执行手动备份](/tidb-cloud/backup-and-restore.md#perform-a-manual-backup)。 +如需了解更多信息,请参见 [执行手动备份](/tidb-cloud/backup-and-restore.md#perform-a-manual-backup)。 ## 双区域备份 -双区域备份是 TiDB Cloud Dedicated 的一项功能,使你能够将备份从集群所在区域复制到另一个不同的区域。启用后,所有备份都会自动复制到指定区域。这提供了跨区域数据保护和灾难恢复能力。估计约 99% 的数据可以在一小时内复制到次要区域。 +双区域备份是 TiDB Cloud Dedicated 的一项功能,允许你将集群所在区域的备份复制到另一个不同的区域。启用后,所有备份会自动复制到指定区域。这为跨区域数据保护和灾难恢复提供了能力。预计大约 99% 的数据可以在一小时内复制到次级区域。 -更多信息,请参见[开启双区域备份](/tidb-cloud/backup-and-restore.md#turn-on-dual-region-backup)。 +如需了解更多信息,请参见 [开启双区域备份](/tidb-cloud/backup-and-restore.md#turn-on-dual-region-backup)。 ## 时间点恢复 -时间点恢复是一项功能,使你能够将任意时间点的数据恢复到新集群。你可以使用它来: +时间点恢复是一项功能,允许你将任意时间点的数据恢复到一个新集群。你可以使用该功能: - 降低灾难恢复中的 RPO。 -- 通过恢复到错误事件发生之前的时间点来解决数据写入错误的情况。 +- 通过恢复到错误事件发生前的时间点,解决数据写入错误的问题。 - 审计业务的历史数据。 如果你想执行时间点恢复,请注意以下事项: -- 对于 TiDB Cloud Serverless 集群,时间点恢复仅适用于可扩展集群,不适用于免费集群。更多信息,请参见[恢复模式](/tidb-cloud/backup-and-restore-serverless.md#restore-mode)。 -- 对于 TiDB Cloud Dedicated 集群,你需要提前[启用 PITR](/tidb-cloud/backup-and-restore.md#turn-on-point-in-time-restore)。 +- 对于 TiDB Cloud Serverless 集群,时间点恢复仅适用于可扩展集群,不适用于免费集群。更多信息请参见 [恢复模式](/tidb-cloud/backup-and-restore-serverless.md#restore-mode)。 +- 对于 TiDB Cloud Dedicated 集群,你需要提前 [开启 PITR](/tidb-cloud/backup-and-restore.md#turn-on-point-in-time-restore)。 \ No newline at end of file diff --git a/tidb-cloud/backup-and-restore-serverless.md b/tidb-cloud/backup-and-restore-serverless.md index b8b3cc58c0b09..399acb54b4a4d 100644 --- a/tidb-cloud/backup-and-restore-serverless.md +++ b/tidb-cloud/backup-and-restore-serverless.md @@ -1,76 +1,76 @@ --- -title: 备份和恢复 TiDB Cloud Serverless 数据 -summary: 了解如何备份和恢复 TiDB Cloud Serverless 集群。 +title: 备份与恢复 TiDB Cloud Serverless 数据 +summary: 了解如何备份和恢复你的 TiDB Cloud Serverless 集群。 aliases: ['/tidbcloud/restore-deleted-tidb-cluster'] --- -# 备份和恢复 TiDB Cloud Serverless 数据 +# 备份与恢复 TiDB Cloud Serverless 数据 -本文介绍如何在 TiDB Cloud 上备份和恢复 TiDB Cloud Serverless 集群数据。 +本文档介绍了如何在 TiDB Cloud 上备份和恢复你的 TiDB Cloud Serverless 集群数据。 -> **提示:** +> **Tip:** > -> 要了解如何备份和恢复 TiDB Cloud Dedicated 集群数据,请参阅[备份和恢复 TiDB Cloud Dedicated 数据](/tidb-cloud/backup-and-restore.md)。 +> 如需了解如何备份和恢复 TiDB Cloud Dedicated 集群数据,请参见 [Back Up and Restore TiDB Cloud Dedicated Data](/tidb-cloud/backup-and-restore.md)。 ## 查看备份页面 -1. 在[**集群**](https://tidbcloud.com/project/clusters)页面,点击目标集群的名称进入其概览页面。 +1. 在 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群的名称,进入其概览页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 -2. 在左侧导航栏中,点击**数据** > **备份**。 +2. 在左侧导航栏,点击 **Data** > **Backup**。 ## 自动备份 -TiDB Cloud Serverless 自动备份你的集群数据,允许你从备份快照恢复数据,以在发生灾难时最大限度地减少数据丢失。 +TiDB Cloud Serverless 会自动备份你的集群数据,使你能够从备份快照中恢复数据,以最大程度减少灾难发生时的数据丢失。 ### 了解备份设置 -免费集群和可扩展集群的自动备份设置有所不同,如下表所示: +自动备份设置在免费集群和可扩展集群之间有所不同,具体如下表所示: -| 备份设置 | 免费集群 | 可扩展集群 | -|------------------|--------------|------------------| -| 备份周期 | 每日 | 每日 | -| 备份保留期 | 1 天 | 14 天 | -| 备份时间 | 固定时间 | 可配置 | +| 备份设置 | 免费集群 | 可扩展集群 | +|------------------|--------------|--------------------| +| Backup Cycle | Daily | Daily | +| Backup Retention | 1 day | 14 days | +| Backup Time | Fixed time | Configurable | -- **备份周期**是进行备份的频率。 +- **Backup Cycle** 表示备份的频率。 -- **备份保留期**是备份保留的时间。过期的备份无法恢复。 +- **Backup Retention** 表示备份的保留时长。过期的备份无法恢复。 -- **备份时间**是开始调度备份的时间。注意,最终的备份时间可能会晚于配置的备份时间。 +- **Backup Time** 表示备份开始调度的时间。请注意,最终的备份时间可能会滞后于配置的备份时间。 - - 免费集群:备份时间是随机固定的时间。 - - 可扩展集群:你可以将备份时间配置为每半小时。默认值是随机固定的时间。 + - 免费集群:备份时间为随机固定时间。 + - 可扩展集群:你可以将备份时间配置为每半小时一次。默认值为随机固定时间。 ### 配置备份设置 -要为可扩展集群设置备份时间,请执行以下步骤: +如需为可扩展集群设置备份时间,请执行以下步骤: -1. 导航到集群的[**备份**](#查看备份页面)页面。 +1. 进入集群的 [**Backup**](#view-the-backup-page) 页面。 -2. 点击**备份设置**。这将打开**备份设置**窗口,你可以根据需求配置自动备份设置。 +2. 点击 **Backup Setting**。此操作会打开 **Backup Setting** 窗口,你可以根据需求配置自动备份设置。 -3. 在**备份时间**中,为每日集群备份安排一个开始时间。 +3. 在 **Backup Time** 中,为每日集群备份安排开始时间。 -4. 点击**确认**。 +4. 点击 **Confirm**。 ## 恢复 -TiDB Cloud Serverless 集群提供恢复功能,帮助在意外数据丢失或损坏时恢复数据。 +TiDB Cloud Serverless 集群提供恢复功能,帮助在数据意外丢失或损坏时进行数据恢复。 ### 恢复模式 -TiDB Cloud Serverless 支持集群的快照恢复和时间点恢复。 +TiDB Cloud Serverless 支持快照恢复和时间点恢复。 -- **快照恢复**:从特定备份快照恢复集群。 +- **Snapshot Restore**:从指定的备份快照恢复你的集群。 -- **时间点恢复(beta)**:将集群恢复到特定时间点。 +- **Point-in-Time Restore (beta)**:将你的集群恢复到指定时间点。 - 免费集群:不支持。 - - 可扩展集群:可以恢复到过去 14 天内的任意时间点,但不能早于集群创建时间或晚于当前时间减去一分钟。 + - 可扩展集群:可恢复到最近 14 天内的任意时间,但不能早于集群创建时间,也不能晚于当前时间减去 1 分钟。 ### 恢复目标 @@ -78,82 +78,82 @@ TiDB Cloud Serverless 支持原地恢复和恢复到新集群。 **原地恢复** -恢复到当前集群将覆盖现有数据。请注意以下事项: +恢复到当前集群会覆盖现有数据。请注意以下事项: -- 一旦开始恢复,现有连接将被终止。 -- 在恢复过程中,集群将不可用,新的连接将被阻止。 -- 恢复将影响 `mysql` 架构中的表。对用户凭据、权限或系统变量的任何更改都将恢复到备份时的状态。 +- 恢复开始后,现有连接会被终止。 +- 恢复过程中,集群将不可用,新的连接会被阻塞。 +- 恢复会影响 `mysql` schema 下的表。用户凭证、权限或系统变量的任何更改都将回退到备份时的状态。 **恢复到新集群** 创建并恢复到新集群。请注意以下事项: -- 源集群的用户凭据和权限不会恢复到新集群。 +- 源集群的用户凭证和权限不会恢复到新集群。 ### 恢复超时 -恢复过程通常在几分钟内完成。如果恢复时间超过三小时,将自动取消。取消恢复的结果取决于目标: +恢复过程通常会在几分钟内完成。如果恢复超过 3 小时,将会被自动取消。被取消的恢复结果取决于恢复目标: -- **原地恢复**:集群状态从**恢复中**变为**可用**,集群变为可访问。 -- **恢复到新集群**:新集群被删除,源集群保持不变。 +- **In-place restore**:集群状态会从 **Restoring** 变为 **Available**,集群重新可用。 +- **Restore to a new cluster**:新集群会被删除,源集群保持不变。 -如果取消恢复后数据损坏且无法恢复,请联系 [TiDB Cloud 支持团队](/tidb-cloud/tidb-cloud-support.md)寻求帮助。 +如果恢复被取消后数据损坏且无法恢复,请联系 [TiDB Cloud Support](/tidb-cloud/tidb-cloud-support.md) 获取帮助。 ### 执行恢复 -要恢复你的 TiDB Cloud Serverless 集群,请按照以下步骤操作: +如需恢复你的 TiDB Cloud Serverless 集群,请按照以下步骤操作: -1. 导航到集群的[**备份**](#查看备份页面)页面。 +1. 进入集群的 [**Backup**](#view-the-backup-page) 页面。 -2. 点击**恢复**。设置窗口显示。 +2. 点击 **Restore**。会弹出设置窗口。 -3. 在**恢复模式**中,你可以选择从特定备份恢复或从任意时间点恢复。 +3. 在 **Restore Mode** 中,你可以选择从指定备份或任意时间点进行恢复。 -
+
- 要从选定的备份快照恢复,请执行以下步骤: + 如需从选定的备份快照恢复,请执行以下步骤: - 1. 点击**快照恢复**。 - 2. 选择要恢复的备份快照。 + 1. 点击 **Snapshot Restore**。 + 2. 选择你要恢复的备份快照。
-
+
- 要将可扩展集群恢复到特定时间点,请执行以下步骤: + 如需为可扩展集群恢复到指定时间点,请执行以下步骤: - 1. 点击**时间点恢复**。 - 2. 选择要恢复到的日期和时间。 + 1. 点击 **Point-in-Time Restore**。 + 2. 选择你要恢复到的日期和时间。
-4. 在**目标**中,你可以选择恢复到新集群或原地恢复。 +4. 在 **Destination** 中,你可以选择恢复到新集群或原地恢复。 -
+
- 要恢复到新集群,请执行以下步骤: + 如需恢复到新集群,请执行以下步骤: - 1. 点击**恢复到新集群**。 - 2. 为新集群输入名称。 - 3. 为新集群选择集群方案。 - 4. 如果你选择可扩展集群,请设置每月支出限额,然后根据需要配置高级设置。否则,跳过此步骤。 + 1. 点击 **Restore to a New Cluster**。 + 2. 输入新集群的名称。 + 3. 选择新集群的集群方案。 + 4. 如果你选择的是可扩展集群,请设置每月消费上限,并根据需要配置高级设置。否则跳过此步骤。
-
+
- 要原地恢复,点击**原地恢复**。 + 如需原地恢复,点击 **In-place Restore**。
-5. 点击**恢复**开始恢复过程。 +5. 点击 **Restore** 开始恢复流程。 -一旦恢复过程开始,集群状态将变为**恢复中**。集群将保持不可用状态,直到恢复完成且状态变为**可用**。 +恢复流程开始后,集群状态会变为 **Restoring**。在恢复完成并状态变为 **Available** 之前,集群将保持不可用。 ## 限制 -- 如果启用了 TiFlash 副本,在恢复后它将在一段时间内不可用,因为数据需要在 TiFlash 中重建。 +- 如果启用了 TiFlash 副本,恢复后 TiFlash 会有一段时间不可用,因为数据需要在 TiFlash 中重建。 - TiDB Cloud Serverless 集群不支持手动备份。 -- 默认情况下,数据量超过 1 TiB 的集群不支持恢复到新集群。如需处理更大的数据集,请联系 [TiDB Cloud 支持团队](/tidb-cloud/tidb-cloud-support.md)寻求帮助。 +- 数据量超过 1 TiB 的集群默认不支持恢复到新集群。如需处理更大数据集,请联系 [TiDB Cloud Support](/tidb-cloud/tidb-cloud-support.md) 获取帮助。 \ No newline at end of file diff --git a/tidb-cloud/backup-and-restore.md b/tidb-cloud/backup-and-restore.md index d23270ae8f6eb..5f1bb7bb58fa0 100644 --- a/tidb-cloud/backup-and-restore.md +++ b/tidb-cloud/backup-and-restore.md @@ -1,274 +1,274 @@ --- -title: 备份和恢复 TiDB Cloud Dedicated 数据 -summary: 了解如何备份和恢复 TiDB Cloud Dedicated 集群。 +title: 备份与恢复 TiDB Cloud 专属集群数据 +summary: 了解如何备份和恢复你的 TiDB Cloud 专属集群。 aliases: ['/tidbcloud/restore-deleted-tidb-cluster'] --- -# 备份和恢复 TiDB Cloud Dedicated 数据 +# 备份与恢复 TiDB Cloud 专属集群数据 -本文档介绍如何在 TiDB Cloud 上备份和恢复 TiDB Cloud Dedicated 集群数据。TiDB Cloud Dedicated 支持自动备份和手动备份。你还可以将备份数据恢复到新集群,或从回收站恢复已删除的集群。 +本文档介绍了如何在 TiDB Cloud 上备份和恢复你的 TiDB Cloud 专属集群数据。TiDB Cloud 专属集群支持自动备份和手动备份。你还可以将备份数据恢复到新集群,或从回收站恢复已删除的集群。 -> **提示** +> **Tip** > -> 要了解如何备份和恢复 TiDB Cloud Serverless 集群数据,请参阅[备份和恢复 TiDB Cloud Serverless 数据](/tidb-cloud/backup-and-restore-serverless.md)。 +> 如需了解如何备份和恢复 TiDB Cloud Serverless 集群数据,请参见 [备份与恢复 TiDB Cloud Serverless 数据](/tidb-cloud/backup-and-restore-serverless.md)。 ## 限制 -- 对于 v6.2.0 或更高版本的集群,TiDB Cloud Dedicated 默认支持从备份中恢复用户账号和 SQL 绑定。 -- TiDB Cloud Dedicated 不支持恢复存储在 `mysql` 架构中的系统变量。 -- 建议你先导入数据,然后执行**手动**快照备份,最后启用时间点恢复。因为通过 TiDB Cloud 控制台导入的数据**不会**生成变更日志,无法自动检测和备份。更多信息,请参阅[从云存储将 CSV 文件导入到 TiDB Cloud Dedicated](/tidb-cloud/import-csv-files.md)。 -- 如果多次开启和关闭时间点恢复,你只能选择最近一次启用时间点恢复后的可恢复范围内的时间点。早期的可恢复范围将无法访问。 -- 请勿同时修改**时间点恢复**和**双区域备份**的开关。 +- 对于 v6.2.0 及以上版本的集群,TiDB Cloud 专属集群默认支持从备份中恢复用户账户和 SQL 绑定。 +- TiDB Cloud 专属集群不支持恢复存储在 `mysql` schema 中的系统变量。 +- 建议你先导入数据,然后执行一次**手动**快照备份,最后开启 Point-in-time Restore。因为通过 TiDB Cloud 控制台导入的数据**不会**生成变更日志,无法被自动检测和备份。更多信息请参见 [从云存储导入 CSV 文件到 TiDB Cloud 专属集群](/tidb-cloud/import-csv-files.md)。 +- 如果你多次开启和关闭 Point-in-time Restore,只能选择最近一次开启后可恢复范围内的时间点,之前的可恢复范围将无法访问。 +- **不要**同时修改 **Point-in-time Restore** 和 **Dual Region Backup** 的开关。 ## 备份 ### 查看备份页面 -1. 在项目的[**集群**](https://tidbcloud.com/project/clusters)页面上,点击目标集群的名称以进入其概览页面。 +1. 在项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群名称进入其概览页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 -2. 在左侧导航栏中,点击**数据** > **备份**。 +2. 在左侧导航栏,点击 **Data** > **Backup**。 ### 开启自动备份 -TiDB Cloud Dedicated 支持[快照备份](https://docs.pingcap.com/tidb/stable/br-snapshot-guide)和[日志备份](https://docs.pingcap.com/tidb/stable/br-pitr-guide)。快照备份使你能够将数据恢复到备份点。默认情况下,快照备份会根据你的备份保留策略自动进行并存储。你可以随时禁用自动备份。 +TiDB Cloud 专属集群支持 [快照备份](https://docs.pingcap.com/tidb/stable/br-snapshot-guide) 和 [日志备份](https://docs.pingcap.com/tidb/stable/br-pitr-guide)。快照备份可以让你将数据恢复到备份时的状态。默认情况下,快照备份会自动执行并根据你的备份保留策略进行存储。你可以随时关闭自动备份。 -#### 开启时间点恢复 +#### 开启 Point-in-time Restore -> **注意** +> **Note** > -> 时间点恢复功能支持 v6.4.0 或更高版本的 TiDB Cloud Dedicated 集群。 +> Point-in-time Restore 功能仅支持 v6.4.0 及以上版本的 TiDB Cloud 专属集群。 -此功能支持将任意时间点的数据恢复到新集群。你可以使用它来: +该功能支持将任意时间点的数据恢复到新集群。你可以用它来: -- 降低灾难恢复的 RPO。 -- 通过恢复到错误事件发生前的时间点来解决数据写入错误的情况。 +- 降低灾备场景下的 RPO。 +- 通过恢复到错误事件发生前的时间点,解决数据写入错误问题。 - 审计业务的历史数据。 -强烈建议开启此功能。成本与快照备份相同。更多信息,请参阅[数据备份成本](https://www.pingcap.com/tidb-dedicated-pricing-details#backup-storage-cost)。 +强烈建议你开启此功能。其费用与快照备份相同。更多信息请参见 [数据备份费用](https://www.pingcap.com/tidb-dedicated-pricing-details#backup-storage-cost)。 -要为 TiDB Cloud Dedicated 集群开启此功能,请执行以下步骤: +要为你的 TiDB Cloud 专属集群开启此功能,请执行以下步骤: -1. 导航到集群的[**备份**](#查看备份页面)页面。 +1. 进入集群的 [**Backup**](#view-the-backup-page) 页面。 -2. 点击**备份设置**。 +2. 点击 **Backup Setting**。 -3. 将**自动备份**开关切换为**开启**。 +3. 将 **Auto Backup** 开关切换为 **On**。 -4. 将**时间点恢复**开关切换为**开启**。 +4. 将 **Point-in-time Restore** 开关切换为 **On**。 - > **警告** + > **Warning** > - > 时间点恢复仅在下一次备份任务完成后生效。要使其更早生效,你可以在启用后[手动执行备份](#执行手动备份)。 + > Point-in-Time Restore 仅在下一个备份任务完成后生效。若需提前生效,可以在开启后[手动执行一次备份](#perform-a-manual-backup)。 -5. 点击**保存**以保存更改。 +5. 点击 **Save** 保存更改。 #### 配置备份计划 -TiDB Cloud Dedicated 支持每日和每周备份计划。默认情况下,备份计划设置为每日。你可以选择一天或一周中的特定时间开始快照备份。 +TiDB Cloud 专属集群支持每日和每周备份计划。默认情况下,备份计划为每日。你可以选择一天或一周中的特定时间启动快照备份。 -要为 TiDB Cloud Dedicated 集群配置备份计划,请执行以下步骤: +要为你的 TiDB Cloud 专属集群配置备份计划,请执行以下步骤: -1. 导航到集群的[**备份**](#查看备份页面)页面。 +1. 进入集群的 [**Backup**](#view-the-backup-page) 页面。 -2. 点击**备份设置**。 +2. 点击 **Backup Setting**。 -3. 将**自动备份**开关切换为**开启**。 +3. 将 **Auto Backup** 开关切换为 **On**。 -4. 按如下配置备份计划: +4. 按如下方式配置备份计划: - - 在**备份周期**中,点击**每日备份**或**每周备份**选项卡。对于**每周备份**,你需要指定备份的星期几。 + - 在 **Backup Cycle** 中,点击 **Daily Backup** 或 **Weekly Backup** 标签。若选择 **Weekly Backup**,需指定每周的备份日期。 - > **警告** + > **Warning** > - > - 启用每周备份时,时间点恢复功能默认开启且无法禁用。 - > - 如果你将备份周期从每周更改为每日,时间点恢复功能将保持其原始设置。如果需要,你可以手动禁用它。 + > - 启用每周备份时,Point-in-time Restore 功能会默认开启且无法关闭。 + > - 若将备份周期从每周切换为每日,Point-in-time Restore 功能会保持原有设置。你可以根据需要手动关闭。 - - 在**备份时间**中,为每日或每周集群备份安排开始时间。 + - 在 **Backup Time** 中,设置每日或每周集群备份的开始时间。 - 如果你未指定首选备份时间,TiDB Cloud 会分配默认备份时间,即集群所在区域时区的凌晨 2:00。 + 如果你未指定备份时间,TiDB Cloud 会分配默认备份时间,即集群所在区域时区的凌晨 2:00。 - > **注意** + > **Note** > - > - 当数据导入作业正在进行时,备份作业会自动延迟。在数据导入或集群扩展期间**请勿**运行手动备份。 + > - 当数据导入任务进行中时,备份任务会自动延迟。**不要**在数据导入或集群扩容期间执行手动备份。 - - 在**备份保留**中,配置最短备份数据保留期。默认期限为 7 天。为了最大限度地减少对业务的影响,建议在工作负载较低的时段安排自动备份。 + - 在 **Backup Retention** 中,配置备份数据的最小保留周期。默认周期为 7 天。为尽量减少对业务的影响,建议在业务低峰期安排自动备份。 - > **注意** + > **Note** > - > - 除最新的自动备份外,所有超过保留期的自动备份都将被删除。最新的自动备份不会被删除,除非你手动删除它。这确保了在发生意外删除时,你可以恢复集群数据。 - > - 删除集群后,保留期内的自动备份将移至回收站。 + > - 除最新备份外,所有超出保留周期的自动备份将被删除。最新的自动备份不会被删除,除非你手动删除它。这样可以确保在误删时仍可恢复集群数据。 + > - 删除集群后,保留周期内的自动备份会被移入回收站。 ### 开启双区域备份 -> **注意:** +> **Note:** > > - 目前,双区域备份功能仅适用于托管在 AWS 和 Google Cloud 上的集群。 -> - 托管在 Google Cloud 上的 TiDB Cloud Dedicated 集群与 Google Cloud Storage 无缝协作。与 Google Cloud Storage 类似,**TiDB Cloud Dedicated 仅支持在相同的多区域代码内进行双区域配对,就像 Google 双区域存储一样**。例如,在亚洲,目前你必须将东京和大阪配对在一起以进行双区域存储。更多信息,请参阅[双区域](https://cloud.google.com/storage/docs/locations#location-dr)。 +> - 托管在 Google Cloud 上的 TiDB Cloud 专属集群可无缝对接 Google Cloud Storage。与 Google Cloud Storage 类似,**TiDB Cloud 专属集群仅支持在同一多区域代码下的 Google 双区域存储配对**。例如,在亚洲,目前必须将东京和大阪配对用于双区域存储。更多信息请参见 [Dual-regions](https://cloud.google.com/storage/docs/locations#location-dr)。 -TiDB Cloud Dedicated 支持通过将备份从集群区域复制到另一个不同区域来实现双区域备份。启用此功能后,所有备份都会自动复制到指定区域。这提供了跨区域数据保护和灾难恢复能力。估计约 99% 的数据可以在一小时内复制到次要区域。 +TiDB Cloud 专属集群支持双区域备份,通过将集群所在区域的备份复制到另一个不同区域。开启该功能后,所有备份会自动复制到指定区域。这为数据跨区域保护和灾难恢复提供了能力。预计约 99% 的数据可在一小时内复制到次级区域。 -双区域备份成本包括备份存储使用费和跨区域数据传输费。更多信息,请参阅[数据备份成本](https://www.pingcap.com/tidb-dedicated-pricing-details#backup-storage-cost)。 +双区域备份费用包括备份存储用量和跨区域数据传输费用。更多信息请参见 [数据备份费用](https://www.pingcap.com/tidb-dedicated-pricing-details#backup-storage-cost)。 -要为 TiDB Cloud Dedicated 集群开启双区域备份,请执行以下步骤: +要为你的 TiDB Cloud 专属集群开启双区域备份,请执行以下步骤: -1. 导航到集群的[**备份**](#查看备份页面)页面。 +1. 进入集群的 [**Backup**](#view-the-backup-page) 页面。 -2. 点击**备份设置**。 +2. 点击 **Backup Setting**。 -3. 将**双区域备份**开关切换为**开启**。 +3. 将 **Dual Region Backup** 开关切换为 **On**。 -4. 从**次要区域**下拉列表中,选择一个区域来存储备份文件。 +4. 在 **Secondary Region** 下拉列表中,选择用于存储备份文件的区域。 -5. 点击**保存**以保存更改。 +5. 点击 **Save** 保存更改。 ### 关闭自动备份 -> **注意** +> **Note** > -> 关闭自动备份也会默认关闭时间点恢复。 +> 关闭自动备份会默认关闭 point-in-time restore。 -要关闭 TiDB Cloud Dedicated 集群的自动备份,请执行以下步骤: +要关闭 TiDB Cloud 专属集群的自动备份,请执行以下步骤: -1. 导航到集群的[**备份**](#查看备份页面)页面。 +1. 进入集群的 [**Backup**](#view-the-backup-page) 页面。 -2. 点击**备份设置**。 +2. 点击 **Backup Setting**。 -3. 将**自动备份**开关切换为**关闭**。 +3. 将 **Auto Backup** 开关切换为 **Off**。 -4. 点击**保存**以保存更改。 +4. 点击 **Save** 保存更改。 ### 关闭双区域备份 -> **提示** +> **Tip** > -> 禁用双区域备份不会立即删除次要区域中的备份。这些备份将根据备份保留计划稍后清理。要立即删除它们,你可以手动[删除备份](#删除备份)。 +> 禁用双区域备份不会立即删除次级区域的备份。这些备份会根据备份保留计划稍后清理。如需立即移除,可以手动[删除备份](#delete-backups)。 -要关闭 TiDB Cloud Dedicated 集群的双区域备份,请执行以下步骤: +要关闭 TiDB Cloud 专属集群的双区域备份,请执行以下步骤: -1. 导航到集群的[**备份**](#查看备份页面)页面。 +1. 进入集群的 [**Backup**](#view-the-backup-page) 页面。 -2. 点击**备份设置**。 +2. 点击 **Backup Setting**。 -3. 将**双区域备份**开关切换为**关闭**。 +3. 将 **Dual Region Backup** 开关切换为 **Off**。 -4. 点击**保存**以保存更改。 +4. 点击 **Save** 保存更改。 ### 执行手动备份 -手动备份是用户发起的备份,使你能够根据需要将数据备份到已知状态,然后随时恢复到该状态。 +手动备份是由用户发起的备份,允许你根据需要将数据备份到已知状态,并可随时恢复到该状态。 -> **注意** +> **Note** > -> - 手动备份将无限期保留,直到你选择手动删除它们或你的账户关闭。 -> - TiDB Cloud Dedicated 集群删除后,其现有的手动备份将移至回收站,并保留在那里直到手动删除或你的账户关闭。 +> - 手动备份会被无限期保留,直到你手动删除或账户关闭。 +> - 删除 TiDB Cloud 专属集群后,现有的手动备份会被移入回收站,直至你手动删除或账户关闭。 -要对 TiDB Cloud Dedicated 集群应用手动备份,请执行以下步骤: +要为你的 TiDB Cloud 专属集群执行手动备份,请执行以下步骤: -1. 导航到集群的[**备份**](#查看备份页面)页面。 +1. 进入集群的 [**Backup**](#view-the-backup-page) 页面。 -2. 在右上角,点击 **...** > **手动备份**。 +2. 在右上角点击 **...** > **Manual Backup**。 -3. 在显示的对话框中,输入**名称**。 +3. 在弹出的对话框中输入 **Name**。 -4. 点击**确认**。然后你的集群数据将被备份。 +4. 点击 **Confirm**,集群数据即被备份。 ### 删除备份 #### 删除备份文件 -要删除 TiDB Cloud Dedicated 集群的现有备份文件,请执行以下步骤: +要删除 TiDB Cloud 专属集群的现有备份文件,请执行以下步骤: -1. 导航到集群的[**备份**](#查看备份页面)页面。 +1. 进入集群的 [**Backup**](#view-the-backup-page) 页面。 -2. 找到要删除的相应备份文件,在**操作**列中点击 **...** > **删除**。 +2. 找到你要删除的备份文件,在 **Action** 列点击 **...** > **Delete**。 -#### 删除正在运行的备份作业 +#### 删除正在运行的备份任务 -要删除 TiDB Cloud Dedicated 集群的正在运行的备份作业,请按照与[**删除备份文件**](#删除备份文件)类似的过程操作。 +要删除 TiDB Cloud 专属集群正在运行的备份任务,操作方式与 [**删除备份文件**](#delete-backup-files) 类似。 -1. 导航到集群的[**备份**](#查看备份页面)页面。 +1. 进入集群的 [**Backup**](#view-the-backup-page) 页面。 -2. 找到处于**等待中**或**运行中**状态的正在运行的备份作业,在**操作**列中点击 **...** > **删除**。 +2. 找到处于 **Pending** 或 **Running** 状态的备份任务,在 **Action** 列点击 **...** > **Delete**。 ## 恢复 -### 将数据恢复到新集群 +### 恢复数据到新集群 -> **注意** +> **Note** > -> 从备份恢复 TiDB 集群时,恢复过程会保留原始时区设置而不覆盖它。 +> 当你从备份恢复 TiDB 集群时,恢复过程会保留原有的时区设置,不会覆盖。 -要从备份将 TiDB Cloud Dedicated 集群数据恢复到新集群,请执行以下步骤: +要将 TiDB Cloud 专属集群的数据从备份恢复到新集群,请执行以下步骤: -1. 导航到集群的[**备份**](#查看备份页面)页面。 +1. 进入集群的 [**Backup**](#view-the-backup-page) 页面。 -2. 点击**恢复**。设置窗口显示。 +2. 点击 **Restore**,弹出设置窗口。 -3. 在**恢复模式**中,选择**从区域恢复**,表示备份存储的区域。 +3. 在 **Restore Mode** 中,选择 **Restore From Region**,即备份存储的区域。 - > **注意** + > **Note** > - > - **从区域恢复**的默认值与备份集群相同。 + > - **Restore From Region** 的默认值与备份集群相同。 -4. 在**恢复模式**中,选择将任意时间点的数据或选定的备份恢复到新集群。 +4. 在 **Restore Mode** 中,选择将任意时间点的数据或选定备份恢复到新集群。 -
+
- 要将备份保留期内任意时间点的数据恢复到新集群,请确保**备份设置**中的**时间点恢复**已开启,然后执行以下步骤: + 若要将备份保留期内任意时间点的数据恢复到新集群,请确保 **Backup Setting** 中已开启 **Point-in-time Restore**,然后执行以下步骤: - - 点击**选择时间点**。 - - 选择要恢复到的**日期**和**时间**。 + - 点击 **Select Time Point**。 + - 选择你要恢复的 **Date** 和 **Time**。
-
+
- 要将选定的备份恢复到新集群,请执行以下步骤: + 若要将选定的备份恢复到新集群,请执行以下步骤: - - 点击**选择备份名称**。 - - 选择要恢复到的备份。 + - 点击 **Select Backup Name**。 + - 选择你要恢复的备份。
-5. 在**恢复到区域**中,选择与**备份设置**中配置的**主要区域**相同的区域。 +5. 在 **Restore to Region** 中,选择与 **Backup Setting** 中配置的 **Primary Region** 相同的区域。 -6. 在**恢复**窗口中,你还可以根据需要进行以下更改: +6. 在 **Restore** 窗口中,如有需要还可以进行以下更改: - 设置集群名称。 - - 更新集群的端口号。 - - 增加集群的节点数量、vCPU 和 RAM,以及存储。 + - 更新集群端口号。 + - 增加集群节点数、vCPU 和内存、存储空间。 -7. 点击**恢复**。 +7. 点击 **Restore**。 - 集群恢复过程开始,并显示**密码设置**对话框。 + 集群恢复流程启动,并弹出 **Password Settings** 对话框。 -8. 在**密码设置**对话框中,设置连接集群的 root 密码,然后点击**保存**。 +8. 在 **Password Settings** 对话框中,设置连接集群的 root 密码,然后点击 **Save**。 ### 恢复已删除的集群 -> **注意:** +> **Note:** > -> 你无法将已删除的集群恢复到任意时间点。你只能选择自动或手动备份进行恢复。 +> 已删除集群无法恢复到任意时间点,只能选择自动或手动备份进行恢复。 要从回收站恢复已删除的集群,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标项目。 -2. 在左侧导航栏中,点击**项目设置** > **回收站**。 -3. 在**回收站**页面上,找到要恢复的集群,在**操作**列中点击 **...**,然后点击**备份**。 -4. 在**备份**页面上,找到所需的备份时间,在**操作**列中点击 **...**,然后点击**恢复**。 -5. 在**恢复**页面上,为新集群指定一个名称,然后根据需要进行以下更改: +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,使用左上角的下拉框切换到目标项目。 +2. 在左侧导航栏,点击 **Project Settings** > **Recycle Bin**。 +3. 在 **Recycle Bin** 页面,找到你要恢复的集群,在 **Action** 列点击 **...**,然后点击 **Backups**。 +4. 在 **Backups** 页面,找到你想要的备份时间,在 **Action** 列点击 **...**,然后点击 **Restore**。 +5. 在 **Restore** 页面,为新集群指定名称,并根据需要进行以下更改: - - 更新集群的端口号。 - - 增加集群的节点数量、vCPU 和 RAM,以及存储。 + - 更新集群端口号。 + - 增加集群节点数、vCPU 和内存、存储空间。 -6. 在**摘要**部分,检查恢复信息,然后点击**恢复**。 +6. 在 **Summary** 部分,检查恢复信息,然后点击 **Restore**。 - 集群恢复过程开始,并显示**密码设置**对话框。 + 集群恢复流程启动,并弹出 **Password Settings** 对话框。 -7. 在**密码设置**对话框中,设置连接集群的 root 密码,然后点击**保存**。 +7. 在 **Password Settings** 对话框中,设置连接集群的 root 密码,然后点击 **Save**。 \ No newline at end of file diff --git a/tidb-cloud/branch-github-integration.md b/tidb-cloud/branch-github-integration.md index 277eb7284d5a3..8a7b0232fd688 100644 --- a/tidb-cloud/branch-github-integration.md +++ b/tidb-cloud/branch-github-integration.md @@ -1,77 +1,77 @@ --- -title: 集成 TiDB Cloud Serverless 分支功能(Beta)与 GitHub +title: 集成 TiDB Cloud Serverless 分支(Beta)与 GitHub summary: 了解如何将 TiDB Cloud Serverless 分支功能与 GitHub 集成。 --- -# 集成 TiDB Cloud Serverless 分支功能(Beta)与 GitHub +# 集成 TiDB Cloud Serverless 分支(Beta)与 GitHub -> **注意:** +> **Note:** > -> 此集成基于 [TiDB Cloud Serverless 分支功能](/tidb-cloud/branch-overview.md)构建。在阅读本文档之前,请确保你已熟悉 TiDB Cloud Serverless 分支功能。 +> 此集成基于 [TiDB Cloud Serverless 分支](/tidb-cloud/branch-overview.md)。在阅读本文档之前,请确保你已熟悉 TiDB Cloud Serverless 分支。 -如果你使用 GitHub 进行应用程序开发,你可以将 TiDB Cloud Serverless 分支功能集成到 GitHub CI/CD 流程中,这样你就可以使用分支自动测试你的拉取请求,而不会影响生产数据库。 +如果你在应用开发中使用 GitHub,可以将 TiDB Cloud Serverless 分支集成到你的 GitHub CI/CD 流水线中,从而让你能够在不影响生产数据库的情况下,自动使用分支测试你的拉取请求(pull request)。 -在集成过程中,系统会提示你安装 [TiDB Cloud Branching](https://github.com/apps/tidb-cloud-branching) GitHub 应用程序。该应用程序可以根据 GitHub 仓库中的拉取请求自动管理 TiDB Cloud Serverless 分支。例如,当你创建拉取请求时,应用程序会为你的 TiDB Cloud Serverless 集群创建相应的分支,你可以在其中独立开发新功能或修复错误,而不会影响生产数据库。 +在集成过程中,你会被提示安装 [TiDB Cloud Branching](https://github.com/apps/tidb-cloud-branching) GitHub 应用。该应用可以根据你 GitHub 仓库中的拉取请求自动管理 TiDB Cloud Serverless 分支。例如,当你创建一个拉取请求时,该应用会为你的 TiDB Cloud Serverless 集群创建一个对应的分支,你可以在该分支中独立开发新功能或修复 bug,而不会影响生产数据库。 -本文档涵盖以下主题: +本文档涵盖以下内容: -1. 如何将 TiDB Cloud Serverless 分支功能与 GitHub 集成 -2. TiDB Cloud Branching 应用程序的工作原理 -3. 如何构建基于分支的 CI 工作流,使用分支而不是生产集群来测试每个拉取请求 +1. 如何将 TiDB Cloud Serverless 分支与 GitHub 集成 +2. TiDB Cloud Branching 应用的工作原理 +3. 如何构建基于分支的 CI 工作流,使用分支而非生产集群测试每个拉取请求 ## 开始之前 -在进行集成之前,请确保你具备以下条件: +在集成之前,请确保你具备以下条件: -- GitHub 账号 -- 用于你应用程序的 GitHub 仓库 -- [TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md) +- 一个 GitHub 账号 +- 一个用于你的应用的 GitHub 仓库 +- 一个 [TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md) -## 将 TiDB Cloud Serverless 分支功能与 GitHub 仓库集成 +## 将 TiDB Cloud Serverless 分支与 GitHub 仓库集成 {#integrate-branching-with-your-github-repository} -要将 TiDB Cloud Serverless 分支功能与 GitHub 仓库集成,请按照以下步骤操作: +要将 TiDB Cloud Serverless 分支与 GitHub 仓库集成,请按照以下步骤操作: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标 TiDB Cloud Serverless 集群的名称以进入其概览页面。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,进入你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标 TiDB Cloud Serverless 集群的名称,进入其概览页面。 -2. 在左侧导航栏中点击**分支**。 +2. 在左侧导航栏点击 **Branches**。 -3. 在**分支**页面的右上角,点击**连接到 GitHub**。 +3. 在 **Branches** 页面右上角,点击 **Connect to GitHub**。 - - 如果你尚未登录 GitHub,系统会要求你先登录 GitHub。 - - 如果这是你第一次使用此集成,系统会要求你授权 **TiDB Cloud Branching** 应用程序。 + - 如果你尚未登录 GitHub,会被要求先登录 GitHub。 + - 如果这是你第一次使用该集成,会被要求授权 **TiDB Cloud Branching** 应用。 -4. 在**连接到 GitHub**对话框中,从**GitHub 账号**下拉列表中选择一个 GitHub 账号。 +4. 在 **Connect to GitHub** 对话框中,在 **GitHub Account** 下拉列表中选择一个 GitHub 账号。 - 如果列表中没有你的账号,请点击**安装其他账号**,然后按照屏幕上的说明安装账号。 + 如果你的账号不在列表中,点击 **Install Other Account**,然后按照屏幕提示安装该账号。 -5. 从**GitHub 仓库**下拉列表中选择你的目标仓库。如果列表较长,你可以通过输入名称来搜索仓库。 +5. 在 **GitHub Repository** 下拉列表中选择你的目标仓库。如果列表较长,可以通过输入名称进行搜索。 -6. 点击**连接**以建立 TiDB Cloud Serverless 集群与 GitHub 仓库之间的连接。 +6. 点击 **Connect**,将你的 TiDB Cloud Serverless 集群与 GitHub 仓库连接起来。 -## TiDB Cloud Branching 应用程序行为 +## TiDB Cloud Branching 应用行为 -将 TiDB Cloud Serverless 集群连接到 GitHub 仓库后,[TiDB Cloud Branching](https://github.com/apps/tidb-cloud-branching) GitHub 应用程序可以自动管理该仓库中每个拉取请求对应的 TiDB Cloud Serverless 分支。以下列出了拉取请求变更的默认行为: +当你将 TiDB Cloud Serverless 集群与 GitHub 仓库连接后,对于该仓库中的每个拉取请求,[TiDB Cloud Branching](https://github.com/apps/tidb-cloud-branching) GitHub 应用都可以自动管理其对应的 TiDB Cloud Serverless 分支。以下是针对拉取请求变更的默认行为列表: -| 拉取请求变更 | TiDB Cloud Branching 应用程序行为 | -|------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| 创建拉取请求 | 当你在仓库中创建拉取请求时,[TiDB Cloud Branching](https://github.com/apps/tidb-cloud-branching) 应用程序会为你的 TiDB Cloud Serverless 集群创建一个分支。当 `branch.mode` 设置为 `reset` 时,分支名称遵循 `${github_branch_name}_${pr_id}` 格式。当 `branch.mode` 设置为 `reserve` 时,分支名称遵循 `${github_branch_name}_${pr_id}_${commit_sha}` 格式。请注意,分支数量有[限制](/tidb-cloud/branch-overview.md#limitations-and-quotas)。 | -| 向拉取请求推送新提交 | 当 `branch.mode` 设置为 `reset` 时,每次你向仓库的拉取请求推送新提交时,[TiDB Cloud Branching](https://github.com/apps/tidb-cloud-branching) 应用程序都会重置 TiDB Cloud Serverless 分支。当 `branch.mode` 设置为 `reserve` 时,应用程序会为最新提交创建一个新分支。 | -| 关闭或合并拉取请求 | 当你关闭或合并拉取请求时,[TiDB Cloud Branching](https://github.com/apps/tidb-cloud-branching) 应用程序会删除该拉取请求的分支。 | -| 重新打开拉取请求 | 当你重新打开拉取请求时,[TiDB Cloud Branching](https://github.com/apps/tidb-cloud-branching) 应用程序会为该拉取请求的最新提交创建一个分支。 | +| 拉取请求变更 | TiDB Cloud Branching 应用行为 | +|------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| 创建拉取请求 | 当你在仓库中创建拉取请求时,[TiDB Cloud Branching](https://github.com/apps/tidb-cloud-branching) 应用会为你的 TiDB Cloud Serverless 集群创建一个分支。当 `branch.mode` 设置为 `reset` 时,分支名称为 `${github_branch_name}_${pr_id}` 格式。当 `branch.mode` 设置为 `reserve` 时,分支名称为 `${github_branch_name}_${pr_id}_${commit_sha}` 格式。请注意,分支数量有 [限制](/tidb-cloud/branch-overview.md#limitations-and-quotas)。 | +| 向拉取请求推送新提交 | 当 `branch.mode` 设置为 `reset` 时,每次你向仓库中的拉取请求推送新提交,[TiDB Cloud Branching](https://github.com/apps/tidb-cloud-branching) 应用会重置 TiDB Cloud Serverless 分支。当 `branch.mode` 设置为 `reserve` 时,应用会为最新提交创建一个新分支。 | +| 关闭或合并拉取请求 | 当你关闭或合并拉取请求时,[TiDB Cloud Branching](https://github.com/apps/tidb-cloud-branching) 应用会删除该拉取请求对应的分支。 | +| 重新打开拉取请求 | 当你重新打开拉取请求时,[TiDB Cloud Branching](https://github.com/apps/tidb-cloud-branching) 应用会为该拉取请求的最新提交创建一个分支。 | -## 配置 TiDB Cloud Branching 应用程序 +## 配置 TiDB Cloud Branching 应用 -要配置 [TiDB Cloud Branching](https://github.com/apps/tidb-cloud-branching) 应用程序的行为,你可以在仓库的根目录中添加一个 `tidbcloud.yml` 文件,然后根据以下说明将所需的配置添加到该文件中。 +要配置 [TiDB Cloud Branching](https://github.com/apps/tidb-cloud-branching) 应用的行为,你可以在仓库根目录下添加一个 `tidbcloud.yml` 文件,并根据以下说明将所需配置添加到该文件中。 ### branch.blockList -**类型:** 字符串数组。**默认值:** `[]`。 +**Type:** string 数组。**Default:** `[]`。 -指定禁止 TiDB Cloud Branching 应用程序使用的 GitHub 分支,即使它们在 `allowList` 中。 +指定禁止 TiDB Cloud Branching 应用的 GitHub 分支,即使它们在 `allowList` 中。 ```yaml github: @@ -83,9 +83,9 @@ github: ### branch.allowList -**类型:** 字符串数组。**默认值:** `[.*]`。 +**type:** string 数组。**Default:** `[.*]`。 -指定允许 TiDB Cloud Branching 应用程序使用的 GitHub 分支。 +指定允许 TiDB Cloud Branching 应用的 GitHub 分支。 ```yaml github: @@ -96,12 +96,12 @@ github: ### branch.mode -**类型:** 字符串。**默认值:** `reset`。 +**Type:** string。**Default:** `reset`。 -指定 TiDB Cloud Branching 应用程序如何处理分支更新: +指定 TiDB Cloud Branching 应用如何处理分支更新: -- 如果设置为 `reset`,TiDB Cloud Branching 应用程序将使用最新数据更新现有分支。 -- 如果设置为 `reserve`,TiDB Cloud Branching 应用程序将为你的最新提交创建一个新分支。 +- 如果设置为 `reset`,TiDB Cloud Branching 应用会用最新数据更新已有分支。 +- 如果设置为 `reserve`,TiDB Cloud Branching 应用会为你的最新提交创建一个新分支。 ```yaml github: @@ -111,9 +111,9 @@ github: ### branch.autoDestroy -**类型:** 布尔值。**默认值:** `true`。 +**Type:** boolean。**Default:** `true`。 -如果设置为 `false`,当拉取请求被关闭或合并时,TiDB Cloud Branching 应用程序将不会删除 TiDB Cloud Serverless 分支。 +如果设置为 `false`,当拉取请求关闭或合并时,TiDB Cloud Branching 应用不会删除 TiDB Cloud Serverless 分支。 ```yaml github: @@ -121,17 +121,17 @@ github: autoDestroy: true ``` -## 创建分支 CI 工作流 +## 创建基于分支的 CI 工作流 -使用分支的最佳实践之一是创建分支 CI 工作流。通过该工作流,你可以在合并拉取请求之前使用 TiDB Cloud Serverless 分支而不是生产集群来测试你的代码。你可以在[这里](https://github.com/shiyuhang0/tidbcloud-branch-gorm-example)找到一个实际示例。 +使用分支的最佳实践之一是创建基于分支的 CI 工作流。通过该工作流,你可以在合并拉取请求之前,使用 TiDB Cloud Serverless 分支而不是生产集群来测试你的代码。你可以在 [这里](https://github.com/shiyuhang0/tidbcloud-branch-gorm-example) 查看在线演示。 -以下是创建工作流的主要步骤: +创建该工作流的主要步骤如下: -1. [将 TiDB Cloud Serverless 分支功能与你的 GitHub 仓库集成](#将-tidb-cloud-serverless-分支功能与-github-仓库集成)。 +1. [将 TiDB Cloud Serverless 分支与 GitHub 仓库集成](#integrate-branching-with-your-github-repository)。 2. 获取分支连接信息。 - 你可以使用 [wait-for-tidbcloud-branch](https://github.com/tidbcloud/wait-for-tidbcloud-branch) action 来等待 TiDB Cloud Serverless 分支就绪并获取分支的连接信息。 + 你可以使用 [wait-for-tidbcloud-branch](https://github.com/tidbcloud/wait-for-tidbcloud-branch) action 等待 TiDB Cloud Serverless 分支就绪,并获取分支的连接信息。 示例用法: @@ -151,20 +151,20 @@ github: echo "The user is ${{ steps.wait-for-branch.outputs.user }}" echo "The password is ${{ steps.wait-for-branch.outputs.password }}" ``` - + - `token`:GitHub 会自动创建一个 [GITHUB_TOKEN](https://docs.github.com/en/actions/security-guides/automatic-token-authentication) 密钥。你可以直接使用它。 - `public-key` 和 `private-key`:TiDB Cloud [API 密钥](https://docs.pingcap.com/tidbcloud/api/v1beta#section/Authentication/API-Key-Management)。 3. 修改你的测试代码。 - 修改你的测试代码以接受来自 GitHub Actions 的连接信息。例如,你可以通过环境变量接受连接信息,如[实际示例](https://github.com/shiyuhang0/tidbcloud-branch-gorm-example)所示。 + 修改你的测试代码,使其能够从 GitHub Actions 接收连接信息。例如,你可以通过环境变量接收连接信息,具体可参考 [在线演示](https://github.com/shiyuhang0/tidbcloud-branch-gorm-example)。 -## 下一步 +## 后续操作 -通过以下示例了解如何使用分支 GitHub 集成: +你可以通过以下示例,了解如何使用分支 GitHub 集成: - [branching-gorm-example](https://github.com/tidbcloud/branching-gorm-example) - [branching-django-example](https://github.com/tidbcloud/branching-django-example) - [branching-rails-example](https://github.com/tidbcloud/branching-rails-example) -你也可以在不使用分支 GitHub 集成的情况下构建分支 CI/CD 工作流。例如,你可以使用 [`setup-tidbcloud-cli`](https://github.com/tidbcloud/setup-tidbcloud-cli) 和 GitHub Actions 来自定义你的 CI/CD 工作流。 +你也可以在不使用分支 GitHub 集成的情况下,构建自己的分支 CI/CD 工作流。例如,你可以使用 [`setup-tidbcloud-cli`](https://github.com/tidbcloud/setup-tidbcloud-cli) 和 GitHub Actions 自定义你的 CI/CD 工作流。 \ No newline at end of file diff --git a/tidb-cloud/branch-manage.md b/tidb-cloud/branch-manage.md index d75218741b0d3..ef1ea030aa389 100644 --- a/tidb-cloud/branch-manage.md +++ b/tidb-cloud/branch-manage.md @@ -5,95 +5,95 @@ summary: 了解如何管理 TiDB Cloud Serverless 分支。 # 管理 TiDB Cloud Serverless 分支 -本文档介绍如何使用 [TiDB Cloud 控制台](https://tidbcloud.com) 管理 TiDB Cloud Serverless 分支。如需使用 TiDB Cloud CLI 进行管理,请参阅 [`ticloud branch`](/tidb-cloud/ticloud-branch-create.md)。 +本文档介绍如何使用 [TiDB Cloud 控制台](https://tidbcloud.com) 管理 TiDB Cloud Serverless 分支。若需使用 TiDB Cloud CLI 进行管理,请参见 [`ticloud branch`](/tidb-cloud/ticloud-branch-create.md)。 ## 所需权限 -- 要[创建分支](#创建分支)或[连接到分支](#连接到分支),你必须具有组织的 `Organization Owner` 角色或目标项目的 `Project Owner` 角色。 -- 要[查看项目中集群的分支](#查看分支),你必须属于该项目。 +- 若要[创建分支](#create-a-branch)或[连接到分支](#connect-to-a-branch),你必须是组织的 `Organization Owner` 角色或目标项目的 `Project Owner` 角色。 +- 若要[查看项目中集群的分支](#create-a-branch),你必须属于该项目。 -有关权限的更多信息,请参阅[用户角色](/tidb-cloud/manage-user-access.md#user-roles)。 +关于权限的更多信息,请参见 [用户角色](/tidb-cloud/manage-user-access.md#user-roles)。 ## 创建分支 -> **注意:** +> **Note:** > -> 你只能为 2023 年 7 月 5 日之后创建的 TiDB Cloud Serverless 集群创建分支。更多限制请参阅[限制和配额](/tidb-cloud/branch-overview.md#limitations-and-quotas)。 +> 你只能为 2023 年 7 月 5 日之后创建的 TiDB Cloud Serverless 集群创建分支。更多限制请参见 [限制与配额](/tidb-cloud/branch-overview.md#limitations-and-quotas)。 要创建分支,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标 TiDB Cloud Serverless 集群的名称以进入其概览页面。 -2. 在左侧导航栏中点击**分支**。 -3. 在**分支**页面的右上角,点击**创建分支**。此时会显示一个对话框。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标 TiDB Cloud Serverless 集群的名称,进入其概览页面。 +2. 在左侧导航栏点击 **Branches**。 +3. 在 **Branches** 页面右上角,点击 **Create Branch**。此时会弹出对话框。 - 或者,要从现有父分支创建分支,找到目标父分支所在的行,然后在**操作**列中点击 **...** > **创建分支**。 + 或者,也可以从已有的父分支创建分支,找到目标父分支所在行,然后在 **Action** 列点击 **...** > **Create Branch**。 -4. 在**创建分支**对话框中,配置以下选项: +4. 在 **Create Branch** 对话框中,配置以下选项: - - **名称**:输入分支的名称。 - - **父分支**:选择原始集群或现有分支。`main` 代表当前集群。 - - **包含数据截至**:选择以下其中一项: - - **当前时间点**:从当前状态创建分支。 - - **指定日期和时间**:从指定时间创建分支。 + - **Name**:输入分支名称。 + - **Parent branch**:选择原始集群或已有分支。`main` 代表当前集群。 + - **Include data up to**:选择以下之一: + - **Current point in time**:从当前状态创建分支。 + - **Specific date and time**:从指定时间点创建分支。 -5. 点击**创建**。 +5. 点击 **Create**。 -根据集群中的数据大小,分支创建将在几分钟内完成。 +根据你集群中的数据量,分支创建将在几分钟内完成。 ## 查看分支 要查看集群的分支,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标 TiDB Cloud Serverless 集群的名称以进入其概览页面。 -2. 在左侧导航栏中点击**分支**。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标 TiDB Cloud Serverless 集群的名称,进入其概览页面。 +2. 在左侧导航栏点击 **Branches**。 - 集群的分支列表将显示在右侧窗格中。 + 集群的分支列表会显示在右侧面板。 ## 连接到分支 要连接到分支,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标 TiDB Cloud Serverless 集群的名称以进入其概览页面。 -2. 在左侧导航栏中点击**分支**。 -3. 在要连接的目标分支所在行中,点击**操作**列中的 **...**。 -4. 在下拉列表中点击**连接**。此时会显示连接信息对话框。 -5. 点击**生成密码**或**重置密码**以创建或重置 root 密码。 -6. 使用连接信息连接到分支。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标 TiDB Cloud Serverless 集群的名称,进入其概览页面。 +2. 在左侧导航栏点击 **Branches**。 +3. 在目标分支所在行的 **Action** 列点击 **...**。 +4. 在下拉列表中点击 **Connect**。此时会弹出连接信息对话框。 +5. 点击 **Generate Password** 或 **Reset Password** 以创建或重置 root 密码。 +6. 使用连接信息连接到该分支。 -或者,你也可以从集群概览页面获取连接字符串: +另外,你也可以在集群概览页面获取连接字符串: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标 TiDB Cloud Serverless 集群的名称以进入其概览页面。 -2. 点击右上角的**连接**。 -3. 在`分支`下拉列表中选择要连接的分支。 -4. 点击**生成密码**或**重置密码**以创建或重置 root 密码。 -5. 使用连接信息连接到分支。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标 TiDB Cloud Serverless 集群的名称,进入其概览页面。 +2. 在右上角点击 **Connect**。 +3. 在 `Branch` 下拉列表中选择你要连接的分支。 +4. 点击 **Generate Password** 或 **Reset Password** 以创建或重置 root 密码。 +5. 使用连接信息连接到该分支。 ## 删除分支 要删除分支,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标 TiDB Cloud Serverless 集群的名称以进入其概览页面。 -2. 在左侧导航栏中点击**分支**。 -3. 在要删除的目标分支所在行中,点击**操作**列中的 **...**。 -4. 在下拉列表中点击**删除**。 -5. 确认删除。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标 TiDB Cloud Serverless 集群的名称,进入其概览页面。 +2. 在左侧导航栏点击 **Branches**。 +3. 在目标分支所在行的 **Action** 列点击 **...**。 +4. 在下拉列表中点击 **Delete**。 +5. 确认删除操作。 ## 重置分支 重置分支会将其与父分支的最新数据同步。 -> **注意:** +> **Note:** > -> 此操作不可逆。在重置分支之前,请确保已备份任何重要数据。 +> 此操作不可逆。在重置分支前,请确保你已备份所有重要数据。 要重置分支,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标 TiDB Cloud Serverless 集群的名称以进入其概览页面。 -2. 在左侧导航栏中点击**分支**。 -3. 在要重置的目标分支所在行中,点击**操作**列中的 **...**。 -4. 在下拉列表中点击**重置**。 -5. 确认重置。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标 TiDB Cloud Serverless 集群的名称,进入其概览页面。 +2. 在左侧导航栏点击 **Branches**。 +3. 在目标分支所在行的 **Action** 列点击 **...**。 +4. 在下拉列表中点击 **Reset**。 +5. 确认重置操作。 -## 下一步 +## 后续操作 -- [将 TiDB Cloud Serverless 分支集成到 GitHub CI/CD 流程中](/tidb-cloud/branch-github-integration.md) +- [将 TiDB Cloud Serverless 分支集成到你的 GitHub CI/CD 流水线](/tidb-cloud/branch-github-integration.md) \ No newline at end of file diff --git a/tidb-cloud/branch-overview.md b/tidb-cloud/branch-overview.md index 82e012823b6ef..407f747db3717 100644 --- a/tidb-cloud/branch-overview.md +++ b/tidb-cloud/branch-overview.md @@ -1,53 +1,53 @@ --- -title: TiDB Cloud Serverless 分支(Beta)概述 +title: TiDB Cloud Serverless Branching (Beta) Overview summary: 了解 TiDB Cloud Serverless 分支的概念。 --- # TiDB Cloud Serverless 分支(Beta)概述 -TiDB Cloud 允许你为 TiDB Cloud Serverless 集群创建分支。集群的分支是一个独立的实例,包含从原始集群分叉的数据副本。它提供了一个隔离的环境,让你可以自由实验而不用担心影响原始集群。 +TiDB Cloud 允许你为 TiDB Cloud Serverless 集群创建分支。集群的分支是一个独立的实例,包含从原始集群分叉出来的数据副本。它提供了一个隔离的环境,使你可以自由地进行实验,而无需担心影响原始集群。 -通过 TiDB Cloud Serverless 分支,开发人员可以并行工作,快速迭代新功能,在不影响生产数据库的情况下排查问题,并在需要时轻松回滚更改。此功能简化了开发和部署过程,同时确保生产数据库具有高度的稳定性和可靠性。 +通过 TiDB Cloud Serverless 分支,开发者可以并行工作,快速迭代新功能,排查问题而不影响生产数据库,并且在需要时可以轻松回滚更改。该功能简化了开发和部署流程,同时确保生产数据库的高稳定性和可靠性。 ## 实现方式 -创建集群的分支时,分支中的数据会在特定时间点从原始集群或其父分支分叉。这意味着之后在父分支或子分支中所做的更改不会相互同步。 +当为集群创建分支时,分支中的数据会在某一特定时间点与原始集群或其父分支的数据分叉。这意味着之后在父集群或分支中所做的更改将不会相互同步。 -为确保快速且无缝的分支创建,TiDB Cloud Serverless 使用写时复制技术在原始集群及其分支之间共享数据。此过程通常在几分钟内完成,用户无法察觉,确保不会影响原始集群的性能。 +为了确保分支创建的快速与无缝,TiDB Cloud Serverless 采用了写时复制(copy-on-write)技术,在原始集群与其分支之间共享数据。该过程通常在几分钟内完成,对用户来说几乎无感知,并且不会影响原始集群的性能。 ## 使用场景 -你可以轻松快速地创建分支以获得隔离的数据环境。在以下场景中,当多个开发人员或团队需要独立工作、测试更改、修复错误、尝试新功能或推出更新而不影响生产数据库时,分支特别有用。 +你可以轻松快速地创建分支,以获得隔离的数据环境。在以下场景中,分支非常有用,适用于多个开发者或团队需要独立工作、测试更改、修复 bug、尝试新功能或发布更新而不影响生产数据库的情况。 -- 功能开发:开发人员可以在隔离环境中开发新功能,而不会影响生产数据库。每个功能都可以有自己的分支,允许快速迭代和实验,而不会影响其他正在进行的工作。 +- 功能开发:开发者可以在隔离环境中开发新功能,而不会影响生产数据库。每个功能都可以有自己的分支,实现快速迭代和实验,而不会影响其他正在进行的工作。 -- 错误修复:开发人员可以创建专门用于修复特定错误的分支,测试修复方案,然后在验证后合并回去,而不会给生产数据库带来新的问题。 +- Bug 修复:开发者可以为修复特定 bug 创建专用分支,测试修复效果,并在验证后合并回去,而不会给生产数据库引入新的问题。 -- 实验:在开发新功能或进行更改时,开发人员可以创建分支来尝试不同的方法或配置。这使他们能够比较各种选项,收集数据,并在更改合并到生产数据库之前做出明智的决定。 +- 实验:在开发新功能或进行更改时,开发者可以创建分支,尝试不同的方法或配置。这样可以对比多种方案,收集数据,并在更改合并到生产数据库前做出明智决策。 -- 性能优化:有时会进行数据库更改以提高性能。通过分支,开发人员可以在隔离环境中实验和微调各种配置、索引或算法,以找到最有效的解决方案。 +- 性能优化:有时会对数据库进行更改以提升性能。通过分支,开发者可以在隔离环境中实验和微调各种配置、索引或算法,从而找到最优方案。 -- 测试和暂存:团队可以创建用于测试和暂存的分支。它为质量保证、用户验收测试或暂存定制提供了一个受控环境,然后再将更改合并到生产数据库中。 +- 测试与预发布:团队可以为测试和预发布目的创建分支。它为质量保证、用户验收测试或上线前的定制化提供了受控环境。 -- 并行开发:不同的团队或开发人员可以同时处理不同的项目。每个项目都可以有自己的分支,实现独立开发和实验,同时仍然能够将更改合并回生产数据库。 +- 并行开发:不同团队或开发者可以同时进行独立项目开发。每个项目都可以有自己的分支,实现独立开发和实验,同时仍可将更改合并回生产数据库。 -## 限制和配额 +## 限制与配额 -目前,TiDB Cloud Serverless 分支处于 beta 阶段,免费使用。 +目前,TiDB Cloud Serverless 分支处于 beta 阶段,免费提供。 -- 对于 TiDB Cloud 中的每个组织,默认情况下你最多可以在所有集群中创建五个 TiDB Cloud Serverless 分支。集群的分支将在与集群相同的区域中创建,你不能为受限集群或大于 100 GiB 的集群创建分支。 +- 对于 TiDB Cloud 中的每个组织,默认情况下你最多可以在所有集群中创建 5 个 TiDB Cloud Serverless 分支。集群的分支会被创建在与集群相同的区域,且无法为受限集群或大于 100 GiB 的集群创建分支。 -- 对于免费集群的每个分支,允许 10 GiB 存储空间。对于可扩展集群的每个分支,允许 100 GiB 存储空间。一旦达到存储限制,此分支上的读写操作将被限制,直到你减少存储空间。 +- 免费集群的每个分支允许使用 10 GiB 存储空间。可扩展集群的每个分支允许使用 100 GiB 存储空间。当存储空间达到上限时,该分支的读写操作将被限制,直到你减少存储空间为止。 -- 如果你的集群有带 TiFlash 副本的表,这些副本在你创建新分支后将暂时不可用,因为 TiFlash 需要重建副本数据。 +- 如果你的集群包含 TiFlash 副本表,在你创建新分支后,这些副本在新分支中会暂时不可用,因为 TiFlash 需要重新构建副本数据。 -- 当从特定时间点[创建分支](/tidb-cloud/branch-manage.md#create-a-branch)时: +- 当你从某一特定时间点[创建分支](/tidb-cloud/branch-manage.md#create-a-branch)时: - - 对于免费集群的分支,你可以选择过去 24 小时内的任何时间。 - - 对于可扩展集群的分支,你可以选择过去 14 天内的任何时间。 + - 免费集群的分支可以选择最近 24 小时内的任意时间点。 + - 可扩展集群的分支可以选择最近 14 天内的任意时间点。 如果你需要更多配额,请[联系 TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 -## 下一步 +## 后续操作 - [了解如何管理分支](/tidb-cloud/branch-manage.md) diff --git a/tidb-cloud/built-in-monitoring.md b/tidb-cloud/built-in-monitoring.md index 1cbfacf7cfaef..f47ee0810ade5 100644 --- a/tidb-cloud/built-in-monitoring.md +++ b/tidb-cloud/built-in-monitoring.md @@ -1,129 +1,129 @@ --- title: TiDB Cloud 内置指标 -summary: 了解如何查看 TiDB Cloud 内置指标并理解这些指标的含义。 +summary: 了解如何查看 TiDB Cloud 内置指标及这些指标的含义。 --- # TiDB Cloud 内置指标 -TiDB Cloud 在指标页面上收集和显示集群的一整套标准指标。通过查看这些指标,你可以轻松识别性能问题并确定当前的数据库部署是否满足你的需求。 +TiDB Cloud 会在 **Metrics** 页面收集并展示你的集群的全套标准指标。通过查看这些指标,你可以轻松识别性能问题,并判断当前的数据库部署是否满足你的需求。 -## 查看指标页面 +## 查看 Metrics 页面 -要在**指标**页面上查看指标,请执行以下步骤: +要在 **Metrics** 页面查看指标,请按照以下步骤操作: -1. 在项目的[**集群**](https://tidbcloud.com/project/clusters)页面上,点击目标集群的名称进入其概览页面。 +1. 在你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群的名称,进入其概览页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 -2. 在左侧导航栏中,点击**监控** > **指标**。 +2. 在左侧导航栏,点击 **Monitoring** > **Metrics**。 ## 指标保留策略 -对于 TiDB Cloud Dedicated 集群和 TiDB Cloud Serverless 集群,指标数据保留 7 天。 +对于 TiDB Cloud Dedicated 集群和 TiDB Cloud Serverless 集群,指标数据会保留 7 天。 ## TiDB Cloud Dedicated 集群的指标 -以下部分说明了 TiDB Cloud Dedicated 集群的**指标**页面上的指标。 +以下章节介绍了 TiDB Cloud Dedicated 集群在 **Metrics** 页面上的各项指标。 ### 概览 | 指标名称 | 标签 | 描述 | | :------------| :------| :-------------------------------------------- | -| Database Time by SQL types | database time, {SQL type} | database time:每秒总数据库时间。
{SQL type}:每秒 SQL 语句消耗的数据库时间,按 SQL 类型收集,如 `SELECT`、`INSERT` 和 `UPDATE`。 | -| Query Per Second | {SQL type} | 所有 TiDB 实例中每秒执行的 SQL 语句数量,按 SQL 类型收集,如 `SELECT`、`INSERT` 和 `UPDATE`。 | -| Query Duration | avg-{SQL type}, 99-{SQL type} | 从客户端向 TiDB 发送请求到 TiDB 执行请求并将结果返回给客户端的持续时间。通常,客户端请求以 SQL 语句的形式发送;但是,此持续时间可以包括执行 `COM_PING`、`COM_SLEEP`、`COM_STMT_FETCH` 和 `COM_SEND_LONG_DATA` 等命令的时间。TiDB 支持多查询,这意味着客户端可以一次发送多个 SQL 语句,如 `select 1; select 1; select 1;`。在这种情况下,此查询的总执行时间包括所有 SQL 语句的执行时间。 | -| Failed Queries | All, {Error type} @ {instance} | 每分钟在每个 TiDB 实例上根据 SQL 语句执行错误的错误类型统计(如语法错误和主键冲突)。它包含错误发生的模块和错误代码。 | -| Command Per Second | Query, StmtExecute, and StmtPrepare | 所有 TiDB 实例每秒处理的命令数量,基于命令类型。 | -| Queries Using Plan Cache OPS | hit, miss | hit:所有 TiDB 实例中每秒使用计划缓存的查询数量。
miss:所有 TiDB 实例中每秒未命中计划缓存的查询数量。 | -| Transaction Per Second | {types}-{transaction model} | 每秒执行的事务数量。 | -| Transaction Duration | avg-{transaction model}, 99-{transaction model} | 事务的平均或 99 百分位持续时间。 | -| Connection Count | All, active connection | All:到所有 TiDB 实例的连接数量。
Active connections:到所有 TiDB 实例的活动连接数量。 | -| Disconnection Count | {instance}-{result} | 每个 TiDB 实例断开连接的客户端数量。 | +| Database Time by SQL types | database time, {SQL type} | database time:每秒的数据库总耗时。
{SQL type}:每秒按 SQL 类型(如 `SELECT`、`INSERT`、`UPDATE`)统计的 SQL 语句数据库耗时。| +| Query Per Second | {SQL type} | 所有 TiDB 实例每秒执行的 SQL 语句数量,按 SQL 类型(如 `SELECT`、`INSERT`、`UPDATE`)统计。| +| Query Duration | avg-{SQL type}, 99-{SQL type} | 从客户端发送请求到 TiDB,直到 TiDB 执行请求并返回结果给客户端的持续时间。通常,客户端请求以 SQL 语句形式发送;但该持续时间也可能包括如 `COM_PING`、`COM_SLEEP`、`COM_STMT_FETCH`、`COM_SEND_LONG_DATA` 等命令的执行时间。TiDB 支持 Multi-Query,即客户端可以一次发送多条 SQL 语句,如 `select 1; select 1; select 1;`。此时,该查询的总执行时间包含所有 SQL 语句的执行时间。| +| Failed Queries | All, {Error type} @ {instance} | 按每个 TiDB 实例每分钟 SQL 语句执行错误统计的错误类型(如语法错误、主键冲突)。包含发生错误的模块和错误码。| +| Command Per Second | Query, StmtExecute, and StmtPrepare | 所有 TiDB 实例每秒按命令类型处理的命令数量。| +| Queries Using Plan Cache OPS | hit, miss | hit:所有 TiDB 实例每秒使用计划缓存的查询数量。
miss:所有 TiDB 实例每秒未命中计划缓存的查询数量。| +| Transaction Per Second | {types}-{transaction model} | 每秒执行的事务数量。| +| Transaction Duration | avg-{transaction model}, 99-{transaction model} | 事务的平均或第 99 百分位持续时间。| +| Connection Count | All, active connection | All:所有 TiDB 实例的连接数。
Active connections:所有 TiDB 实例的活跃连接数。| +| Disconnection Count | {instance}-{result} | 每个 TiDB 实例断开连接的客户端数量。| ### 高级 | 指标名称 | 标签 | 描述 | | :------------| :------| :-------------------------------------------- | -| Average Idle Connection Duration | avg-in-txn, avg-not-in-txn | 连接空闲持续时间表示连接处于空闲状态的持续时间。
avg-in-txn:连接在事务内时的平均空闲持续时间。
avg-not-in-txn:连接不在事务内时的平均空闲持续时间。 | -| Get Token Duration | avg, 99 | 获取 SQL 语句令牌所消耗的平均或 99 百分位持续时间。 | -| Parse Duration | avg, 99 | 解析 SQL 语句所消耗的平均或 99 百分位持续时间。 | -| Compile Duration | avg, 99 | 将解析的 SQL AST 编译为执行计划所消耗的平均或 99 百分位持续时间。 | -| Execute Duration | avg, 99 | 执行 SQL 语句执行计划所消耗的平均或 99 百分位持续时间。 | -| Average TiDB KV Request Duration | {Request Type} | 所有 TiDB 实例中执行 KV 请求所消耗的平均时间,基于请求类型,如 `Get`、`Prewrite` 和 `Commit`。 | -| Average TiKV gRPC Duration | {Request Type} | 所有 TiKV 实例中执行 gRPC 请求所消耗的平均时间,基于请求类型,如 `kv_get`、`kv_prewrite` 和 `kv_commit`。 | -| Average / P99 PD TSO Wait/RPC Duration | wait-avg/99, rpc-avg/99 | Wait:所有 TiDB 实例中等待 PD 返回 TSO 的平均或 99 百分位持续时间。
RPC:所有 TiDB 实例中从发送 TSO 请求到 PD 到接收 TSO 的平均时间或 99 百分位持续时间。 | -| Average / P99 Storage Async Write Duration | avg, 99 | 异步写入所消耗的平均或 99 百分位持续时间。平均存储异步写入持续时间 = 平均存储持续时间 + 平均应用持续时间。 | -| Average / P99 Store Duration | avg, 99 | 异步写入期间存储循环所消耗的平均或 99 百分位持续时间。 | -| Average / P99 Apply Duration | avg, 99 | 异步写入期间应用循环所消耗的平均或 99 百分位持续时间。 | -| Average / P99 Append Log Duration | avg, 99 | Raft 追加日志所消耗的平均或 99 百分位持续时间。 | -| Average / P99 Commit Log Duration | avg, 99 | Raft 提交日志所消耗的平均或 99 百分位持续时间。 | -| Average / P99 Apply Log Duration | avg, 99 | Raft 应用日志所消耗的平均或 99 百分位持续时间。 | +| Average Idle Connection Duration | avg-in-txn, avg-not-in-txn | 连接空闲持续时间表示连接处于空闲状态的时长。
avg-in-txn:连接处于事务中时的平均空闲持续时间。
avg-not-in-txn:连接不在事务中时的平均空闲持续时间。| +| Get Token Duration | avg, 99 | 获取 SQL 语句 token 的平均或第 99 百分位耗时。| +| Parse Duration | avg, 99 | 解析 SQL 语句的平均或第 99 百分位耗时。| +| Compile Duration | avg, 99 | 将解析后的 SQL AST 编译为执行计划的平均或第 99 百分位耗时。| +| Execute Duration | avg, 99 | 执行 SQL 语句执行计划的平均或第 99 百分位耗时。| +| Average TiDB KV Request Duration | {Request Type} | 所有 TiDB 实例按请求类型(如 `Get`、`Prewrite`、`Commit`)统计的 KV 请求平均耗时。| +| Average TiKV gRPC Duration | {Request Type} | 所有 TiKV 实例按请求类型(如 `kv_get`、`kv_prewrite`、`kv_commit`)统计的 gRPC 请求平均耗时。| +| Average / P99 PD TSO Wait/RPC Duration | wait-avg/99, rpc-avg/99 | Wait:所有 TiDB 实例等待 PD 返回 TSO 的平均或第 99 百分位耗时。
RPC:所有 TiDB 实例从发送 TSO 请求到 PD 到收到 TSO 的平均或第 99 百分位耗时。| +| Average / P99 Storage Async Write Duration | avg, 99 | 异步写入的平均或第 99 百分位耗时。平均存储异步写入耗时 = 平均 store 耗时 + 平均 apply 耗时。| +| Average / P99 Store Duration | avg, 99 | 异步写入过程中存储循环的平均或第 99 百分位耗时。| +| Average / P99 Apply Duration | avg, 99 | 异步写入过程中 apply 循环的平均或第 99 百分位耗时。| +| Average / P99 Append Log Duration | avg, 99 | Raft 追加日志的平均或第 99 百分位耗时。| +| Average / P99 Commit Log Duration | avg, 99 | Raft 提交日志的平均或第 99 百分位耗时。| +| Average / P99 Apply Log Duration | avg, 99 | Raft 应用日志的平均或第 99 百分位耗时。| ### 服务器 | 指标名称 | 标签 | 描述 | | :------------| :------| :-------------------------------------------- | -| TiDB Uptime | node | 每个 TiDB 节点自上次重启以来的运行时间。 | -| TiDB CPU Usage | node, limit | 每个 TiDB 节点的 CPU 使用统计或上限。 | -| TiDB Memory Usage | node, limit | 每个 TiDB 节点的内存使用统计或上限。 | -| TiKV Uptime | node | 每个 TiKV 节点自上次重启以来的运行时间。 | -| TiKV CPU Usage | node, limit | 每个 TiKV 节点的 CPU 使用统计或上限。 | -| TiKV Memory Usage | node, limit | 每个 TiKV 节点的内存使用统计或上限。 | -| TiKV IO Bps | node-write, node-read | 每个 TiKV 节点读写的每秒总输入/输出字节数。 | -| TiKV Storage Usage | node, limit | 每个 TiKV 节点的存储使用统计或上限。 | -| TiFlash Uptime | node | 每个 TiFlash 节点自上次重启以来的运行时间。 | -| TiFlash CPU Usage | node, limit | 每个 TiFlash 节点的 CPU 使用统计或上限。 | -| TiFlash Memory Usage | node, limit | 每个 TiFlash 节点的内存使用统计或上限。 | -| TiFlash IO MBps | node-write, node-read | 每个 TiFlash 节点读写的总字节数。 | -| TiFlash Storage Usage | node, limit | 每个 TiFlash 节点的存储使用统计或上限。 | +| TiDB Uptime | node | 每个 TiDB 节点自上次重启以来的运行时长。| +| TiDB CPU Usage | node, limit | 每个 TiDB 节点的 CPU 使用率统计或上限。| +| TiDB Memory Usage | node, limit | 每个 TiDB 节点的内存使用量统计或上限。| +| TiKV Uptime | node | 每个 TiKV 节点自上次重启以来的运行时长。| +| TiKV CPU Usage | node, limit | 每个 TiKV 节点的 CPU 使用率统计或上限。| +| TiKV Memory Usage | node, limit | 每个 TiKV 节点的内存使用量统计或上限。| +| TiKV IO Bps | node-write, node-read | 每个 TiKV 节点每秒读写的总输入/输出字节数。| +| TiKV Storage Usage | node, limit | 每个 TiKV 节点的存储使用量统计或上限。| +| TiFlash Uptime | node | 每个 TiFlash 节点自上次重启以来的运行时长。| +| TiFlash CPU Usage | node, limit | 每个 TiFlash 节点的 CPU 使用率统计或上限。| +| TiFlash Memory Usage | node, limit | 每个 TiFlash 节点的内存使用量统计或上限。| +| TiFlash IO MBps | node-write, node-read | 每个 TiFlash 节点的读写总字节数。| +| TiFlash Storage Usage | node, limit | 每个 TiFlash 节点的存储使用量统计或上限。| ## TiDB Cloud Serverless 集群的指标 -**指标**页面为 TiDB Cloud Serverless 集群提供了两个标签页: +**Metrics** 页面为 TiDB Cloud Serverless 集群提供了两个指标标签页: -- **集群状态**:显示集群级别的主要指标。 -- **数据库状态**:显示数据库级别的主要指标。 +- **Cluster Status**:展示集群级别的主要指标。 +- **Database Status**:展示数据库级别的主要指标。 -### 集群状态 +### Cluster Status -下表说明了**集群状态**标签页下的集群级别主要指标。 +下表展示了 **Cluster Status** 标签页下的集群级别主要指标。 | 指标名称 | 标签 | 描述 | | :------------| :------| :-------------------------------------------- | -| Request Units | RU per second | 请求单元(RU)是用于跟踪查询或事务资源消耗的度量单位。除了你运行的查询外,后台活动也会消耗请求单元,因此当 QPS 为 0 时,每秒请求单元可能不为零。 | -| Used Storage Size | Row-based storage, Columnar storage | 行存储的大小和列存储的大小。 | -| Query Per Second | All, {SQL type} | 每秒执行的 SQL 语句数量,按 SQL 类型收集,如 `SELECT`、`INSERT` 和 `UPDATE`。 | -| Average Query Duration | All, {SQL type} | 从客户端向 TiDB Cloud Serverless 集群发送请求到集群执行请求并将结果返回给客户端的持续时间。 | -| Failed Query | All | 每秒 SQL 语句执行错误的数量。 | -| Transaction Per Second | All | 每秒执行的事务数量。 | -| Average Transaction Duration | All | 事务的平均执行持续时间。 | -| Total Connection | All | 到 TiDB Cloud Serverless 集群的连接数量。 | +| Request Units | RU per second | Request Unit(RU)是用于衡量查询或事务资源消耗的单位。除了你运行的查询外,后台活动也会消耗 Request Units,因此即使 QPS 为 0,每秒的 Request Units 也可能不为零。| +| Used Storage Size | Row-based storage, Columnar storage | 行存储和列存储的存储空间大小。| +| Query Per Second | All, {SQL type} | 每秒执行的 SQL 语句数量,按 SQL 类型(如 `SELECT`、`INSERT`、`UPDATE`)统计。| +| Average Query Duration | All, {SQL type} | 从客户端发送请求到 TiDB Cloud Serverless 集群,直到集群执行请求并返回结果给客户端的持续时间。| +| Failed Query | All | 每秒 SQL 语句执行错误的数量。| +| Transaction Per Second | All | 每秒执行的事务数量。| +| Average Transaction Duration | All | 事务的平均执行时长。| +| Total Connection | All | 连接到 TiDB Cloud Serverless 集群的连接数。| -### 数据库状态 +### Database Status -下表说明了**数据库状态**标签页下的数据库级别主要指标。 +下表展示了 **Database Status** 标签页下的数据库级别主要指标。 | 指标名称 | 标签 | 描述 | | :------------| :------| :-------------------------------------------- | -| QPS Per DB | All, {Database name} | 每个数据库每秒执行的 SQL 语句数量,按 SQL 类型收集,如 `SELECT`、`INSERT` 和 `UPDATE`。 | -| Average Query Duration Per DB | All, {Database name} | 从客户端向数据库发送请求到数据库执行请求并将结果返回给客户端的持续时间。| -| Failed Query Per DB | All, {Database name} | 每个数据库每秒根据 SQL 语句执行错误的错误类型统计。| +| QPS Per DB | All, {Database name} | 每个数据库每秒执行的 SQL 语句数量,按 SQL 类型(如 `SELECT`、`INSERT`、`UPDATE`)统计。| +| Average Query Duration Per DB | All, {Database name} | 从客户端发送请求到数据库,直到数据库执行请求并返回结果给客户端的持续时间。| +| Failed Query Per DB | All, {Database name} | 每个数据库每秒 SQL 语句执行错误的类型统计。| -## 常见问题 +## FAQ -**1. 为什么此页面上的某些面板是空的?** +**1. 为什么本页面的某些面板为空?** -如果面板没有提供任何指标,可能的原因如下: +如果某个面板没有显示任何指标,可能的原因如下: -- 相应集群的工作负载没有触发此指标。例如,在没有失败查询的情况下,失败查询指标始终为空。 -- 集群版本较低。你需要升级到最新版本的 TiDB 才能看到这些指标。 +- 对应集群的负载没有触发该指标。例如,如果没有失败的查询,failed query 指标面板会一直为空。 +- 集群版本较低。你需要将其升级到最新的 TiDB 版本才能看到这些指标。 -如果排除了所有这些原因,你可以联系 [PingCAP 支持团队](/tidb-cloud/tidb-cloud-support.md)进行故障排查。 +如果排除了上述原因,你可以联系 [PingCAP support team](/tidb-cloud/tidb-cloud-support.md) 进行排查。 -**2. 为什么在罕见情况下指标可能不连续?** +**2. 为什么在极少数情况下指标会出现不连续?** -在某些罕见情况下,指标可能会丢失,例如当指标系统承受高压力时。 +在极少数情况下,指标可能会丢失,例如当指标系统压力过大时。 -如果你遇到此问题,可以联系 [PingCAP 支持团队](/tidb-cloud/tidb-cloud-support.md)进行故障排查。 +如果你遇到此问题,可以联系 [PingCAP Support](/tidb-cloud/tidb-cloud-support.md) 进行排查。 \ No newline at end of file diff --git a/tidb-cloud/changefeed-overview.md b/tidb-cloud/changefeed-overview.md index 4562e6ffe8ff8..116e1619281d6 100644 --- a/tidb-cloud/changefeed-overview.md +++ b/tidb-cloud/changefeed-overview.md @@ -5,105 +5,105 @@ summary: TiDB Cloud changefeed 帮助你将数据从 TiDB Cloud 流式传输到 # Changefeed -TiDB Cloud changefeed 帮助你将数据从 TiDB Cloud 流式传输到其他数据服务。目前,TiDB Cloud 支持将数据流式传输到 Apache Kafka、MySQL、TiDB Cloud 和云存储。 +TiDB Cloud changefeed 帮助你将数据从 TiDB Cloud 流式传输到其他数据服务。目前,TiDB Cloud 支持将数据流式传输到 Apache Kafka、MySQL、TiDB Cloud 以及云存储。 > **注意:** > -> - 目前,TiDB Cloud 每个集群最多允许 100 个 changefeed。 -> - 目前,TiDB Cloud 每个 changefeed 最多允许 100 个表过滤规则。 -> - 对于 [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless),changefeed 功能不可用。 +> - 目前,TiDB Cloud 每个集群最多只允许创建 100 个 changefeed。 +> - 目前,TiDB Cloud 每个 changefeed 最多只允许配置 100 条表过滤规则。 +> - 对于 [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless),暂不支持 changefeed 功能。 ## 查看 Changefeed 页面 -要访问 changefeed 功能,请执行以下步骤: +要访问 changefeed 功能,请按照以下步骤操作: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 -2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **Changefeed**。此时会显示 changefeed 页面。 +2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏点击 **Data** > **Changefeed**。此时会显示 changefeed 页面。 -在 **Changefeed** 页面上,你可以创建 changefeed,查看现有 changefeed 列表,以及操作现有的 changefeed(如扩缩容、暂停、恢复、编辑和删除 changefeed)。 +在 **Changefeed** 页面,你可以创建 changefeed,查看已有 changefeed 列表,并对已有 changefeed 进行操作(如扩缩容、暂停、恢复、编辑和删除 changefeed)。 ## 创建 changefeed 要创建 changefeed,请参考以下教程: -- [导出到 Apache Kafka](/tidb-cloud/changefeed-sink-to-apache-kafka.md) -- [导出到 MySQL](/tidb-cloud/changefeed-sink-to-mysql.md) -- [导出到 TiDB Cloud](/tidb-cloud/changefeed-sink-to-tidb-cloud.md) -- [导出到云存储](/tidb-cloud/changefeed-sink-to-cloud-storage.md) +- [Sink to Apache Kafka](/tidb-cloud/changefeed-sink-to-apache-kafka.md) +- [Sink to MySQL](/tidb-cloud/changefeed-sink-to-mysql.md) +- [Sink to TiDB Cloud](/tidb-cloud/changefeed-sink-to-tidb-cloud.md) +- [Sink to cloud storage](/tidb-cloud/changefeed-sink-to-cloud-storage.md) ## 查询 Changefeed RCU -1. 导航到目标 TiDB 集群的 [**Changefeed**](#查看-changefeed-页面) 页面。 -2. 找到要查询的相应 changefeed,然后在**操作**列中点击 **...** > **查看**。 -3. 你可以在页面的**规格**区域看到当前的 TiCDC 复制容量单位(RCU)。 +1. 进入目标 TiDB 集群的 [**Changefeed**](#view-the-changefeed-page) 页面。 +2. 找到你想要查询的 changefeed,在 **Action** 列点击 **...** > **View**。 +3. 你可以在页面的 **Specification** 区域看到当前 TiCDC Replication Capacity Units(RCU)。 ## 扩缩容 changefeed -你可以通过扩容或缩容 changefeed 来更改其 TiCDC 复制容量单位(RCU)。 +你可以通过扩容或缩容 changefeed 来调整其 TiCDC Replication Capacity Units(RCU)。 > **注意:** > -> - 要扩缩容集群的 changefeed,请确保该集群的所有 changefeed 都是在 2023 年 3 月 28 日之后创建的。 -> - 如果集群有在 2023 年 3 月 28 日之前创建的 changefeed,则该集群的现有 changefeed 和新创建的 changefeed 都不支持扩容或缩容。 +> - 若要对某个集群的 changefeed 进行扩缩容,需确保该集群的所有 changefeed 均为 2023 年 3 月 28 日之后创建。 +> - 如果某个集群存在 2023 年 3 月 28 日之前创建的 changefeed,则该集群的所有 changefeed(包括新建的)均不支持扩缩容。 -1. 导航到目标 TiDB 集群的 [**Changefeed**](#查看-changefeed-页面) 页面。 -2. 找到要扩缩容的相应 changefeed,然后在**操作**列中点击 **...** > **扩缩容**。 +1. 进入目标 TiDB 集群的 [**Changefeed**](#view-the-changefeed-page) 页面。 +2. 找到你想要扩缩容的 changefeed,在 **Action** 列点击 **...** > **Scale Up/Down**。 3. 选择新的规格。 -4. 点击**提交**。 +4. 点击 **Submit**。 -完成扩缩容过程大约需要 10 分钟(在此期间 changefeed 正常工作),切换到新规格需要几秒钟(在此期间 changefeed 将自动暂停和恢复)。 +扩缩容过程大约需要 10 分钟(期间 changefeed 正常工作),切换到新规格大约需要几秒钟(期间 changefeed 会自动暂停并恢复)。 ## 暂停或恢复 changefeed -1. 导航到目标 TiDB 集群的 [**Changefeed**](#查看-changefeed-页面) 页面。 -2. 找到要暂停或恢复的相应 changefeed,然后在**操作**列中点击 **...** > **暂停/恢复**。 +1. 进入目标 TiDB 集群的 [**Changefeed**](#view-the-changefeed-page) 页面。 +2. 找到你想要暂停或恢复的 changefeed,在 **Action** 列点击 **...** > **Pause/Resume**。 ## 编辑 changefeed > **注意:** > -> TiDB Cloud 目前仅允许编辑处于暂停状态的 changefeed。 +> TiDB Cloud 目前仅支持在暂停状态下编辑 changefeed。 -1. 导航到目标 TiDB 集群的 [**Changefeed**](#查看-changefeed-页面) 页面。 -2. 找到要暂停的 changefeed,然后在**操作**列中点击 **...** > **暂停**。 -3. 当 changefeed 状态变为 `已暂停` 时,点击 **...** > **编辑**以编辑相应的 changefeed。 +1. 进入目标 TiDB 集群的 [**Changefeed**](#view-the-changefeed-page) 页面。 +2. 找到你想要暂停的 changefeed,在 **Action** 列点击 **...** > **Pause**。 +3. 当 changefeed 状态变为 `Paused` 后,点击 **...** > **Edit** 编辑对应的 changefeed。 - TiDB Cloud 默认填充 changefeed 配置。你可以修改以下配置: + TiDB Cloud 会默认填充 changefeed 配置。你可以修改以下配置项: - - Apache Kafka 导出:所有配置。 - - MySQL 导出:**MySQL 连接**、**表过滤器**和**事件过滤器**。 - - TiDB Cloud 导出:**TiDB Cloud 连接**、**表过滤器**和**事件过滤器**。 - - 云存储导出:**存储端点**、**表过滤器**和**事件过滤器**。 + - Apache Kafka sink:所有配置项。 + - MySQL sink:**MySQL Connection**、**Table Filter** 和 **Event Filter**。 + - TiDB Cloud sink:**TiDB Cloud Connection**、**Table Filter** 和 **Event Filter**。 + - Cloud storage sink:**Storage Endpoint**、**Table Filter** 和 **Event Filter**。 -4. 编辑配置后,点击 **...** > **恢复**以恢复相应的 changefeed。 +4. 编辑配置后,点击 **...** > **Resume** 恢复对应的 changefeed。 ## 删除 changefeed -1. 导航到目标 TiDB 集群的 [**Changefeed**](#查看-changefeed-页面) 页面。 -2. 找到要删除的相应 changefeed,然后在**操作**列中点击 **...** > **删除**。 +1. 进入目标 TiDB 集群的 [**Changefeed**](#view-the-changefeed-page) 页面。 +2. 找到你想要删除的 changefeed,在 **Action** 列点击 **...** > **Delete**。 ## Changefeed 计费 -要了解 TiDB Cloud 中 changefeed 的计费情况,请参见 [Changefeed 计费](/tidb-cloud/tidb-cloud-billing-ticdc-rcu.md)。 +关于 TiDB Cloud 中 changefeed 的计费方式,请参见 [Changefeed 计费](/tidb-cloud/tidb-cloud-billing-ticdc-rcu.md)。 ## Changefeed 状态 -复制任务的状态表示复制任务的运行状态。在运行过程中,复制任务可能因错误而失败,被手动暂停、恢复,或达到指定的 `TargetTs`。这些行为可能导致复制任务状态的变化。 +复制任务的状态表示复制任务的运行状态。在运行过程中,复制任务可能因错误失败,或被手动暂停、恢复。这些操作会导致复制任务状态的变化。 -状态说明如下: +各状态说明如下: -- `CREATING`:正在创建复制任务。 +- `CREATING`:复制任务正在创建中。 - `RUNNING`:复制任务正常运行,checkpoint-ts 正常推进。 -- `EDITING`:正在编辑复制任务。 -- `PAUSING`:正在暂停复制任务。 +- `EDITING`:复制任务正在编辑中。 +- `PAUSING`:复制任务正在暂停中。 - `PAUSED`:复制任务已暂停。 -- `RESUMING`:正在恢复复制任务。 -- `DELETING`:正在删除复制任务。 +- `RESUMING`:复制任务正在恢复中。 +- `DELETING`:复制任务正在删除中。 - `DELETED`:复制任务已删除。 -- `WARNING`:复制任务返回警告。由于一些可恢复的错误,复制无法继续。处于此状态的 changefeed 会一直尝试恢复,直到状态转为 `RUNNING`。处于此状态的 changefeed 会阻塞 [GC 操作](https://docs.pingcap.com/tidb/stable/garbage-collection-overview)。 -- `FAILED`:复制任务失败。由于某些错误,复制任务无法恢复且无法自动恢复。如果在增量数据的垃圾回收(GC)之前解决了问题,你可以手动恢复失败的 changefeed。增量数据的默认生存时间(TTL)为 24 小时,这意味着 GC 机制不会删除 changefeed 中断后 24 小时内的任何数据。 +- `WARNING`:复制任务返回警告。由于某些可恢复的错误,复制无法继续。处于该状态的 changefeed 会持续尝试恢复,直到状态变为 `RUNNING`。该状态下的 changefeed 会阻塞 [GC 操作](https://docs.pingcap.com/tidb/stable/garbage-collection-overview)。 +- `FAILED`:复制任务失败。由于某些错误,复制任务无法恢复且无法自动修复。如果在增量数据的垃圾回收(GC)之前解决了相关问题,你可以手动恢复失败的 changefeed。增量数据的默认生存时间(TTL)为 24 小时,即 changefeed 中断后 24 小时内 GC 机制不会删除任何数据。 \ No newline at end of file diff --git a/tidb-cloud/changefeed-sink-to-apache-kafka.md b/tidb-cloud/changefeed-sink-to-apache-kafka.md index 7e17d043f4ad0..2a949441eac19 100644 --- a/tidb-cloud/changefeed-sink-to-apache-kafka.md +++ b/tidb-cloud/changefeed-sink-to-apache-kafka.md @@ -1,112 +1,302 @@ --- -title: 同步数据到 Apache Kafka -summary: 本文档说明如何创建 changefeed 将数据从 TiDB Cloud 同步到 Apache Kafka。它包括限制、前提条件以及为 Apache Kafka 配置 changefeed 的步骤。该过程涉及设置网络连接、为 Kafka ACL 授权添加权限以及配置 changefeed 规格。 +title: Sink to Apache Kafka +summary: 本文档介绍如何创建变更订阅(changefeed),将数据从 TiDB Cloud 流式同步到 Apache Kafka。内容包括限制、前置条件,以及为 Apache Kafka 配置变更订阅的步骤。该过程涉及网络连接设置、为 Kafka ACL 授权添加权限,以及配置变更订阅规范。 --- -# 同步数据到 Apache Kafka +# Sink to Apache Kafka -本文档描述如何创建 changefeed 将数据从 TiDB Cloud 同步到 Apache Kafka。 +本文档介绍如何创建变更订阅(changefeed),将数据从 TiDB Cloud 流式同步到 Apache Kafka。 -> **注意:** +> **Note:** > -> - 要使用 changefeed 功能,请确保你的 TiDB Cloud Dedicated 集群版本是 v6.1.3 或更高版本。 -> - 对于 [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless),changefeed 功能不可用。 +> - 要使用变更订阅功能,请确保你的 TiDB Cloud 专属集群版本为 v6.1.3 或更高版本。 +> - 对于 [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless),暂不支持变更订阅功能。 ## 限制 -- 对于每个 TiDB Cloud 集群,你最多可以创建 100 个 changefeed。 -- 目前,TiDB Cloud 不支持上传自签名 TLS 证书来连接 Kafka broker。 -- 由于 TiDB Cloud 使用 TiCDC 建立 changefeed,它具有与 TiCDC 相同的[限制](https://docs.pingcap.com/tidb/stable/ticdc-overview#unsupported-scenarios)。 -- 如果要复制的表没有主键或非空唯一索引,在某些重试场景中,由于复制过程中缺少唯一约束,可能会导致下游插入重复数据。 -- 如果你选择 Private Link 或 Private Service Connect 作为网络连接方式,请确保你的 TiDB 集群版本满足以下要求: +- 每个 TiDB Cloud 集群最多可创建 100 个变更订阅。 +- 目前,TiDB Cloud 不支持上传自签名 TLS 证书以连接 Kafka broker。 +- 由于 TiDB Cloud 使用 TiCDC 建立变更订阅,因此具有与 TiCDC 相同的[限制](https://docs.pingcap.com/tidb/stable/ticdc-overview#unsupported-scenarios)。 +- 如果待同步的表没有主键或非空唯一索引,在某些重试场景下,由于缺少唯一约束,可能会导致下游插入重复数据。 +- 如果你选择 Private Link 或 Private Service Connect 作为网络连接方式,请确保 TiDB 集群版本满足以下要求: - - 对于 v6.5.x:版本 v6.5.9 或更高版本 - - 对于 v7.1.x:版本 v7.1.4 或更高版本 - - 对于 v7.5.x:版本 v7.5.1 或更高版本 - - 对于 v8.1.x:支持所有 v8.1.x 及更高版本 -- 如果你想使用 Debezium 作为数据格式,请确保你的 TiDB 集群版本是 v8.1.0 或更高版本。 -- 对于 Kafka 消息的分区分布,请注意以下事项: + - v6.5.x:需为 v6.5.9 或更高版本 + - v7.1.x:需为 v7.1.4 或更高版本 + - v7.5.x:需为 v7.5.1 或更高版本 + - v8.1.x:支持所有 v8.1.x 及更高版本 +- 如果你希望使用 Debezium 作为数据格式,请确保 TiDB 集群版本为 v8.1.0 或更高版本。 +- 关于 Kafka 消息的分区分布,请注意以下事项: - - 如果你想通过指定索引名称将变更日志按主键或索引值分发到 Kafka 分区,请确保你的 TiDB 集群版本是 v7.5.0 或更高版本。 - - 如果你想将变更日志按列值分发到 Kafka 分区,请确保你的 TiDB 集群版本是 v7.5.0 或更高版本。 + - 如果你希望按主键或索引值分发变更日志到指定索引名的 Kafka 分区,请确保 TiDB 集群版本为 v7.5.0 或更高版本。 + - 如果你希望按列值分发变更日志到 Kafka 分区,请确保 TiDB 集群版本为 v7.5.0 或更高版本。 -## 前提条件 +## 前置条件 -在创建 changefeed 将数据同步到 Apache Kafka 之前,你需要完成以下前提条件: +在创建变更订阅以将数据流式同步到 Apache Kafka 之前,你需要完成以下前置条件: - 设置网络连接 - 为 Kafka ACL 授权添加权限 ### 网络 -确保你的 TiDB 集群可以连接到 Apache Kafka 服务。你可以选择以下连接方式之一: +确保你的 TiDB 集群可以连接到 Apache Kafka 服务。你可以选择以下任一连接方式: -- Private Connect:适用于避免 VPC CIDR 冲突并满足安全合规要求,但会产生额外的[私有数据链路成本](/tidb-cloud/tidb-cloud-billing-ticdc-rcu.md#私有数据链路成本)。 -- VPC 对等连接:适用于成本效益高的选项,但需要管理潜在的 VPC CIDR 冲突和安全考虑。 -- 公共 IP:适用于快速设置。 +- Private Connect:适用于避免 VPC CIDR 冲突并满足安全合规要求,但会产生额外的 [Private Data Link Cost](/tidb-cloud/tidb-cloud-billing-ticdc-rcu.md#private-data-link-cost)。 +- VPC Peering:作为一种经济高效的选项,但需要管理潜在的 VPC CIDR 冲突和安全问题。 +- Public IP:适用于快速搭建环境。
-Private Connect 利用云提供商的 **Private Link** 或 **Private Service Connect** 技术,使你的 VPC 中的资源能够使用私有 IP 地址连接到其他 VPC 中的服务,就像这些服务直接托管在你的 VPC 中一样。 +Private Connect 利用云服务商的 **Private Link** 或 **Private Service Connect** 技术,使你 VPC 中的资源能够通过私有 IP 地址连接到其他 VPC 中的服务,就像这些服务直接托管在你自己的 VPC 中一样。 -TiDB Cloud 目前仅支持自托管 Kafka 的 Private Connect。它不支持直接集成 MSK、Confluent Kafka 或其他 Kafka SaaS 服务。要通过 Private Connect 连接到这些 Kafka SaaS 服务,你可以部署 [kafka-proxy](https://github.com/grepplabs/kafka-proxy) 作为中介,有效地将 Kafka 服务公开为自托管 Kafka。有关详细示例,请参见[在 Google Cloud 中使用 Kafka-proxy 设置自托管 Kafka Private Service Connect](/tidb-cloud/setup-self-hosted-kafka-private-service-connect.md#使用-kafka-proxy-设置自托管-kafka-private-service-connect)。这种设置在所有 Kafka SaaS 服务中都类似。 +TiDB Cloud 目前仅支持自建 Kafka 的 Private Connect,不支持与 MSK、Confluent Kafka 或其他 Kafka SaaS 服务的直接集成。若需通过 Private Connect 连接这些 Kafka SaaS 服务,你可以部署一个 [kafka-proxy](https://github.com/grepplabs/kafka-proxy) 作为中间层,将 Kafka 服务暴露为自建 Kafka。详细示例可参考 [Set Up Self-Hosted Kafka Private Service Connect by Kafka-proxy in Google Cloud](/tidb-cloud/setup-self-hosted-kafka-private-service-connect.md#set-up-self-hosted-kafka-private-service-connect-by-kafka-proxy)。该方案适用于所有 Kafka SaaS 服务。 -- 如果你的 Apache Kafka 服务托管在 AWS 中,请按照[在 AWS 中设置自托管 Kafka Private Link 服务](/tidb-cloud/setup-aws-self-hosted-kafka-private-link-service.md)确保网络连接正确配置。设置完成后,在 TiDB Cloud 控制台中提供以下信息以创建 changefeed: +- 如果你的 Apache Kafka 服务托管在 AWS,请按照 [Set Up Self-Hosted Kafka Private Link Service in AWS](/tidb-cloud/setup-aws-self-hosted-kafka-private-link-service.md) 配置网络连接。配置完成后,在 TiDB Cloud 控制台创建变更订阅时需提供以下信息: - - Kafka 广播监听器模式中的 ID - - 端点服务名称 - - 引导端口 + - Kafka Advertised Listener Pattern 中的 ID + - Endpoint Service Name + - Bootstrap Ports -- 如果你的 Apache Kafka 服务托管在 Google Cloud 中,请按照[在 Google Cloud 中设置自托管 Kafka Private Service Connect](/tidb-cloud/setup-self-hosted-kafka-private-service-connect.md)确保网络连接正确配置。设置完成后,在 TiDB Cloud 控制台中提供以下信息以创建 changefeed: +- 如果你的 Apache Kafka 服务托管在 Google Cloud,请按照 [Set Up Self-Hosted Kafka Private Service Connect in Google Cloud](/tidb-cloud/setup-self-hosted-kafka-private-service-connect.md) 配置网络连接。配置完成后,在 TiDB Cloud 控制台创建变更订阅时需提供以下信息: - - Kafka 广播监听器模式中的 ID - - 服务附件 - - 引导端口 + - Kafka Advertised Listener Pattern 中的 ID + - Service Attachment + - Bootstrap Ports -- 如果你的 Apache Kafka 服务托管在 Azure 中,请按照[在 Azure 中设置自托管 Kafka Private Link 服务](/tidb-cloud/setup-azure-self-hosted-kafka-private-link-service.md)确保网络连接正确配置。设置完成后,在 TiDB Cloud 控制台中提供以下信息以创建 changefeed: +- 如果你的 Apache Kafka 服务托管在 Azure,请按照 [Set Up Self-Hosted Kafka Private Link Service in Azure](/tidb-cloud/setup-azure-self-hosted-kafka-private-link-service.md) 配置网络连接。配置完成后,在 TiDB Cloud 控制台创建变更订阅时需提供以下信息: - - Kafka 广播监听器模式中的 ID - - Private Link 服务的别名 - - 引导端口 + - Kafka Advertised Listener Pattern 中的 ID + - Private Link Service 的别名(Alias) + - Bootstrap Ports
-
+
-如果你的 Apache Kafka 服务在没有互联网访问的 AWS VPC 中,请执行以下步骤: +如果你的 Apache Kafka 服务位于没有互联网访问权限的 AWS VPC,请执行以下步骤: -1. [设置 VPC 对等连接](/tidb-cloud/set-up-vpc-peering-connections.md),连接 Apache Kafka 服务的 VPC 和你的 TiDB 集群。 -2. 修改与 Apache Kafka 服务关联的安全组的入站规则。 +1. 在 Apache Kafka 服务所在 VPC 与 TiDB 集群之间[建立 VPC Peering 连接](/tidb-cloud/set-up-vpc-peering-connections.md)。 +2. 修改 Apache Kafka 服务关联的安全组的入站规则。 - 你必须将你的 TiDB Cloud 集群所在区域的 CIDR 添加到入站规则中。CIDR 可以在 **VPC 对等连接**页面找到。这样做可以允许流量从你的 TiDB 集群流向 Kafka broker。 + 你必须将 TiDB Cloud 集群所在区域的 CIDR 添加到入站规则中。该 CIDR 可在 **VPC Peering** 页面找到。这样可以允许 TiDB 集群的流量访问 Kafka broker。 -3. 如果 Apache Kafka URL 包含主机名,你需要允许 TiDB Cloud 能够解析 Apache Kafka broker 的 DNS 主机名。 +3. 如果 Apache Kafka 的 URL 包含主机名,你需要允许 TiDB Cloud 能够解析 Kafka broker 的 DNS 主机名。 - 1. 按照[为 VPC 对等连接启用 DNS 解析](https://docs.aws.amazon.com/vpc/latest/peering/vpc-peering-dns.html)中的步骤操作。 - 2. 启用**接受者 DNS 解析**选项。 + 1. 按照 [Enable DNS resolution for a VPC peering connection](https://docs.aws.amazon.com/vpc/latest/peering/vpc-peering-dns.html) 的步骤操作。 + 2. 启用 **Accepter DNS resolution** 选项。 -如果你的 Apache Kafka 服务在没有互联网访问的 Google Cloud VPC 中,请执行以下步骤: +如果你的 Apache Kafka 服务位于没有互联网访问权限的 Google Cloud VPC,请执行以下步骤: -1. [设置 VPC 对等连接](/tidb-cloud/set-up-vpc-peering-connections.md),连接 Apache Kafka 服务的 VPC 和你的 TiDB 集群。 +1. 在 Apache Kafka 服务所在 VPC 与 TiDB 集群之间[建立 VPC Peering 连接](/tidb-cloud/set-up-vpc-peering-connections.md)。 2. 修改 Apache Kafka 所在 VPC 的入站防火墙规则。 - 你必须将你的 TiDB Cloud 集群所在区域的 CIDR 添加到入站防火墙规则中。CIDR 可以在 **VPC 对等连接**页面找到。这样做可以允许流量从你的 TiDB 集群流向 Kafka broker。 + 你必须将 TiDB Cloud 集群所在区域的 CIDR 添加到入站防火墙规则中。该 CIDR 可在 **VPC Peering** 页面找到。这样可以允许 TiDB 集群的流量访问 Kafka broker。
-
+
-如果你想为你的 Apache Kafka 服务提供公共 IP 访问,请为所有 Kafka broker 分配公共 IP 地址。 +如果你希望通过 Public IP 访问 Apache Kafka 服务,请为所有 Kafka broker 分配 Public IP 地址。 -不建议在生产环境中使用公共 IP。 +**不建议**在生产环境中使用 Public IP。
### Kafka ACL 授权 -要允许 TiDB Cloud changefeed 将数据同步到 Apache Kafka 并自动创建 Kafka 主题,请确保在 Kafka 中添加了以下权限: +为了让 TiDB Cloud 变更订阅能够将数据流式同步到 Apache Kafka 并自动创建 Kafka topic,请确保在 Kafka 中添加以下权限: -- 为 Kafka 中的主题资源类型添加了 `Create` 和 `Write` 权限。 -- 为 Kafka 中的集群资源类型添加了 `DescribeConfigs` 权限。 +- 为 Kafka 的 topic 资源类型添加 `Create` 和 `Write` 权限。 +- 为 Kafka 的 cluster 资源类型添加 `DescribeConfigs` 权限。 -例如,如果你的 Kafka 集群在 Confluent Cloud 中,你可以参见 Confluent 文档中的[资源](https://docs.confluent.io/platform/current/kafka/authorization.html#resources)和[添加 ACL](https://docs.confluent.io/platform/current/kafka/authorization.html#adding-acls)了解更多信息。 +例如,如果你的 Kafka 集群在 Confluent Cloud,可以参考 Confluent 文档中的 [Resources](https://docs.confluent.io/platform/current/kafka/authorization.html#resources) 和 [Adding ACLs](https://docs.confluent.io/platform/current/kafka/authorization.html#adding-acls) 获取更多信息。 + +## 第 1 步:打开 Apache Kafka 的 Changefeed 页面 + +1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com)。 +2. 进入目标 TiDB 集群的集群总览页面,然后点击左侧导航栏的 **Data** > **Changefeed**。 +3. 点击 **Create Changefeed**,并选择 **Kafka** 作为 **Destination**。 + +## 第 2 步:配置变更订阅目标 + +具体步骤根据你选择的连接方式有所不同。 + + +
+ +1. 在 **Connectivity Method** 中选择 **VPC Peering** 或 **Public IP**,填写你的 Kafka broker endpoint。多个 endpoint 可用英文逗号 `,` 分隔。 +2. 根据你的 Kafka 认证配置,选择 **Authentication** 选项。 + + - 如果 Kafka 不需要认证,保持默认选项 **Disable**。 + - 如果 Kafka 需要认证,选择相应的认证类型,并填写 Kafka 账号的 **user name** 和 **password**。 + +3. 选择你的 **Kafka Version**。如果不确定,建议选择 **Kafka v2**。 +4. 选择本次变更订阅的数据 **Compression** 类型。 +5. 如果你的 Kafka 启用了 TLS 加密,并希望使用 TLS 加密连接 Kafka,请启用 **TLS Encryption** 选项。 +6. 点击 **Next** 测试网络连接。测试通过后会进入下一页面。 + +
+
+ +1. 在 **Connectivity Method** 中选择 **Private Link**。 +2. 授权 TiDB Cloud 的 [AWS Principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-accounts) 为你的 endpoint service 创建 endpoint。AWS Principal 信息可在网页提示中获取。 +3. 确保在 [Set Up Self-Hosted Kafka Private Link Service in AWS](/tidb-cloud/setup-aws-self-hosted-kafka-private-link-service.md) 的 **Network** 部分,选择了相同的 **Number of AZs** 和 **AZ IDs of Kafka Deployment**,并在 **Kafka Advertised Listener Pattern** 中填写了相同的唯一 ID。 +4. 填写在 [Set Up Self-Hosted Kafka Private Link Service in AWS](/tidb-cloud/setup-aws-self-hosted-kafka-private-link-service.md) 配置的 **Endpoint Service Name**。 +5. 填写 **Bootstrap Ports**。建议每个 AZ 至少设置一个端口,多个端口可用英文逗号 `,` 分隔。 +6. 根据你的 Kafka 认证配置,选择 **Authentication** 选项。 + + - 如果 Kafka 不需要认证,保持默认选项 **Disable**。 + - 如果 Kafka 需要认证,选择相应的认证类型,并填写 Kafka 账号的 **user name** 和 **password**。 + +7. 选择你的 **Kafka Version**。如果不确定,建议选择 **Kafka v2**。 +8. 选择本次变更订阅的数据 **Compression** 类型。 +9. 如果你的 Kafka 启用了 TLS 加密,并希望使用 TLS 加密连接 Kafka,请启用 **TLS Encryption** 选项。 +10. 点击 **Next** 测试网络连接。测试通过后会进入下一页面。 +11. TiDB Cloud 会为 **Private Link** 创建 endpoint,可能需要几分钟时间。 +12. endpoint 创建完成后,登录你的云服务商控制台,接受连接请求。 +13. 返回 [TiDB Cloud 控制台](https://tidbcloud.com) 确认你已接受连接请求。TiDB Cloud 会测试连接,测试通过后进入下一页面。 + +
+
+ +1. 在 **Connectivity Method** 中选择 **Private Service Connect**。 +2. 确保在 [Set Up Self-Hosted Kafka Private Service Connect in Google Cloud](/tidb-cloud/setup-self-hosted-kafka-private-service-connect.md) 的 **Network** 部分,在 **Kafka Advertised Listener Pattern** 中填写了相同的唯一 ID。 +3. 填写在 [Setup Self Hosted Kafka Private Service Connect in Google Cloud](/tidb-cloud/setup-self-hosted-kafka-private-service-connect.md) 配置的 **Service Attachment**。 +4. 填写 **Bootstrap Ports**。建议提供多个端口,多个端口可用英文逗号 `,` 分隔。 +5. 根据你的 Kafka 认证配置,选择 **Authentication** 选项。 + + - 如果 Kafka 不需要认证,保持默认选项 **Disable**。 + - 如果 Kafka 需要认证,选择相应的认证类型,并填写 Kafka 账号的 **user name** 和 **password**。 + +6. 选择你的 **Kafka Version**。如果不确定,建议选择 **Kafka v2**。 +7. 选择本次变更订阅的数据 **Compression** 类型。 +8. 如果你的 Kafka 启用了 TLS 加密,并希望使用 TLS 加密连接 Kafka,请启用 **TLS Encryption** 选项。 +9. 点击 **Next** 测试网络连接。测试通过后会进入下一页面。 +10. TiDB Cloud 会为 **Private Service Connect** 创建 endpoint,可能需要几分钟时间。 +11. endpoint 创建完成后,登录你的云服务商控制台,接受连接请求。 +12. 返回 [TiDB Cloud 控制台](https://tidbcloud.com) 确认你已接受连接请求。TiDB Cloud 会测试连接,测试通过后进入下一页面。 + +
+
+ +1. 在 **Connectivity Method** 中选择 **Private Link**。 +2. 在创建变更订阅前,授权 TiDB Cloud 的 Azure 订阅,或允许任何拥有你别名的人访问你的 Private Link 服务。Azure 订阅信息可在网页的 **Reminders before proceeding** 提示中获取。关于 Private Link 服务可见性,详见 Azure 文档 [Control service exposure](https://learn.microsoft.com/en-us/azure/private-link/private-link-service-overview#control-service-exposure)。 +3. 确保在 [Set Up Self-Hosted Kafka Private Link Service in Azure](/tidb-cloud/setup-azure-self-hosted-kafka-private-link-service.md) 的 **Network** 部分,在 **Kafka Advertised Listener Pattern** 中填写了相同的唯一 ID。 +4. 填写在 [Set Up Self-Hosted Kafka Private Link Service in Azure](/tidb-cloud/setup-azure-self-hosted-kafka-private-link-service.md) 配置的 **Alias of Private Link Service**。 +5. 填写 **Bootstrap Ports**。建议每个 AZ 至少设置一个端口,多个端口可用英文逗号 `,` 分隔。 +6. 根据你的 Kafka 认证配置,选择 **Authentication** 选项。 + + - 如果 Kafka 不需要认证,保持默认选项 **Disable**。 + - 如果 Kafka 需要认证,选择相应的认证类型,并填写 Kafka 账号的 **user name** 和 **password**。 + +7. 选择你的 **Kafka Version**。如果不确定,建议选择 **Kafka v2**。 +8. 选择本次变更订阅的数据 **Compression** 类型。 +9. 如果你的 Kafka 启用了 TLS 加密,并希望使用 TLS 加密连接 Kafka,请启用 **TLS Encryption** 选项。 +10. 点击 **Next** 测试网络连接。测试通过后会进入下一页面。 +11. TiDB Cloud 会为 **Private Link** 创建 endpoint,可能需要几分钟时间。 +12. endpoint 创建完成后,登录 [Azure portal](https://portal.azure.com/) 并接受连接请求。 +13. 返回 [TiDB Cloud 控制台](https://tidbcloud.com) 确认你已接受连接请求。TiDB Cloud 会测试连接,测试通过后进入下一页面。 + +
+
+ +## 第 3 步:设置变更订阅 + +1. 自定义 **Table Filter**,筛选你希望同步的表。规则语法详见 [table filter rules](/table-filter.md)。 + + - **Filter Rules**:你可以在此列设置过滤规则。默认规则为 `*.*`,表示同步所有表。添加新规则后,TiDB Cloud 会查询 TiDB 中所有表,并在右侧仅显示匹配规则的表。最多可添加 100 条过滤规则。 + - **Tables with valid keys**:此列显示具有有效键(主键或唯一索引)的表。 + - **Tables without valid keys**:此列显示缺少主键或唯一键的表。这类表在同步时存在挑战,因为缺少唯一标识符可能导致下游处理重复事件时数据不一致。为保证数据一致性,建议在同步前为这些表添加唯一键或主键,或通过过滤规则排除这些表。例如,可通过规则 `"!test.tbl1"` 排除表 `test.tbl1`。 + +2. 自定义 **Event Filter**,筛选你希望同步的事件。 + + - **Tables matching**:你可以设置事件过滤器应用于哪些表。规则语法与前述 **Table Filter** 区域相同。每个变更订阅最多可添加 10 条事件过滤规则。 + - **Event Filter**:你可以使用以下事件过滤器从变更订阅中排除特定事件: + - **Ignore event**:排除指定类型的事件。 + - **Ignore SQL**:排除匹配指定表达式的 DDL 事件。例如,`^drop` 排除以 `DROP` 开头的语句,`add column` 排除包含 `ADD COLUMN` 的语句。 + - **Ignore insert value expression**:排除满足特定条件的 `INSERT` 语句。例如,`id >= 100` 排除 `id` 大于等于 100 的 `INSERT` 语句。 + - **Ignore update new value expression**:排除新值满足指定条件的 `UPDATE` 语句。例如,`gender = 'male'` 排除更新后 `gender` 为 `male` 的变更。 + - **Ignore update old value expression**:排除旧值满足指定条件的 `UPDATE` 语句。例如,`age < 18` 排除旧值 `age` 小于 18 的变更。 + - **Ignore delete value expression**:排除满足指定条件的 `DELETE` 语句。例如,`name = 'john'` 排除 `name` 为 `'john'` 的删除操作。 + +3. 自定义 **Column Selector**,选择事件中的列,仅将这些列的数据变更发送到下游。 + + - **Tables matching**:指定列选择器应用于哪些表。未匹配任何规则的表将发送所有列。 + - **Column Selector**:指定匹配表中哪些列会被发送到下游。 + + 更多匹配规则说明,参见 [Column selectors](https://docs.pingcap.com/tidb/stable/ticdc-sink-to-kafka/#column-selectors)。 + +4. 在 **Data Format** 区域,选择你期望的 Kafka 消息格式。 + + - Avro 是一种紧凑、快速的二进制数据格式,支持丰富的数据结构,广泛应用于各种流式系统。详见 [Avro data format](https://docs.pingcap.com/tidb/stable/ticdc-avro-protocol)。 + - Canal-JSON 是一种纯 JSON 文本格式,易于解析。详见 [Canal-JSON data format](https://docs.pingcap.com/tidb/stable/ticdc-canal-json)。 + - Open Protocol 是一种行级数据变更通知协议,为监控、缓存、全文索引、分析引擎及不同数据库间主从复制等场景提供数据源。详见 [Open Protocol data format](https://docs.pingcap.com/tidb/stable/ticdc-open-protocol)。 + - Debezium 是一个捕获数据库变更的工具。它将每个捕获到的数据库变更转换为一个称为“事件”的消息,并将这些事件发送到 Kafka。详见 [Debezium data format](https://docs.pingcap.com/tidb/stable/ticdc-debezium)。 + +5. 如果你希望在 Kafka 消息体中添加 TiDB 扩展字段,请启用 **TiDB Extension** 选项。 + + 关于 TiDB 扩展字段的更多信息,参见 [Avro 数据格式中的 TiDB 扩展字段](https://docs.pingcap.com/tidb/stable/ticdc-avro-protocol#tidb-extension-fields) 和 [Canal-JSON 数据格式中的 TiDB 扩展字段](https://docs.pingcap.com/tidb/stable/ticdc-canal-json#tidb-extension-field)。 + +6. 如果你选择 **Avro** 作为数据格式,页面会显示一些 Avro 专属配置。你可以按如下方式填写: + + - 在 **Decimal** 和 **Unsigned BigInt** 配置项中,指定 TiDB Cloud 如何在 Kafka 消息中处理 decimal 和 unsigned bigint 数据类型。 + - 在 **Schema Registry** 区域,填写你的 schema registry endpoint。如果启用 **HTTP Authentication**,会显示用户名和密码字段,并自动填入 TiDB 集群 endpoint 和密码。 + +7. 在 **Topic Distribution** 区域,选择分发模式,并根据模式填写 topic 名称配置。 + + 如果你选择 **Avro** 作为数据格式,则只能在 **Distribution Mode** 下拉列表中选择 **Distribute changelogs by table to Kafka Topics** 模式。 + + 分发模式控制变更订阅如何创建 Kafka topic,可以按表、按库或将所有变更日志发送到一个 topic。 + + - **Distribute changelogs by table to Kafka Topics** + + 如果你希望为每个表创建独立的 Kafka topic,选择此模式。这样,某个表的所有 Kafka 消息都会发送到专属 topic。你可以通过设置 topic 前缀、数据库名与表名之间的分隔符以及后缀自定义 topic 名称。例如,分隔符设置为 `_` 时,topic 名称格式为 `_`。 + + 对于非行级事件(如 Create Schema Event)的变更日志,可以在 **Default Topic Name** 字段指定 topic 名称,变更订阅会相应创建 topic 收集此类变更日志。 + + - **Distribute changelogs by database to Kafka Topics** + + 如果你希望为每个数据库创建独立的 Kafka topic,选择此模式。这样,某个数据库的所有 Kafka 消息都会发送到专属 topic。你可以通过设置 topic 前缀和后缀自定义数据库的 topic 名称。 + + 对于非行级事件(如 Resolved Ts Event)的变更日志,可以在 **Default Topic Name** 字段指定 topic 名称,变更订阅会相应创建 topic 收集此类变更日志。 + + - **Send all changelogs to one specified Kafka Topic** + + 如果你希望所有变更日志都发送到同一个 Kafka topic,选择此模式。这样,变更订阅中的所有 Kafka 消息都会发送到一个 topic。你可以在 **Topic Name** 字段定义 topic 名称。 + +8. 在 **Partition Distribution** 区域,你可以决定 Kafka 消息将被发送到哪个分区。你可以为所有表定义**单一分区分发器**,也可以为不同表定义**不同的分区分发器**。TiDB Cloud 提供四种分发器类型: + + - **Distribute changelogs by primary key or index value to Kafka partition** + + 如果你希望将某个表的 Kafka 消息分发到不同分区,选择此方式。行变更日志的主键或索引值将决定其被发送到哪个分区。该方式有助于分区均衡,并保证行级有序性。 + + - **Distribute changelogs by table to Kafka partition** + + 如果你希望将某个表的 Kafka 消息全部发送到同一个分区,选择此方式。行变更日志的表名将决定其被发送到哪个分区。该方式保证表级有序性,但可能导致分区不均衡。 + + - **Distribute changelogs by timestamp to Kafka partition** + + 如果你希望将 Kafka 消息随机分发到不同分区,选择此方式。行变更日志的 commitTs 将决定其被发送到哪个分区。该方式有助于分区均衡,并保证每个分区内的有序性。但同一数据项的多次变更可能被发送到不同分区,不同消费者的消费进度可能不同,可能导致数据不一致。因此,消费者需要在消费前按 commitTs 对多分区数据进行排序。 + + - **Distribute changelogs by column value to Kafka partition** + + 如果你希望将某个表的 Kafka 消息分发到不同分区,选择此方式。行变更日志的指定列值将决定其被发送到哪个分区。该方式保证每个分区内的有序性,并确保相同列值的变更日志被发送到同一分区。 + +9. 在 **Topic Configuration** 区域,配置以下数值。变更订阅会根据这些数值自动创建 Kafka topic。 + + - **Replication Factor**:控制每条 Kafka 消息会被复制到多少台 Kafka 服务器。有效取值范围为 [`min.insync.replicas`](https://kafka.apache.org/33/documentation.html#brokerconfigs_min.insync.replicas) 到 Kafka broker 数量。 + - **Partition Number**:控制每个 topic 的分区数。有效取值范围为 `[1, 10 * Kafka broker 数量]`。 + +10. 点击 **Next**。 + +## 第 4 步:配置变更订阅规范 + +1. 在 **Changefeed Specification** 区域,指定变更订阅使用的 Replication Capacity Units(RCU)数量。 +2. 在 **Changefeed Name** 区域,为变更订阅指定一个名称。 +3. 点击 **Next**,检查你设置的配置并进入下一页面。 + +## 第 5 步:检查配置 + +在此页面,你可以检查所有已设置的变更订阅配置。 + +如果发现有误,可以返回修改。若无误,勾选底部的复选框,然后点击 **Create** 创建变更订阅。 \ No newline at end of file diff --git a/tidb-cloud/changefeed-sink-to-apache-pulsar.md b/tidb-cloud/changefeed-sink-to-apache-pulsar.md index 80183ca5195e0..21f18b4c15c03 100644 --- a/tidb-cloud/changefeed-sink-to-apache-pulsar.md +++ b/tidb-cloud/changefeed-sink-to-apache-pulsar.md @@ -1,189 +1,195 @@ --- -title: 导出到 Apache Pulsar -summary: 本文档说明如何创建 changefeed 将数据从 TiDB Cloud 流式传输到 Apache Pulsar。它包括限制、前提条件以及为 Apache Pulsar 配置 changefeed 的步骤。该过程涉及设置网络连接和配置 changefeed 规格。 +title: Sink to Apache Pulsar +summary: 本文档介绍如何创建变更订阅(changefeed),以将数据从 TiDB Cloud 流式传输到 Apache Pulsar。内容包括限制、前置条件,以及为 Apache Pulsar 配置变更订阅的步骤。该过程涉及网络连接的设置和变更订阅规范的配置。 --- -# 导出到 Apache Pulsar +# Sink to Apache Pulsar -本文档描述如何创建 changefeed 将数据从 TiDB Cloud 流式传输到 Apache Pulsar。 +本文档描述如何创建变更订阅(changefeed),以将数据从 TiDB Cloud 流式传输到 Apache Pulsar。 -> **注意:** +> **Note:** > -> - 要使用 changefeed 功能将数据复制到 Apache Pulsar,请确保你的 TiDB Cloud Dedicated 集群版本为 v7.5.1 或更高版本。 -> - 对于 [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless),changefeed 功能不可用。 +> - 若要使用变更订阅功能将数据同步到 Apache Pulsar,请确保你的 TiDB Cloud Dedicated 集群版本为 v7.5.1 或更高版本。 +> - 对于 [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless),暂不支持变更订阅功能。 ## 限制 -- 每个 TiDB Cloud 集群最多可以创建 100 个 changefeed。 -- 目前,TiDB Cloud 不支持上传自签名 TLS 证书来连接 Pulsar broker。 -- 由于 TiDB Cloud 使用 TiCDC 建立 changefeed,因此它具有与 [TiCDC 相同的限制](https://docs.pingcap.com/tidb/stable/ticdc-overview#unsupported-scenarios)。 -- 如果要复制的表没有主键或非空唯一索引,在某些重试场景下,复制过程中缺少唯一约束可能导致下游插入重复数据。 -- 目前,TiCDC 不会自动创建 Pulsar 主题。在向主题发送事件之前,请确保该主题在 Pulsar 中存在。 +- 每个 TiDB Cloud 集群最多可创建 100 个变更订阅。 +- 目前,TiDB Cloud 不支持上传自签名 TLS 证书以连接 Pulsar broker。 +- 由于 TiDB Cloud 使用 TiCDC 建立变更订阅,因此具有与 [TiCDC 相同的限制](https://docs.pingcap.com/tidb/stable/ticdc-overview#unsupported-scenarios)。 +- 如果待同步的表没有主键或非空唯一索引,在某些重试场景下,由于缺乏唯一约束,可能会导致下游插入重复数据。 +- 目前,TiCDC 不会自动创建 Pulsar topic。在向 topic 分发事件前,请确保该 topic 已在 Pulsar 中存在。 -## 前提条件 +## 前置条件 -在创建 changefeed 将数据流式传输到 Apache Pulsar 之前,你需要完成以下前提条件: +在创建变更订阅以将数据流式传输到 Apache Pulsar 之前,你需要完成以下前置条件: - 设置网络连接 -- 添加 Pulsar ACL 授权的权限 -- 在 Apache Pulsar 中手动创建主题,或在 Apache Pulsar broker 配置中启用 [`allowAutoTopicCreation`](https://pulsar.apache.org/reference/#/4.0.x/config/reference-configuration-broker?id=allowautotopiccreation) +- 为 Pulsar ACL 授权添加权限 +- 在 Apache Pulsar 中手动创建 topic,或在 Apache Pulsar broker 配置中启用 [`allowAutoTopicCreation`](https://pulsar.apache.org/reference/#/4.0.x/config/reference-configuration-broker?id=allowautotopiccreation) ### 网络 -确保你的 TiDB 集群可以连接到 Apache Pulsar 服务。你可以选择以下连接方法之一: +确保你的 TiDB 集群能够连接到 Apache Pulsar 服务。你可以选择以下任一连接方式: -- VPC 对等连接:需要进行网络规划以避免潜在的 VPC CIDR 冲突,并考虑安全问题。 -- 公共 IP:适用于 Pulsar 公布公共 IP 的设置。此方法不建议在生产环境中使用,需要仔细考虑安全问题。 +- VPC Peering:需要进行网络规划,以避免潜在的 VPC CIDR 冲突,并考虑安全性问题。 +- 公网 IP:适用于 Pulsar 以公网 IP 方式对外提供服务的场景。该方式不推荐用于生产环境,并需谨慎考虑安全性。 -
+
-如果你的 Apache Pulsar 服务位于没有互联网访问的 AWS VPC 中,请执行以下步骤: +如果你的 Apache Pulsar 服务部署在没有互联网访问权限的 AWS VPC 中,请按照以下步骤操作: -1. 在 Apache Pulsar 服务的 VPC 和你的 TiDB 集群之间[设置 VPC 对等连接](/tidb-cloud/set-up-vpc-peering-connections.md)。 -2. 修改与 Apache Pulsar 服务关联的安全组的入站规则。 +1. 在 Apache Pulsar 服务所在 VPC 与 TiDB 集群之间 [建立 VPC Peering 连接](/tidb-cloud/set-up-vpc-peering-connections.md)。 +2. 修改 Apache Pulsar 服务关联的安全组的入站规则。 - 你必须将 TiDB Cloud 集群所在区域的 CIDR 添加到入站规则中。可以在 **VPC 对等连接**页面找到 CIDR。这样做可以允许流量从你的 TiDB 集群流向 Pulsar broker。 + 你需要将 TiDB Cloud 集群所在区域的 CIDR 添加到入站规则中。该 CIDR 可在 **VPC Peering** 页面找到。这样可以允许来自 TiDB 集群的流量访问 Pulsar broker。 -3. 如果 Apache Pulsar URL 包含主机名,你需要允许 TiDB Cloud 解析 Apache Pulsar broker 的 DNS 主机名。 +3. 如果 Apache Pulsar 的 URL 包含主机名,你需要允许 TiDB Cloud 解析 Apache Pulsar broker 的 DNS 主机名。 - 1. 按照[为 VPC 对等连接启用 DNS 解析](https://docs.aws.amazon.com/vpc/latest/peering/vpc-peering-dns.html)中的步骤操作。 - 2. 启用**接受者 DNS 解析**选项。 + 1. 按照 [为 VPC Peering 连接启用 DNS 解析](https://docs.aws.amazon.com/vpc/latest/peering/vpc-peering-dns.html) 的步骤操作。 + 2. 启用 **Accepter DNS resolution** 选项。 -如果你的 Apache Pulsar 服务位于没有互联网访问的 Google Cloud VPC 中,请执行以下步骤: +如果你的 Apache Pulsar 服务部署在没有互联网访问权限的 Google Cloud VPC 中,请按照以下步骤操作: -1. 在 Apache Pulsar 服务的 VPC 和你的 TiDB 集群之间[设置 VPC 对等连接](/tidb-cloud/set-up-vpc-peering-connections.md)。 -2. 修改 Apache Pulsar 所在 VPC 的入站防火墙规则。 +1. 在 Apache Pulsar 服务所在 VPC 与 TiDB 集群之间 [建立 VPC Peering 连接](/tidb-cloud/set-up-vpc-peering-connections.md)。 +2. 修改 Apache Pulsar 所在 VPC 的 ingress 防火墙规则。 - 你必须将 TiDB Cloud 集群所在区域的 CIDR 添加到入站防火墙规则中。可以在 **VPC 对等连接**页面找到 CIDR。这样做可以允许流量从你的 TiDB 集群流向 Pulsar broker。 + 你需要将 TiDB Cloud 集群所在区域的 CIDR 添加到 ingress 防火墙规则中。该 CIDR 可在 **VPC Peering** 页面找到。这样可以允许来自 TiDB 集群的流量访问 Pulsar broker。
-
+
-如果你想为 Apache Pulsar 服务提供公共 IP 访问,请为所有 Pulsar broker 分配公共 IP 地址。 +如果你希望通过公网 IP 访问 Apache Pulsar 服务,请为所有 Pulsar broker 分配公网 IP 地址。 -**不建议**在生产环境中使用公共 IP。 +**不推荐** 在生产环境中使用公网 IP。
-### 在 Apache Pulsar 中创建主题 +### 在 Apache Pulsar 中创建 topic -目前,TiCDC 不会自动创建 Pulsar 主题。你需要在创建 changefeed 之前在 Pulsar 中创建所需的主题。主题的数量和命名取决于你首选的分发模式: +目前,TiCDC 不会自动创建 Pulsar topic。你需要在创建变更订阅前,在 Pulsar 中创建所需的 topic。topic 的数量和命名方式取决于你选择的分发模式: -- 要将所有 Pulsar 消息分发到单个主题:创建一个具有你首选名称的主题。 -- 要将每个表的 Pulsar 消息分发到专用主题,为每个要复制的表创建格式为 `<主题前缀><数据库名称><分隔符><表名称><主题后缀>` 的主题。 -- 要将数据库的 Pulsar 消息分发到专用主题,为每个要复制的数据库创建格式为 `<主题前缀><数据库名称><主题后缀>` 的主题。 +- 若希望所有 Pulsar 消息分发到单个 topic:只需创建一个自定义名称的 topic。 +- 若希望每个表的 Pulsar 消息分发到专用 topic,则需为每个需要同步的表,按 `` 格式创建 topic。 +- 若希望每个数据库的 Pulsar 消息分发到专用 topic,则需为每个需要同步的数据库,按 `` 格式创建 topic。 -根据你的配置,你可能还需要一个用于非行事件(如架构更改)的默认主题。 +根据你的配置,可能还需要为非行事件(如 schema 变更)准备一个默认 topic。 -更多信息,请参见 Apache Pulsar 文档中的[如何创建主题](https://pulsar.apache.org/docs/4.0.x/tutorials-topic/)。 +更多信息请参见 Apache Pulsar 官方文档 [How to create a topic](https://pulsar.apache.org/docs/4.0.x/tutorials-topic/)。 -## 步骤 1. 打开 Apache Pulsar 的 Changefeed 页面 +## 第 1 步:打开 Apache Pulsar 的 Changefeed 页面 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com)。 -2. 导航到将作为 changefeed 事件源的 TiDB 集群的概览页面,然后在左侧导航栏中点击**数据** > **Changefeed**。 -3. 点击**创建 Changefeed**。 +2. 进入作为变更订阅事件源的 TiDB 集群的集群总览页面,然后点击左侧导航栏的 **Data** > **Changefeed**。 +3. 点击 **Create Changefeed**。 -## 步骤 2. 配置 changefeed 目标 +## 第 2 步:配置变更订阅目标 -1. 在**目标**部分,选择 **Pulsar**。 -2. 在**连接**部分,输入以下信息: +1. 在 **Destination** 区域,选择 **Pulsar**。 +2. 在 **Connection** 区域,填写以下信息: - - **目标协议**:选择 **Pulsar** 或 **Pulsar+SSL**。 - - **连接方式**:根据你计划如何连接到 Pulsar 端点,选择 **VPC 对等连接**或**公共**。 - - **Pulsar Broker**:输入 Pulsar broker 的端点。使用冒号分隔端口和域名或 IP 地址,例如 `example.org:6650`。 + - **Destination Protocol**:选择 **Pulsar** 或 **Pulsar+SSL**。 + - **Connectivity Method**:根据你计划连接 Pulsar 的方式,选择 **VPC Peering** 或 **Public**。 + - **Pulsar Broker**:填写你的 Pulsar broker 的 endpoint。端口与域名或 IP 地址之间用冒号分隔,例如 `example.org:6650`。 -3. 在**认证**部分,根据你的 Pulsar 认证配置选择 **Auth Type** 选项。根据你的选择输入所需的凭据信息。 -4. 可选:在**高级设置**部分,配置其他设置: +3. 在 **Authentication** 区域,根据你的 Pulsar 认证配置选择 **Auth Type** 选项,并根据选择填写所需的凭证信息。 +4. 可选:在 **Advanced Settings** 区域,配置其他高级设置: - - **压缩**:为此 changefeed 中的数据选择可选的压缩算法。 - - **每批最大消息数**和**最大发布延迟**:指定发送到 Pulsar 的事件消息的批处理。**每批最大消息数**设置每批的最大消息数,而**最大发布延迟**设置发送批次前的最大等待时间。 - - **连接超时**:调整建立到 Pulsar 的 TCP 连接的超时时间。 - - **操作超时**:调整使用 TiCDC Pulsar 客户端启动操作的超时时间。 - - **发送超时**:调整 TiCDC Pulsar 生产者发送消息的超时时间。 + - **Compression**:为该变更订阅中的数据选择可选的压缩算法。 + - **Max Messages per Batch** 和 **Max Publish Delay**:指定发送到 Pulsar 的事件消息批量设置。**Max Messages per Batch** 设置每批最大消息数,**Max Publish Delay** 设置发送一批消息前的最大等待时间。 + - **Connection Timeout**:调整与 Pulsar 建立 TCP 连接的超时时间。 + - **Operation Timeout**:调整使用 TiCDC Pulsar 客户端发起操作的超时时间。 + - **Send Timeout**:调整 TiCDC Pulsar producer 发送消息的超时时间。 -5. 点击**下一步**以测试网络连接。如果测试成功,你将进入下一步。 +5. 点击 **Next** 测试网络连接。若测试通过,将进入下一步。 -## 步骤 3. 配置 changefeed 复制 +## 第 3 步:配置变更订阅同步内容 -1. 自定义**表过滤器**以过滤要复制的表。有关规则语法,请参考[表过滤规则](/table-filter.md)。 +1. 自定义 **Table Filter**,筛选你希望同步的表。规则语法参见 [table filter rules](/table-filter.md)。 - - **过滤规则**:你可以在此列中设置过滤规则。默认有一个规则 `*.*`,表示复制所有表。当你添加新规则时,TiDB Cloud 会查询 TiDB 中的所有表,并仅在右侧框中显示匹配规则的表。你最多可以添加 100 个过滤规则。 - - **具有有效键的表**:此列显示具有有效键(包括主键或唯一索引)的表。 - - **没有有效键的表**:此列显示缺少主键或唯一键的表。这些表在复制过程中会带来挑战,因为缺少唯一标识符可能会导致下游处理重复事件时数据不一致。为确保数据一致性,建议在开始复制之前为这些表添加唯一键或主键。或者,你可以添加过滤规则来排除这些表。例如,你可以使用规则 `"!test.tbl1"` 排除表 `test.tbl1`。 + - **Filter Rules**:你可以在此列设置过滤规则。默认有一条规则 `*.*`,表示同步所有表。添加新规则后,TiDB Cloud 会查询 TiDB 中所有表,并在右侧框中仅显示匹配规则的表。最多可添加 100 条过滤规则。 + - **Tables with valid keys**:此列显示具有有效键(包括主键或唯一索引)的表。 + - **Tables without valid keys**:此列显示缺少主键或唯一键的表。这些表在同步时存在挑战,因为缺乏唯一标识符可能导致下游处理重复事件时数据不一致。为保证数据一致性,建议在同步前为这些表添加唯一键或主键,或通过添加过滤规则排除这些表。例如,可以通过规则 `"!test.tbl1"` 排除表 `test.tbl1`。 -2. 自定义**事件过滤器**以过滤要复制的事件。 +2. 自定义 **Event Filter**,筛选你希望同步的事件。 - - **匹配表**:你可以在此列中设置事件过滤器将应用于哪些表。规则语法与前面的**表过滤器**区域使用的语法相同。每个 changefeed 最多可以添加 10 个事件过滤规则。 - - **忽略的事件**:你可以设置事件过滤器将从 changefeed 中排除的事件类型。 + - **Tables matching**:你可以在此列设置事件过滤器应用到哪些表。规则语法与前述 **Table Filter** 区域相同。每个变更订阅最多可添加 10 条事件过滤规则。 + - **Event Filter**:你可以使用以下事件过滤器从变更订阅中排除特定事件: + - **Ignore event**:排除指定类型的事件。 + - **Ignore SQL**:排除匹配指定表达式的 DDL 事件。例如,`^drop` 排除以 `DROP` 开头的语句,`add column` 排除包含 `ADD COLUMN` 的语句。 + - **Ignore insert value expression**:排除满足特定条件的 `INSERT` 语句。例如,`id >= 100` 排除 `id` 大于等于 100 的 `INSERT` 语句。 + - **Ignore update new value expression**:排除新值满足指定条件的 `UPDATE` 语句。例如,`gender = 'male'` 排除更新后 `gender` 为 `male` 的变更。 + - **Ignore update old value expression**:排除旧值满足指定条件的 `UPDATE` 语句。例如,`age < 18` 排除旧值 `age` 小于 18 的更新。 + - **Ignore delete value expression**:排除满足指定条件的 `DELETE` 语句。例如,`name = 'john'` 排除 `name` 为 `'john'` 的删除操作。 -3. 在**开始复制位置**区域,选择 changefeed 开始将数据复制到 Pulsar 的起点: +3. 在 **Start Replication Position** 区域,选择变更订阅开始向 Pulsar 同步数据的起点: - - **从现在开始复制**:changefeed 将从当前点开始复制数据。 - - **从特定 TSO 开始复制**:changefeed 将从指定的 [TSO](/tso.md) 开始复制数据。指定的 TSO 必须在[垃圾回收安全点](/read-historical-data.md#tidb-如何管理数据版本)内。 - - **从特定时间开始复制**:changefeed 将从指定的时间戳开始复制数据。指定的时间戳必须在垃圾回收安全点内。 + - **Start replication from now on**:变更订阅将从当前时刻开始同步数据。 + - **Start replication from a specific TSO**:变更订阅将从指定的 [TSO](/tso.md) 开始同步数据。指定的 TSO 必须在 [垃圾回收安全点](/read-historical-data.md#how-tidb-manages-the-data-versions) 之内。 + - **Start replication from a specific time**:变更订阅将从指定的时间戳开始同步数据。指定的时间戳必须在垃圾回收安全点之内。 -4. 在**数据格式**区域,选择你想要的 Pulsar 消息格式。 +4. 在 **Data Format** 区域,选择你期望的 Pulsar 消息格式。 - - Canal-JSON 是一种易于解析的纯 JSON 文本格式。更多信息,请参见 [TiCDC Canal-JSON 协议](https://docs.pingcap.com/tidb/stable/ticdc-canal-json/)。 + - Canal-JSON 是一种纯 JSON 文本格式,易于解析。更多信息参见 [TiCDC Canal-JSON Protocol](https://docs.pingcap.com/tidb/stable/ticdc-canal-json/)。 - - 要在 Pulsar 消息正文中添加 TiDB 扩展字段,请启用 **TiDB 扩展**选项。更多信息,请参见 [TiCDC Canal-JSON 协议中的 TiDB 扩展字段](https://docs.pingcap.com/tidb/stable/ticdc-canal-json/#tidb-extension-field)。 + - 若需在 Pulsar 消息体中添加 TiDB 扩展字段,可启用 **TiDB Extension** 选项。更多信息参见 [TiCDC Canal-JSON Protocol 中的 TiDB 扩展字段](https://docs.pingcap.com/tidb/stable/ticdc-canal-json/#tidb-extension-field)。 -5. 在**主题分发**区域,选择分发模式,然后根据模式填写主题名称配置。 +5. 在 **Topic Distribution** 区域,选择分发模式,并根据所选模式填写 topic 名称配置。 - 分发模式控制 changefeed 如何将事件消息分发到 Pulsar 主题,可以将所有消息发送到一个主题,或按表或按数据库发送到特定主题。 + 分发模式决定变更订阅如何将事件消息分发到 Pulsar topic,可以将所有消息发送到一个 topic,或按表、按库分别发送到不同 topic。 - > **注意:** + > **Note:** > - > 当你选择 Pulsar 作为下游时,changefeed 不会自动创建主题。你必须提前创建所需的主题。 + > 选择 Pulsar 作为下游时,变更订阅不会自动创建 topic。你必须提前在 Pulsar 中创建所需的 topic。 - - **将所有变更日志发送到一个指定的 Pulsar 主题** + - **Send all changelogs to one specified Pulsar Topic** - 如果你希望 changefeed 将所有消息发送到单个 Pulsar 主题,请选择此模式。你可以在**主题名称**字段中指定主题名称。 + 若希望变更订阅将所有消息发送到单个 Pulsar topic,请选择此模式。你可以在 **Topic Name** 字段中指定 topic 名称。 - - **按表将变更日志分发到 Pulsar 主题** + - **Distribute changelogs by table to Pulsar Topics** - 如果你希望 changefeed 将每个表的所有 Pulsar 消息发送到专用的 Pulsar 主题,请选择此模式。你可以通过设置**主题前缀**、数据库名称和表名称之间的**分隔符**以及**主题后缀**来为表指定主题名称。例如,如果你将分隔符设置为 `_`,Pulsar 消息将被发送到格式为 `<主题前缀><数据库名称>_<表名称><主题后缀>` 的主题。你需要提前在 Pulsar 上创建这些主题。 + 若希望变更订阅将每个表的 Pulsar 消息发送到专用 Pulsar topic,请选择此模式。你可以通过设置 **Topic Prefix**、数据库名与表名之间的 **Separator** 以及 **Topic Suffix**,为表指定 topic 名称。例如,若分隔符设置为 `_`,Pulsar 消息将发送到名称为 `_` 的 topic。你需要提前在 Pulsar 上创建这些 topic。 - 对于非行事件(如创建架构事件)的变更日志,你可以在**默认主题名称**字段中指定主题名称。changefeed 将非行事件发送到此主题以收集此类变更日志。 + 对于非行事件(如 Create Schema Event)的变更日志,可以在 **Default Topic Name** 字段中指定 topic 名称。变更订阅会将这些非行事件发送到该 topic 以收集相关变更日志。 - - **按数据库将变更日志分发到 Pulsar 主题** + - **Distribute changelogs by database to Pulsar Topics** - 如果你希望 changefeed 将每个数据库的所有 Pulsar 消息发送到专用的 Pulsar 主题,请选择此模式。你可以通过设置**主题前缀**和**主题后缀**来为数据库指定主题名称。 + 若希望变更订阅将每个数据库的 Pulsar 消息发送到专用 Pulsar topic,请选择此模式。你可以通过设置 **Topic Prefix** 和 **Topic Suffix**,为数据库指定 topic 名称。 - 对于非行事件(如已解析的 Ts 事件)的变更日志,你可以在**默认主题名称**字段中指定主题名称。changefeed 将非行事件发送到此主题以收集此类变更日志。 + 对于非行事件(如 Resolved Ts Event)的变更日志,可以在 **Default Topic Name** 字段中指定 topic 名称。变更订阅会将这些非行事件发送到该 topic 以收集相关变更日志。 - 由于 Pulsar 支持多租户,如果租户和命名空间与默认值不同,你可能还需要设置 **Pulsar 租户**和 **Pulsar 命名空间**。 + 由于 Pulsar 支持多租户,如果 **Pulsar Tenant** 和 **Pulsar Namespace** 与默认值不同,你也可以进行设置。 -6. 在**分区分发**区域,你可以决定将 Pulsar 消息发送到哪个分区。你可以定义**所有表使用单个分区调度器**或**不同表使用不同的分区调度器**。TiDB Cloud 提供四个规则选项来将变更事件分发到 Pulsar 分区: +6. 在 **Partition Distribution** 区域,你可以决定 Pulsar 消息发送到哪个分区。你可以为所有表定义 **单一分区分发器**,也可以为不同表定义 **不同的分区分发器**。TiDB Cloud 提供四种规则选项用于将变更事件分发到 Pulsar 分区: - - **主键或唯一索引** + - **Primary key or unique index** - 如果你希望 changefeed 将表的 Pulsar 消息发送到不同的分区,请选择此分发方法。行变更日志的主键或索引值决定将变更日志发送到哪个分区。此分发方法提供更好的分区平衡,并确保行级有序性。 + 若希望变更订阅将表的 Pulsar 消息分发到不同分区,请选择此分发方式。行变更日志的主键或索引值决定该变更日志发送到哪个分区。该方式可实现更好的分区均衡,并保证行级有序性。 - - **表** + - **Table** - 如果你希望 changefeed 将表的 Pulsar 消息发送到一个 Pulsar 分区,请选择此分发方法。行变更日志的表名决定将变更日志发送到哪个分区。此分发方法确保表有序性,但可能导致分区不平衡。 + 若希望变更订阅将表的 Pulsar 消息发送到同一个 Pulsar 分区,请选择此分发方式。行变更日志的表名决定其发送到哪个分区。该方式保证表级有序性,但可能导致分区不均衡。 - - **时间戳** + - **Timestamp** - 如果你希望 changefeed 根据时间戳将 Pulsar 消息发送到不同的 Pulsar 分区,请选择此分发方法。行变更日志的 commitTs 决定将变更日志发送到哪个分区。此分发方法提供更好的分区平衡,并确保每个分区内的有序性。但是,数据项的多个更改可能会被发送到不同的分区,不同消费者的消费进度可能不同,这可能导致数据不一致。因此,消费者需要在消费之前按 commitTs 对来自多个分区的数据进行排序。 + 若希望变更订阅根据时间戳将 Pulsar 消息分发到不同分区,请选择此分发方式。行变更日志的 commitTs 决定其发送到哪个分区。该方式可实现更好的分区均衡,并保证每个分区内的有序性。但同一数据项的多次变更可能被发送到不同分区,不同消费者的消费进度可能不同,可能导致数据不一致。因此,消费者需在消费前按 commitTs 对多分区数据进行排序。 - - **列值** + - **Column value** - 如果你希望 changefeed 将表的 Pulsar 消息发送到不同的分区,请选择此分发方法。行变更日志的指定列值将决定将变更日志发送到哪个分区。此分发方法确保每个分区内的有序性,并保证具有相同列值的变更日志被发送到同一个分区。 + 若希望变更订阅将表的 Pulsar 消息分发到不同分区,请选择此分发方式。行变更日志中指定列的值决定其发送到哪个分区。该方式保证每个分区内的有序性,并确保相同列值的变更日志发送到同一分区。 -7. 点击**下一步**。 +7. 点击 **Next**。 -## 步骤 4. 配置规格并审查 +## 第 4 步:配置规范并审核 -1. 在**规格和名称**部分: +1. 在 **Specification and Name** 区域: - - 为 changefeed 指定[复制容量单位(RCU)](/tidb-cloud/tidb-cloud-billing-ticdc-rcu.md)的数量。 - - 为 changefeed 输入名称。 + - 为变更订阅指定 [Replication Capacity Units (RCUs)](/tidb-cloud/tidb-cloud-billing-ticdc-rcu.md) 数量。 + - 输入变更订阅的名称。 -2. 审查所有 changefeed 配置。 +2. 审核所有变更订阅配置。 - - 如果发现问题,你可以返回前面的步骤解决问题。 - - 如果没有问题,你可以点击**提交**创建 changefeed。 + - 如果发现问题,可以返回上一步进行修改。 + - 如果没有问题,可以点击 **Submit** 创建变更订阅。 \ No newline at end of file diff --git a/tidb-cloud/changefeed-sink-to-cloud-storage.md b/tidb-cloud/changefeed-sink-to-cloud-storage.md index 6a9f72183c9b2..4f0711896774d 100644 --- a/tidb-cloud/changefeed-sink-to-cloud-storage.md +++ b/tidb-cloud/changefeed-sink-to-cloud-storage.md @@ -1,52 +1,52 @@ --- -title: 导出数据到云存储 -summary: 本文介绍如何创建 changefeed 将数据从 TiDB Cloud 流式传输到 Amazon S3 或 GCS。包括限制、目标配置步骤、复制和规格配置,以及启动复制过程。 +title: Sink to Cloud Storage +summary: 本文档介绍如何创建变更订阅(changefeed),将 TiDB Cloud 的数据流式同步到 Amazon S3 或 GCS。内容包括限制、目标端配置、同步及规范配置,以及启动同步流程。 --- -# 导出数据到云存储 +# Sink to Cloud Storage -本文介绍如何创建 changefeed 将数据从 TiDB Cloud 流式传输到云存储。目前支持 Amazon S3 和 GCS。 +本文档介绍如何创建变更订阅(changefeed),将 TiDB Cloud 的数据流式同步到云存储。目前支持 Amazon S3 和 GCS。 > **注意:** > -> - 要将数据流式传输到云存储,请确保你的 TiDB 集群版本为 v7.1.1 或更高版本。要将 TiDB Cloud Dedicated 集群升级到 v7.1.1 或更高版本,请[联系 TiDB Cloud 支持团队](/tidb-cloud/tidb-cloud-support.md)。 -> - 对于 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群,changefeed 功能不可用。 +> - 若要将数据流式同步到云存储,请确保你的 TiDB 集群版本为 v7.1.1 或更高版本。如需将 TiDB Cloud Dedicated 集群升级到 v7.1.1 或更高版本,请[联系 TiDB Cloud Support](/tidb-cloud/tidb-cloud-support.md)。 +> - 对于 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群,暂不支持变更订阅功能。 ## 限制 -- 每个 TiDB Cloud 集群最多可以创建 100 个 changefeed。 -- 由于 TiDB Cloud 使用 TiCDC 建立 changefeed,因此它具有与 TiCDC 相同的[限制](https://docs.pingcap.com/tidb/stable/ticdc-overview#unsupported-scenarios)。 -- 如果要复制的表没有主键或非空唯一索引,在某些重试场景下,由于缺少唯一约束,可能会导致下游插入重复数据。 +- 每个 TiDB Cloud 集群最多可创建 100 个变更订阅。 +- 由于 TiDB Cloud 使用 TiCDC 建立变更订阅,因此具有与 [TiCDC 相同的限制](https://docs.pingcap.com/tidb/stable/ticdc-overview#unsupported-scenarios)。 +- 如果待同步的表没有主键或非空唯一索引,则在某些重试场景下,由于缺乏唯一约束,可能会导致下游插入重复数据。 -## 步骤 1. 配置目标 +## 第 1 步:配置目标端 -导航到目标 TiDB 集群的集群概览页面。在左侧导航栏中点击**数据** > **Changefeed**,点击**创建 Changefeed**,然后选择 **Amazon S3** 或 **GCS** 作为目标。配置过程根据你选择的目标而有所不同。 +进入目标 TiDB 集群的集群总览页面。在左侧导航栏点击 **Data** > **Changefeed**,点击 **Create Changefeed**,并选择 **Amazon S3** 或 **GCS** 作为目标端。具体配置流程根据你选择的目标端有所不同。
-对于 **Amazon S3**,填写 **S3 端点**区域:`S3 URI`、`Access Key ID` 和 `Secret Access Key`。确保 S3 存储桶与你的 TiDB 集群在同一区域。 +对于 **Amazon S3**,填写 **S3 Endpoint** 区域:`S3 URI`、`Access Key ID` 和 `Secret Access Key`。请确保 S3 bucket 与 TiDB 集群处于同一区域。 ![s3_endpoint](/media/tidb-cloud/changefeed/sink-to-cloud-storage-s3-endpoint.jpg)
-对于 **GCS**,在填写 **GCS 端点**之前,你需要先授予 GCS 存储桶访问权限。请按照以下步骤操作: +对于 **GCS**,在填写 **GCS Endpoint** 之前,需要先授予 GCS bucket 访问权限。请按照以下步骤操作: -1. 在 TiDB Cloud 控制台中,记录**服务账号 ID**,该 ID 将用于授予 TiDB Cloud 访问你的 GCS 存储桶的权限。 +1. 在 TiDB Cloud 控制台,记录下 **Service Account ID**,该 ID 用于授权 TiDB Cloud 访问你的 GCS bucket。 ![gcs_endpoint](/media/tidb-cloud/changefeed/sink-to-cloud-storage-gcs-endpoint.png) -2. 在 Google Cloud 控制台中,为你的 GCS 存储桶创建 IAM 角色。 +2. 在 Google Cloud 控制台,为你的 GCS bucket 创建一个 IAM 角色。 1. 登录 [Google Cloud 控制台](https://console.cloud.google.com/)。 - 2. 转到[角色](https://console.cloud.google.com/iam-admin/roles)页面,然后点击**创建角色**。 + 2. 进入 [Roles](https://console.cloud.google.com/iam-admin/roles) 页面,然后点击 **Create role**。 - ![创建角色](/media/tidb-cloud/changefeed/sink-to-cloud-storage-gcs-create-role.png) + ![Create a role](/media/tidb-cloud/changefeed/sink-to-cloud-storage-gcs-create-role.png) - 3. 为角色输入名称、描述、ID 和角色启动阶段。角色创建后,角色名称无法更改。 - 4. 点击**添加权限**。将以下权限添加到角色,然后点击**添加**。 + 3. 输入角色的名称、描述、ID 及角色发布阶段。角色名称在创建后不可更改。 + 4. 点击 **Add permissions**,为该角色添加以下权限,然后点击 **Add**。 - storage.buckets.get - storage.objects.create @@ -55,114 +55,120 @@ summary: 本文介绍如何创建 changefeed 将数据从 TiDB Cloud 流式传 - storage.objects.list - storage.objects.update - ![添加权限](/media/tidb-cloud/changefeed/sink-to-cloud-storage-gcs-assign-permission.png) + ![Add permissions](/media/tidb-cloud/changefeed/sink-to-cloud-storage-gcs-assign-permission.png) -3. 转到[存储桶](https://console.cloud.google.com/storage/browser)页面,选择你希望 TiDB Cloud 访问的 GCS 存储桶。请注意,GCS 存储桶必须与你的 TiDB 集群在同一区域。 +3. 进入 [Bucket](https://console.cloud.google.com/storage/browser) 页面,选择你希望 TiDB Cloud 访问的 GCS bucket。请注意,GCS bucket 必须与 TiDB 集群处于同一区域。 -4. 在**存储桶详情**页面,点击**权限**标签,然后点击**授予访问权限**。 +4. 在 **Bucket details** 页面,点击 **Permissions** 标签页,然后点击 **Grant access**。 - ![授予存储桶访问权限](/media/tidb-cloud/changefeed/sink-to-cloud-storage-gcs-grant-access-1.png) + ![Grant Access to the bucket ](/media/tidb-cloud/changefeed/sink-to-cloud-storage-gcs-grant-access-1.png) -5. 填写以下信息以授予存储桶访问权限,然后点击**保存**。 +5. 填写以下信息以授予 bucket 访问权限,然后点击 **Save**。 - - 在**新主体**字段中,粘贴你之前记录的目标 TiDB 集群的**服务账号 ID**。 - - 在**选择角色**下拉列表中,输入你刚刚创建的 IAM 角色名称,然后从筛选结果中选择该名称。 + - 在 **New Principals** 字段中,粘贴之前记录的目标 TiDB 集群的 **Service Account ID**。 + - 在 **Select a role** 下拉列表中,输入你刚刚创建的 IAM 角色名称,并从筛选结果中选择该名称。 > **注意:** > - > 要移除 TiDB Cloud 的访问权限,只需移除你已授予的访问权限即可。 + > 若需移除 TiDB Cloud 的访问权限,只需删除你已授予的访问权限即可。 -6. 在**存储桶详情**页面,点击**对象**标签。 +6. 在 **Bucket details** 页面,点击 **Objects** 标签页。 - - 要获取存储桶的 gsutil URI,点击复制按钮并添加 `gs://` 作为前缀。例如,如果存储桶名称为 `test-sink-gcs`,则 URI 为 `gs://test-sink-gcs/`。 + - 获取 bucket 的 gsutil URI:点击复制按钮,并在前面加上 `gs://` 前缀。例如,若 bucket 名为 `test-sink-gcs`,则 URI 为 `gs://test-sink-gcs/`。 - ![获取存储桶 URI](/media/tidb-cloud/changefeed/sink-to-cloud-storage-gcs-uri01.png) + ![Get bucket URI](/media/tidb-cloud/changefeed/sink-to-cloud-storage-gcs-uri01.png) - - 要获取文件夹的 gsutil URI,打开文件夹,点击复制按钮,并添加 `gs://` 作为前缀。例如,如果存储桶名称为 `test-sink-gcs`,文件夹名称为 `changefeed-xxx`,则 URI 为 `gs://test-sink-gcs/changefeed-xxx/`。 + - 获取文件夹的 gsutil URI:进入文件夹,点击复制按钮,并在前面加上 `gs://` 前缀。例如,若 bucket 名为 `test-sink-gcs`,文件夹名为 `changefeed-xxx`,则 URI 为 `gs://test-sink-gcs/changefeed-xxx/`。 - ![获取存储桶 URI](/media/tidb-cloud/changefeed/sink-to-cloud-storage-gcs-uri02.png) + ![Get bucket URI](/media/tidb-cloud/changefeed/sink-to-cloud-storage-gcs-uri02.png) -7. 在 TiDB Cloud 控制台中,转到 Changefeed 的**配置目标**页面,并填写**存储桶 gsutil URI** 字段。 +7. 回到 TiDB Cloud 控制台,在 Changefeed 的 **Configure Destination** 页面,填写 **bucket gsutil URI** 字段。
-点击**下一步**以建立从 TiDB Cloud Dedicated 集群到 Amazon S3 或 GCS 的连接。TiDB Cloud 将自动测试并验证连接是否成功。 +点击 **Next**,建立 TiDB Cloud Dedicated 集群与 Amazon S3 或 GCS 的连接。TiDB Cloud 会自动测试并验证连接是否成功。 -- 如果成功,你将进入下一步配置。 -- 如果失败,将显示连接错误,你需要处理该错误。错误解决后,点击**下一步**重试连接。 +- 若连接成功,将进入下一步配置。 +- 若连接失败,会显示连接错误,你需要处理该错误。错误解决后,点击 **Next** 重新尝试连接。 -## 步骤 2. 配置复制 +## 第 2 步:配置同步 -1. 自定义**表过滤器**以过滤要复制的表。有关规则语法,请参考[表过滤规则](https://docs.pingcap.com/tidb/stable/ticdc-filter#changefeed-log-filters)。 +1. 自定义 **Table Filter**,筛选你希望同步的表。规则语法可参考 [table filter rules](https://docs.pingcap.com/tidb/stable/ticdc-filter#changefeed-log-filters)。 - ![changefeed 的表过滤器](/media/tidb-cloud/changefeed/sink-to-s3-02-table-filter.jpg) + ![the table filter of changefeed](/media/tidb-cloud/changefeed/sink-to-s3-02-table-filter.jpg) - - **过滤规则**:你可以在此列设置过滤规则。默认有一个规则 `*.*`,表示复制所有表。添加新规则时,TiDB Cloud 会查询 TiDB 中的所有表,并在右侧框中仅显示匹配规则的表。你最多可以添加 100 个过滤规则。 - - **具有有效键的表**:此列显示具有有效键(包括主键或唯一索引)的表。 - - **没有有效键的表**:此列显示缺少主键或唯一键的表。这些表在复制过程中会带来挑战,因为缺少唯一标识符可能会导致在处理下游重复事件时出现数据不一致。为确保数据一致性,建议在开始复制之前为这些表添加唯一键或主键。或者,你可以使用过滤规则排除这些表。例如,你可以使用规则 `"!test.tbl1"` 排除表 `test.tbl1`。 + - **Filter Rules**:你可以在此列设置筛选规则。默认规则为 `*.*`,表示同步所有表。添加新规则后,TiDB Cloud 会查询 TiDB 中所有表,并在右侧框中仅显示符合规则的表。最多可添加 100 条筛选规则。 + - **Tables with valid keys**:此列显示具有有效键(包括主键或唯一索引)的表。 + - **Tables without valid keys**:此列显示缺少主键或唯一键的表。这类表在同步时存在挑战,因为缺乏唯一标识符,处理下游重复事件时可能导致数据不一致。为保证数据一致性,建议在同步前为这些表添加唯一键或主键,或通过筛选规则排除这些表。例如,可通过规则 `"!test.tbl1"` 排除表 `test.tbl1`。 -2. 自定义**事件过滤器**以过滤要复制的事件。 +2. 自定义 **Event Filter**,筛选你希望同步的事件。 - - **匹配表**:你可以在此列设置事件过滤器将应用于哪些表。规则语法与前面的**表过滤器**区域使用的语法相同。每个 changefeed 最多可以添加 10 个事件过滤规则。 - - **忽略的事件**:你可以设置事件过滤器将从 changefeed 中排除哪些类型的事件。 + - **Tables matching**:你可以在此列设置事件过滤器应用到哪些表。规则语法与前述 **Table Filter** 区域相同。每个变更订阅最多可添加 10 条事件过滤规则。 + - **Event Filter**:你可以使用以下事件过滤器,从变更订阅中排除特定事件: + - **Ignore event**:排除指定类型的事件。 + - **Ignore SQL**:排除符合指定表达式的 DDL 事件。例如,`^drop` 排除以 `DROP` 开头的语句,`add column` 排除包含 `ADD COLUMN` 的语句。 + - **Ignore insert value expression**:排除满足特定条件的 `INSERT` 语句。例如,`id >= 100` 排除 `id` 大于等于 100 的 `INSERT` 语句。 + - **Ignore update new value expression**:排除新值满足指定条件的 `UPDATE` 语句。例如,`gender = 'male'` 排除更新后 `gender` 为 `male` 的更新。 + - **Ignore update old value expression**:排除旧值满足指定条件的 `UPDATE` 语句。例如,`age < 18` 排除旧值 `age` 小于 18 的更新。 + - **Ignore delete value expression**:排除满足指定条件的 `DELETE` 语句。例如,`name = 'john'` 排除 `name` 为 `'john'` 的删除。 -3. 在**开始复制位置**区域,选择以下复制位置之一: +3. 在 **Start Replication Position** 区域,选择以下同步起始位置之一: - - 从现在开始复制 - - 从特定 [TSO](https://docs.pingcap.com/tidb/stable/glossary#tso) 开始复制 - - 从特定时间开始复制 + - 从现在开始同步 + - 从指定的 [TSO](https://docs.pingcap.com/tidb/stable/glossary#tso) 开始同步 + - 从指定时间开始同步 -4. 在**数据格式**区域,选择 **CSV** 或 **Canal-JSON** 格式。 +4. 在 **Data Format** 区域,选择 **CSV** 或 **Canal-JSON** 格式。 -
+
- 要配置 **CSV** 格式,请填写以下字段: + 配置 **CSV** 格式时,需填写以下字段: - - **二进制编码方法**:二进制数据的编码方法。你可以选择 **base64**(默认)或 **hex**。如果要与 AWS DMS 集成,请使用 **hex**。 - - **日期分隔符**:根据年、月、日轮换数据,或选择不轮换。 - - **分隔符**:指定用于分隔 CSV 文件中值的字符。逗号(`,`)是最常用的分隔符。 - - **引号**:指定用于包围包含分隔符或特殊字符的值的字符。通常使用双引号(`"`)作为引号字符。 - - **空值/空值**:指定如何在 CSV 文件中表示空值或空值。这对于正确处理和解释数据很重要。 - - **包含提交时间戳**:控制是否在 CSV 行中包含 [`commit-ts`](https://docs.pingcap.com/tidb/stable/ticdc-sink-to-cloud-storage#replicate-change-data-to-storage-services)。 + - **Binary Encode Method**:二进制数据的编码方式。可选择 **base64**(默认)或 **hex**。如需与 AWS DMS 集成,建议选择 **hex**。 + - **Date Separator**:可按年、月、日进行数据轮转,或选择不轮转。 + - **Delimiter**:指定 CSV 文件中用于分隔值的字符。逗号(`,`)是最常用的分隔符。 + - **Quote**:指定用于包裹包含分隔符或特殊字符的值的字符。通常使用双引号(`"`)作为引用字符。 + - **Null/Empty Values**:指定 CSV 文件中空值或 null 的表示方式。这对于数据的正确处理和解析非常重要。 + - **Include Commit Ts**:控制是否在 CSV 行中包含 [`commit-ts`](https://docs.pingcap.com/tidb/stable/ticdc-sink-to-cloud-storage#replicate-change-data-to-storage-services)。
-
+
- Canal-JSON 是一种纯 JSON 文本格式。要配置它,请填写以下字段: + Canal-JSON 是一种纯文本 JSON 格式。配置时需填写以下字段: - - **日期分隔符**:根据年、月、日轮换数据,或选择不轮换。 - - **启用 TiDB 扩展**:启用此选项后,TiCDC 会发送 [WATERMARK 事件](https://docs.pingcap.com/tidb/stable/ticdc-canal-json#watermark-event)并在 Canal-JSON 消息中添加 [TiDB 扩展字段](https://docs.pingcap.com/tidb/stable/ticdc-canal-json#tidb-extension-field)。 + - **Date Separator**:可按年、月、日进行数据轮转,或选择不轮转。 + - **Enable TiDB Extension**:启用后,TiCDC 会发送 [WATERMARK 事件](https://docs.pingcap.com/tidb/stable/ticdc-canal-json#watermark-event),并在 Canal-JSON 消息中添加 [TiDB 扩展字段](https://docs.pingcap.com/tidb/stable/ticdc-canal-json#tidb-extension-field)。
-5. 在**刷新参数**区域,你可以配置两个项目: +5. 在 **Flush Parameters** 区域,你可以配置以下两项: - - **刷新间隔**:默认设置为 60 秒,可在 2 秒到 10 分钟范围内调整; - - **文件大小**:默认设置为 64 MB,可在 1 MB 到 512 MB 范围内调整。 + - **Flush Interval**:默认 60 秒,可在 2 秒至 10 分钟范围内调整; + - **File Size**:默认 64 MB,可在 1 MB 至 512 MB 范围内调整。 - ![刷新参数](/media/tidb-cloud/changefeed/sink-to-cloud-storage-flush-parameters.jpg) + ![Flush Parameters](/media/tidb-cloud/changefeed/sink-to-cloud-storage-flush-parameters.jpg) > **注意:** > - > 这两个参数将影响每个数据库表在云存储中生成的对象数量。如果有大量表,使用相同的配置将增加生成的对象数量,从而增加调用云存储 API 的成本。因此,建议根据你的恢复点目标(RPO)和成本要求适当配置这些参数。 + > 这两个参数会影响每个数据库表在云存储中生成的对象数量。如果表数量较多,使用相同配置会增加生成对象的数量,并提升调用云存储 API 的成本。因此,建议根据你的恢复点目标(RPO)和成本需求合理配置这两个参数。 -## 步骤 3. 配置规格 +## 第 3 步:配置规范 -点击**下一步**以配置你的 changefeed 规格。 +点击 **Next**,进入变更订阅规范配置。 -1. 在 **Changefeed 规格**区域,指定 changefeed 将使用的复制容量单位(RCU)数量。 -2. 在 **Changefeed 名称**区域,为 changefeed 指定一个名称。 +1. 在 **Changefeed Specification** 区域,指定变更订阅使用的 Replication Capacity Units(RCUs)数量。 +2. 在 **Changefeed Name** 区域,为变更订阅指定一个名称。 -## 步骤 4. 查看配置并开始复制 +## 第 4 步:确认配置并启动同步 -点击**下一步**以查看 changefeed 配置。 +点击 **Next**,进入变更订阅配置确认页面。 -- 如果你已验证所有配置都正确,点击**创建**以继续创建 changefeed。 -- 如果你需要修改任何配置,点击**上一步**返回并进行必要的更改。 +- 如果你已确认所有配置无误,点击 **Create** 创建变更订阅。 +- 如需修改配置,点击 **Previous** 返回并进行相应调整。 -导出将很快开始,你将看到导出状态从**创建中**变为**运行中**。 +同步任务将很快启动,你会看到同步状态从 **Creating** 变为 **Running**。 -点击 changefeed 的名称以转到其详情页面。在此页面上,你可以查看有关 changefeed 的更多信息,包括检查点状态、复制延迟和其他相关指标。 +点击变更订阅名称可进入详情页面。在该页面,你可以查看更多关于变更订阅的信息,包括检查点状态、同步延迟及其他相关指标。 \ No newline at end of file diff --git a/tidb-cloud/changefeed-sink-to-mysql.md b/tidb-cloud/changefeed-sink-to-mysql.md index 0468c084e776c..0dc372bedba33 100644 --- a/tidb-cloud/changefeed-sink-to-mysql.md +++ b/tidb-cloud/changefeed-sink-to-mysql.md @@ -1,79 +1,77 @@ --- -title: 同步到 MySQL -summary: 本文档介绍如何使用同步到 MySQL 的 changefeed 将数据从 TiDB Cloud 流式传输到 MySQL。它包括限制、前提条件以及创建 MySQL sink 进行数据复制的步骤。该过程涉及设置网络连接、将现有数据加载到 MySQL 以及在 MySQL 中创建目标表。完成前提条件后,用户可以创建 MySQL sink 以将数据复制到 MySQL。 +title: Sink to MySQL +summary: 本文档介绍如何使用 **Sink to MySQL** changefeed 将数据从 TiDB Cloud 实时同步到 MySQL。内容包括限制条件、前置条件,以及创建 MySQL sink 进行数据同步的步骤。该过程涉及网络连接设置、将已有数据导入 MySQL 以及在 MySQL 中创建目标表。完成前置条件后,用户即可创建 MySQL sink,将数据同步到 MySQL。 --- -# 同步到 MySQL +# Sink to MySQL -本文档介绍如何使用**同步到 MySQL** changefeed 将数据从 TiDB Cloud 流式传输到 MySQL。 +本文档描述了如何使用 **Sink to MySQL** changefeed,将数据从 TiDB Cloud 实时同步到 MySQL。 > **注意:** > > - 要使用 changefeed 功能,请确保你的 TiDB Cloud Dedicated 集群版本为 v6.1.3 或更高版本。 -> - 对于 [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless),changefeed 功能不可用。 +> - 对于 [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless),暂不支持 changefeed 功能。 -## 限制 +## 限制条件 -- 对于每个 TiDB Cloud 集群,你最多可以创建 100 个 changefeed。 -- 因为 TiDB Cloud 使用 TiCDC 建立 changefeed,所以它具有与 [TiCDC 相同的限制](https://docs.pingcap.com/tidb/stable/ticdc-overview#unsupported-scenarios)。 -- 如果要复制的表没有主键或非空唯一索引,在某些重试场景下,由于缺少唯一约束,可能会导致下游插入重复数据。 +- 每个 TiDB Cloud 集群最多可创建 100 个 changefeed。 +- 由于 TiDB Cloud 使用 TiCDC 建立 changefeed,因此具有与 [TiCDC 相同的限制](https://docs.pingcap.com/tidb/stable/ticdc-overview#unsupported-scenarios)。 +- 如果待同步的表没有主键或非空唯一索引,在某些重试场景下,由于缺少唯一约束,可能会导致下游插入重复数据。 -## 前提条件 +## 前置条件 -在创建 changefeed 之前,你需要完成以下前提条件: +在创建 changefeed 之前,你需要完成以下前置条件: - 设置网络连接 -- 导出并加载现有数据到 MySQL(可选) -- 如果你不加载现有数据,只想将增量数据复制到 MySQL,则需要在 MySQL 中创建相应的目标表 +- 导出并导入已有数据到 MySQL(可选) +- 如果你不导入已有数据,仅希望同步增量数据到 MySQL,则需要在 MySQL 中手动创建对应的目标表 ### 网络 -确保你的 TiDB 集群可以连接到 MySQL 服务。 +确保你的 TiDB 集群能够连接到 MySQL 服务。 -如果你的 MySQL 服务在没有公共互联网访问的 AWS VPC 中,请执行以下步骤: +如果你的 MySQL 服务位于没有公网访问权限的 AWS VPC 中,请按照以下步骤操作: -1. 在 MySQL 服务的 VPC 和你的 TiDB 集群之间[设置 VPC 对等连接](/tidb-cloud/set-up-vpc-peering-connections.md)。 +1. 在 MySQL 服务所在 VPC 与 TiDB 集群所在 VPC 之间 [建立 VPC 对等连接](/tidb-cloud/set-up-vpc-peering-connections.md)。 2. 修改 MySQL 服务关联的安全组的入站规则。 - 你必须将[你的 TiDB Cloud 集群所在区域的 CIDR](/tidb-cloud/set-up-vpc-peering-connections.md#prerequisite-set-a-cidr-for-a-region) 添加到入站规则中。这样可以允许流量从你的 TiDB 集群流向 MySQL 实例。 + 你必须将 [TiDB Cloud 集群所在区域的 CIDR](/tidb-cloud/set-up-vpc-peering-connections.md#prerequisite-set-a-cidr-for-a-region) 添加到入站规则中。这样可以允许来自 TiDB 集群的流量访问 MySQL 实例。 3. 如果 MySQL URL 包含主机名,你需要允许 TiDB Cloud 能够解析 MySQL 服务的 DNS 主机名。 - 1. 按照[为 VPC 对等连接启用 DNS 解析](https://docs.aws.amazon.com/vpc/latest/peering/modify-peering-connections.html#vpc-peering-dns)中的步骤操作。 - 2. 启用**接受者 DNS 解析**选项。 + 1. 按照 [为 VPC 对等连接启用 DNS 解析](https://docs.aws.amazon.com/vpc/latest/peering/modify-peering-connections.html#vpc-peering-dns) 的步骤操作。 + 2. 启用 **Accepter DNS resolution** 选项。 -如果你的 MySQL 服务在没有公共互联网访问的 Google Cloud VPC 中,请执行以下步骤: +如果你的 MySQL 服务位于没有公网访问权限的 Google Cloud VPC 中,请按照以下步骤操作: -1. 如果你的 MySQL 服务是 Google Cloud SQL,你必须在 Google Cloud SQL 实例关联的 VPC 中暴露一个 MySQL 端点。你可能需要使用 Google 开发的 [**Cloud SQL Auth proxy**](https://cloud.google.com/sql/docs/mysql/sql-proxy)。 -2. 在 MySQL 服务的 VPC 和你的 TiDB 集群之间[设置 VPC 对等连接](/tidb-cloud/set-up-vpc-peering-connections.md)。 +1. 如果你的 MySQL 服务是 Google Cloud SQL,必须在 Google Cloud SQL 实例关联的 VPC 中暴露一个 MySQL 端点。你可能需要使用 Google 提供的 [**Cloud SQL Auth proxy**](https://cloud.google.com/sql/docs/mysql/sql-proxy)。 +2. 在 MySQL 服务所在 VPC 与 TiDB 集群所在 VPC 之间 [建立 VPC 对等连接](/tidb-cloud/set-up-vpc-peering-connections.md)。 3. 修改 MySQL 所在 VPC 的入站防火墙规则。 - 你必须将[你的 TiDB Cloud 集群所在区域的 CIDR](/tidb-cloud/set-up-vpc-peering-connections.md#prerequisite-set-a-cidr-for-a-region) 添加到入站防火墙规则中。这样可以允许流量从你的 TiDB 集群流向 MySQL 端点。 + 你必须将 [TiDB Cloud 集群所在区域的 CIDR](/tidb-cloud/set-up-vpc-peering-connections.md#prerequisite-set-a-cidr-for-a-region) 添加到入站防火墙规则中。这样可以允许来自 TiDB 集群的流量访问 MySQL 端点。 -### 加载现有数据(可选) +### 导入已有数据(可选) -**同步到 MySQL** 连接器只能在某个时间戳之后将增量数据从你的 TiDB 集群同步到 MySQL。如果你的 TiDB 集群中已经有数据,你可以在启用**同步到 MySQL**之前将 TiDB 集群的现有数据导出并加载到 MySQL 中。 +**Sink to MySQL** 连接器只能将某一时间点之后的增量数据从 TiDB 集群同步到 MySQL。如果你的 TiDB 集群中已经有数据,可以在启用 **Sink to MySQL** 之前,将已有数据导出并导入到 MySQL。 -要加载现有数据: +导入已有数据的步骤如下: -1. 将 [tidb_gc_life_time](https://docs.pingcap.com/tidb/stable/system-variables#tidb_gc_life_time-new-in-v50) 延长至超过以下两个操作的总时间,这样 TiDB 就不会对这段时间内的历史数据进行垃圾回收。 +1. 将 [tidb_gc_life_time](https://docs.pingcap.com/tidb/stable/system-variables#tidb_gc_life_time-new-in-v50) 设置为大于以下两个操作总耗时的值,以避免这段时间内的历史数据被 TiDB 垃圾回收。 - - 导出和导入现有数据的时间 - - 创建**同步到 MySQL**的时间 + - 导出和导入已有数据所需的时间 + - 创建 **Sink to MySQL** 所需的时间 例如: - {{< copyable "sql" >}} - ```sql SET GLOBAL tidb_gc_life_time = '720h'; ``` -2. 使用 [Dumpling](https://docs.pingcap.com/tidb/stable/dumpling-overview) 从你的 TiDB 集群导出数据,然后使用社区工具(如 [mydumper/myloader](https://centminmod.com/mydumper.html))将数据加载到 MySQL 服务。 +2. 使用 [Dumpling](https://docs.pingcap.com/tidb/stable/dumpling-overview) 从 TiDB 集群导出数据,然后使用社区工具如 [mydumper/myloader](https://centminmod.com/mydumper.html) 将数据导入到 MySQL 服务。 -3. 从 [Dumpling 导出的文件](https://docs.pingcap.com/tidb/stable/dumpling-overview#format-of-exported-files)中,从元数据文件获取 MySQL sink 的起始位置: +3. 从 [Dumpling 导出的文件](https://docs.pingcap.com/tidb/stable/dumpling-overview#format-of-exported-files) 中,获取 MySQL sink 的起始位置(start position),该信息位于 metadata 文件中: - 以下是一个示例元数据文件的部分内容。`SHOW MASTER STATUS` 的 `Pos` 是现有数据的 TSO,也是 MySQL sink 的起始位置。 + 以下是示例 metadata 文件的一部分。`SHOW MASTER STATUS` 的 `Pos` 即为已有数据的 TSO,也是 MySQL sink 的起始位置。 ``` Started dump at: 2020-11-10 10:40:19 @@ -85,59 +83,63 @@ summary: 本文档介绍如何使用同步到 MySQL 的 changefeed 将数据从 ### 在 MySQL 中创建目标表 -如果你不加载现有数据,你需要在 MySQL 中手动创建相应的目标表来存储来自 TiDB 的增量数据。否则,数据将不会被复制。 +如果你没有导入已有数据,需要在 MySQL 中手动创建对应的目标表,用于存储来自 TiDB 的增量数据。否则,数据将无法被同步。 ## 创建 MySQL sink -完成前提条件后,你可以将数据同步到 MySQL。 - -1. 导航到目标 TiDB 集群的集群概览页面,然后在左侧导航栏中点击**数据** > **Changefeed**。 +完成前置条件后,你可以将数据同步到 MySQL。 -2. 点击**创建 Changefeed**,并选择 **MySQL** 作为**目标**。 +1. 进入目标 TiDB 集群的集群总览页面,在左侧导航栏点击 **Data** > **Changefeed**。 -3. 在 **MySQL 连接**中填写 MySQL 端点、用户名和密码。 +2. 点击 **Create Changefeed**,并选择 **MySQL** 作为 **Destination**。 -4. 点击**下一步**以测试 TiDB 是否可以成功连接到 MySQL: +3. 在 **MySQL Connection** 中填写 MySQL 的端点、用户名和密码。 - - 如果可以,你将进入下一步配置。 - - 如果不可以,将显示连接错误,你需要处理该错误。错误解决后,再次点击**下一步**。 +4. 点击 **Next**,测试 TiDB 是否能够成功连接到 MySQL: -5. 自定义**表过滤器**以过滤要复制的表。有关规则语法,请参考[表过滤规则](/table-filter.md)。 + - 如果连接成功,将进入下一步配置。 + - 如果连接失败,会显示连接错误,你需要排查并解决该错误。错误解决后,点击 **Next** 重新测试。 - - **过滤规则**:你可以在此列中设置过滤规则。默认有一个规则 `*.*`,表示复制所有表。当你添加新规则时,TiDB Cloud 会查询 TiDB 中的所有表,并在右侧框中只显示匹配规则的表。你最多可以添加 100 个过滤规则。 - - **具有有效键的表**:此列显示具有有效键(包括主键或唯一索引)的表。 - - **没有有效键的表**:此列显示缺少主键或唯一键的表。这些表在复制过程中会带来挑战,因为缺少唯一标识符可能会导致下游处理重复事件时数据不一致。为确保数据一致性,建议在开始复制之前为这些表添加唯一键或主键。或者,你可以添加过滤规则来排除这些表。例如,你可以使用规则 `"!test.tbl1"` 来排除表 `test.tbl1`。 +5. 自定义 **Table Filter**,筛选你希望同步的表。规则语法详见 [table filter rules](/table-filter.md)。 -6. 自定义**事件过滤器**以过滤要复制的事件。 + - **Filter Rules**:你可以在此列设置过滤规则。默认有一条规则 `*.*`,表示同步所有表。添加新规则后,TiDB Cloud 会查询所有表,并在右侧仅显示匹配规则的表。最多可添加 100 条过滤规则。 + - **Tables with valid keys**:此列显示具有有效键(主键或唯一索引)的表。 + - **Tables without valid keys**:此列显示缺少主键或唯一键的表。这类表在同步时存在风险,因为下游处理重复事件时,缺少唯一标识可能导致数据不一致。为保证数据一致性,建议在同步前为这些表添加唯一键或主键,或者通过过滤规则排除这些表。例如,可以通过规则 `"!test.tbl1"` 排除表 `test.tbl1`。 - - **匹配表**:你可以在此列中设置事件过滤器将应用于哪些表。规则语法与前面的**表过滤器**区域使用的语法相同。每个 changefeed 最多可以添加 10 个事件过滤规则。 - - **忽略的事件**:你可以设置事件过滤器将从 changefeed 中排除哪些类型的事件。 +6. 自定义 **Event Filter**,筛选你希望同步的事件。 -7. 在**开始复制位置**中,配置 MySQL sink 的起始位置。 + - **Tables matching**:你可以在此列设置事件过滤规则应用到哪些表。规则语法与前述 **Table Filter** 区域相同。每个 changefeed 最多可添加 10 条事件过滤规则。 + - **Event Filter**:你可以使用以下事件过滤器,从 changefeed 中排除特定事件: + - **Ignore event**:排除指定类型的事件。 + - **Ignore SQL**:排除匹配指定表达式的 DDL 事件。例如,`^drop` 排除以 `DROP` 开头的语句,`add column` 排除包含 `ADD COLUMN` 的语句。 + - **Ignore insert value expression**:排除满足特定条件的 `INSERT` 语句。例如,`id >= 100` 排除 `id` 大于等于 100 的 `INSERT` 语句。 + - **Ignore update new value expression**:排除新值满足指定条件的 `UPDATE` 语句。例如,`gender = 'male'` 排除更新后 `gender` 为 `male` 的操作。 + - **Ignore update old value expression**:排除旧值满足指定条件的 `UPDATE` 语句。例如,`age < 18` 排除旧值 `age` 小于 18 的更新操作。 + - **Ignore delete value expression**:排除满足指定条件的 `DELETE` 语句。例如,`name = 'john'` 排除 `name` 为 `'john'` 的删除操作。 - - 如果你已经使用 Dumpling [加载了现有数据](#加载现有数据可选),选择**从特定 TSO 开始复制**,并填写你从 Dumpling 导出的元数据文件中获取的 TSO。 - - 如果上游 TiDB 集群中没有任何数据,选择**从现在开始复制**。 - - 否则,你可以通过选择**从特定时间开始复制**来自定义开始时间点。 +7. 在 **Start Replication Position** 中,配置 MySQL sink 的起始同步位置。 -8. 点击**下一步**以配置你的 changefeed 规格。 + - 如果你已通过 Dumpling [导入了已有数据](#load-existing-data-optional),请选择 **Start replication from a specific TSO**,并填写从 Dumpling 导出 metadata 文件中获取的 TSO。 + - 如果上游 TiDB 集群没有任何数据,选择 **Start replication from now on**。 + - 其他情况下,你可以通过选择 **Start replication from a specific time** 自定义起始时间点。 - - 在 **Changefeed 规格**区域,指定 changefeed 要使用的复制容量单位(RCU)数量。 - - 在 **Changefeed 名称**区域,为 changefeed 指定一个名称。 +8. 点击 **Next**,配置 changefeed 规格。 -9. 点击**下一步**以审查 changefeed 配置。 + - 在 **Changefeed Specification** 区域,指定 changefeed 使用的 Replication Capacity Units(RCUs)数量。 + - 在 **Changefeed Name** 区域,指定 changefeed 的名称。 - 如果你确认所有配置都正确,请检查跨区域复制的合规性,然后点击**创建**。 +9. 点击 **Next**,检查 changefeed 配置。 - 如果你想修改某些配置,点击**上一步**返回上一个配置页面。 + 如果确认所有配置无误,勾选跨区域同步合规性,并点击 **Create**。 -10. sink 很快就会启动,你可以看到 sink 的状态从**创建中**变为**运行中**。 + 如果需要修改配置,点击 **Previous** 返回上一步进行调整。 - 点击 changefeed 名称,你可以看到有关 changefeed 的更多详细信息,如检查点、复制延迟和其他指标。 +10. sink 很快会启动,你可以看到 sink 的状态从 **Creating** 变为 **Running**。 -11. 如果你已经使用 Dumpling [加载了现有数据](#加载现有数据可选),你需要在创建 sink 后将 GC 时间恢复为原始值(默认值为 `10m`): + 点击 changefeed 名称,可以查看更多关于 changefeed 的详细信息,如 checkpoint、同步延迟及其他指标。 -{{< copyable "sql" >}} +11. 如果你已通过 Dumpling [导入了已有数据](#load-existing-data-optional),在 sink 创建完成后,需要将 GC 时间恢复为原值(默认值为 `10m`): ```sql SET GLOBAL tidb_gc_life_time = '10m'; -``` +``` \ No newline at end of file diff --git a/tidb-cloud/changefeed-sink-to-tidb-cloud.md b/tidb-cloud/changefeed-sink-to-tidb-cloud.md index 1d894c9174cb6..631077a838c33 100644 --- a/tidb-cloud/changefeed-sink-to-tidb-cloud.md +++ b/tidb-cloud/changefeed-sink-to-tidb-cloud.md @@ -1,41 +1,41 @@ --- -title: 同步到 TiDB Cloud -summary: 本文档介绍如何将数据从 TiDB Cloud Dedicated 集群流式传输到 TiDB Cloud Serverless 集群。该功能对 changefeed 数量和可用区域有限制。前提条件包括延长 tidb_gc_life_time、备份数据以及获取 TiDB Cloud sink 的起始位置。要创建 TiDB Cloud sink,需要导航到集群概览页面、建立连接、自定义表和事件过滤器、填写开始复制位置、指定 changefeed 规格、审查配置并创建 sink。最后,将 tidb_gc_life_time 恢复为原始值。 +title: Sink to TiDB Cloud +summary: 本文档介绍如何将数据从 TiDB Cloud Dedicated 集群实时同步到 TiDB Cloud Serverless 集群。该功能对 changefeed 和 region 的数量有限制。前置条件包括延长 tidb_gc_life_time、备份数据以及获取 TiDB Cloud sink 的起始位置。要创建 TiDB Cloud sink,请进入集群概览页面,建立连接,自定义表和事件过滤器,填写起始同步位点,指定 changefeed 规格,检查配置并创建 sink。最后,将 tidb_gc_life_time 恢复为原值。 --- -# 同步到 TiDB Cloud +# Sink to TiDB Cloud -本文档介绍如何将数据从 TiDB Cloud Dedicated 集群流式传输到 TiDB Cloud Serverless 集群。 +本文档描述如何将数据从 TiDB Cloud Dedicated 集群实时同步到 TiDB Cloud Serverless 集群。 > **注意:** > -> 要使用 Changefeed 功能,请确保你的 TiDB Cloud Dedicated 集群版本为 v6.1.3 或更高版本。 +> 要使用 Changefeed 功能,请确保你的 TiDB Cloud Dedicated 集群版本为 v6.1.3 或更高。 ## 限制 -- 对于每个 TiDB Cloud 集群,你最多可以创建 100 个 changefeed。 -- 因为 TiDB Cloud 使用 TiCDC 建立 changefeed,所以它具有与 [TiCDC 相同的限制](https://docs.pingcap.com/tidb/stable/ticdc-overview#unsupported-scenarios)。 -- 如果要复制的表没有主键或非空唯一索引,在某些重试场景下,由于缺少唯一约束,可能会导致下游插入重复数据。 -- **同步到 TiDB Cloud** 功能仅适用于 2022 年 11 月 9 日之后创建的、位于以下 AWS 区域的 TiDB Cloud Dedicated 集群: +- 每个 TiDB Cloud 集群最多可以创建 100 个 changefeed。 +- 由于 TiDB Cloud 使用 TiCDC 建立 changefeed,因此具有与 [TiCDC 相同的限制](https://docs.pingcap.com/tidb/stable/ticdc-overview#unsupported-scenarios)。 +- 如果待同步的表没有主键或非空唯一索引,在某些重试场景下,由于缺少唯一约束,可能会导致下游插入重复数据。 +- **Sink to TiDB Cloud** 功能仅对以下 AWS 区域且创建时间在 2022 年 11 月 9 日之后的 TiDB Cloud Dedicated 集群开放: - - AWS 俄勒冈(us-west-2) - - AWS 法兰克福(eu-central-1) - - AWS 新加坡(ap-southeast-1) - - AWS 东京(ap-northeast-1) + - AWS Oregon (us-west-2) + - AWS Frankfurt (eu-central-1) + - AWS Singapore (ap-southeast-1) + - AWS Tokyo (ap-northeast-1) -- 源 TiDB Cloud Dedicated 集群和目标 TiDB Cloud Serverless 集群必须在同一个项目和同一个区域中。 -- **同步到 TiDB Cloud** 功能仅支持通过私有端点进行网络连接。当你创建 changefeed 将数据从 TiDB Cloud Dedicated 集群流式传输到 TiDB Cloud Serverless 集群时,TiDB Cloud 将自动在两个集群之间设置私有端点连接。 +- 源 TiDB Cloud Dedicated 集群和目标 TiDB Cloud Serverless 集群必须在同一个项目且同一区域内。 +- **Sink to TiDB Cloud** 功能仅支持通过私有终端节点进行网络连接。当你创建 changefeed 将数据从 TiDB Cloud Dedicated 集群同步到 TiDB Cloud Serverless 集群时,TiDB Cloud 会自动为两个集群建立私有终端节点连接。 -## 前提条件 +## 前置条件 -**同步到 TiDB Cloud** 连接器只能在某个 [TSO](https://docs.pingcap.com/tidb/stable/glossary#tso) 之后将增量数据从 TiDB Cloud Dedicated 集群同步到 TiDB Cloud Serverless 集群。 +**Sink to TiDB Cloud** 连接器只能在某个 [TSO](https://docs.pingcap.com/tidb/stable/glossary#tso) 之后,将 TiDB Cloud Dedicated 集群的增量数据同步到 TiDB Cloud Serverless 集群。 -在创建 changefeed 之前,你需要从源 TiDB Cloud Dedicated 集群导出现有数据并将数据加载到目标 TiDB Cloud Serverless 集群。 +在创建 changefeed 之前,你需要先将源 TiDB Cloud Dedicated 集群的现有数据导出,并加载到目标 TiDB Cloud Serverless 集群。 -1. 将 [tidb_gc_life_time](https://docs.pingcap.com/tidb/stable/system-variables#tidb_gc_life_time-new-in-v50) 延长至超过以下两个操作的总时间,这样 TiDB 就不会对这段时间内的历史数据进行垃圾回收。 +1. 将 [tidb_gc_life_time](https://docs.pingcap.com/tidb/stable/system-variables#tidb_gc_life_time-new-in-v50) 设置为大于以下两个操作总耗时的值,以确保这段时间内的历史数据不会被 TiDB 垃圾回收。 - - 导出和导入现有数据的时间 - - 创建**同步到 TiDB Cloud**的时间 + - 导出和导入现有数据所需的时间 + - 创建 **Sink to TiDB Cloud** 所需的时间 例如: @@ -43,11 +43,11 @@ summary: 本文档介绍如何将数据从 TiDB Cloud Dedicated 集群流式传 SET GLOBAL tidb_gc_life_time = '720h'; ``` -2. 使用 [Dumpling](https://docs.pingcap.com/tidb/stable/dumpling-overview) 从你的 TiDB Cloud Dedicated 集群导出数据,然后使用 [TiDB Cloud Serverless 导入](/tidb-cloud/import-csv-files-serverless.md)将数据加载到目标 TiDB Cloud Serverless 集群。 +2. 使用 [Dumpling](https://docs.pingcap.com/tidb/stable/dumpling-overview) 从 TiDB Cloud Dedicated 集群导出数据,然后使用 [TiDB Cloud Serverless Import](/tidb-cloud/import-csv-files-serverless.md) 将数据加载到目标 TiDB Cloud Serverless 集群。 -3. 从 [Dumpling 导出的文件](https://docs.pingcap.com/tidb/stable/dumpling-overview#format-of-exported-files)中,从元数据文件获取 TiDB Cloud sink 的起始位置: +3. 从 [Dumpling 导出的文件](https://docs.pingcap.com/tidb/stable/dumpling-overview#format-of-exported-files) 中,获取 TiDB Cloud sink 的起始位置(TSO),该信息位于 metadata 文件中: - 以下是一个示例元数据文件的部分内容。`SHOW MASTER STATUS` 的 `Pos` 是现有数据的 TSO,也是 TiDB Cloud sink 的起始位置。 + 以下是一个示例 metadata 文件片段。`SHOW MASTER STATUS` 的 `Pos` 字段即为现有数据的 TSO,也是 TiDB Cloud sink 的起始位置。 ``` Started dump at: 2023-03-28 10:40:19 @@ -59,49 +59,55 @@ summary: 本文档介绍如何将数据从 TiDB Cloud Dedicated 集群流式传 ## 创建 TiDB Cloud sink -完成前提条件后,你可以将数据同步到目标 TiDB Cloud Serverless 集群。 +完成前置条件后,你可以将数据同步到目标 TiDB Cloud Serverless 集群。 -1. 导航到目标 TiDB 集群的集群概览页面,然后在左侧导航栏中点击**数据** > **Changefeed**。 +1. 进入目标 TiDB 集群的集群概览页面,在左侧导航栏点击 **Data** > **Changefeed**。 -2. 点击**创建 Changefeed**,并选择 **TiDB Cloud** 作为目标。 +2. 点击 **Create Changefeed**,并选择 **TiDB Cloud** 作为目标。 -3. 在 **TiDB Cloud 连接**区域,选择目标 TiDB Cloud Serverless 集群,然后填写目标集群的用户名和密码。 +3. 在 **TiDB Cloud Connection** 区域,选择目标 TiDB Cloud Serverless 集群,并填写目标集群的用户名和密码。 -4. 点击**下一步**以建立两个 TiDB 集群之间的连接,并测试 changefeed 是否可以成功连接它们: +4. 点击 **Next**,建立两个 TiDB 集群之间的连接,并测试 changefeed 是否可以成功连接: - - 如果可以,你将进入下一步配置。 - - 如果不可以,将显示连接错误,你需要处理该错误。错误解决后,再次点击**下一步**。 + - 如果连接成功,将进入下一步配置。 + - 如果连接失败,会显示连接错误,你需要处理该错误。错误解决后,重新点击 **Next**。 -5. 自定义**表过滤器**以过滤要复制的表。有关规则语法,请参考[表过滤规则](/table-filter.md)。 +5. 自定义 **Table Filter**,筛选你希望同步的表。规则语法可参考 [table filter rules](/table-filter.md)。 - - **过滤规则**:你可以在此列中设置过滤规则。默认有一个规则 `*.*`,表示复制所有表。当你添加新规则时,TiDB Cloud 会查询 TiDB 中的所有表,并在右侧框中只显示匹配规则的表。你最多可以添加 100 个过滤规则。 - - **具有有效键的表**:此列显示具有有效键(包括主键或唯一索引)的表。 - - **没有有效键的表**:此列显示缺少主键或唯一键的表。这些表在复制过程中会带来挑战,因为缺少唯一标识符可能会导致下游处理重复事件时数据不一致。为确保数据一致性,建议在开始复制之前为这些表添加唯一键或主键。或者,你可以添加过滤规则来排除这些表。例如,你可以使用规则 `"!test.tbl1"` 来排除表 `test.tbl1`。 + - **Filter Rules**:你可以在此列设置过滤规则。默认有一条规则 `*.*`,表示同步所有表。添加新规则后,TiDB Cloud 会查询所有表,并在右侧仅显示匹配规则的表。最多可添加 100 条过滤规则。 + - **Tables with valid keys**:此列显示具有有效键(主键或唯一索引)的表。 + - **Tables without valid keys**:此列显示缺少主键或唯一键的表。这类表在同步时存在风险,因为缺少唯一标识,可能导致下游处理重复事件时数据不一致。为保证数据一致性,建议在同步前为这些表添加唯一键或主键,或者通过添加过滤规则排除这些表。例如,可以通过规则 `"!test.tbl1"` 排除表 `test.tbl1`。 -6. 自定义**事件过滤器**以过滤要复制的事件。 +6. 自定义 **Event Filter**,筛选你希望同步的事件。 - - **匹配表**:你可以在此列中设置事件过滤器将应用于哪些表。规则语法与前面的**表过滤器**区域使用的语法相同。每个 changefeed 最多可以添加 10 个事件过滤规则。 - - **忽略的事件**:你可以设置事件过滤器将从 changefeed 中排除哪些类型的事件。 + - **Tables matching**:你可以在此列设置事件过滤器应用到哪些表。规则语法与前述 **Table Filter** 区域相同。每个 changefeed 最多可添加 10 条事件过滤规则。 + - **Event Filter**:你可以使用以下事件过滤器从 changefeed 中排除特定事件: + - **Ignore event**:排除指定类型的事件。 + - **Ignore SQL**:排除匹配指定表达式的 DDL 事件。例如,`^drop` 排除以 `DROP` 开头的语句,`add column` 排除包含 `ADD COLUMN` 的语句。 + - **Ignore insert value expression**:排除满足特定条件的 `INSERT` 语句。例如,`id >= 100` 排除 `id` 大于等于 100 的 `INSERT` 语句。 + - **Ignore update new value expression**:排除新值满足指定条件的 `UPDATE` 语句。例如,`gender = 'male'` 排除更新后 `gender` 为 `male` 的更新。 + - **Ignore update old value expression**:排除旧值满足指定条件的 `UPDATE` 语句。例如,`age < 18` 排除旧值 `age` 小于 18 的更新。 + - **Ignore delete value expression**:排除满足指定条件的 `DELETE` 语句。例如,`name = 'john'` 排除 `name` 为 `'john'` 的删除。 -7. 在**开始复制位置**区域,填写你从 Dumpling 导出的元数据文件中获取的 TSO。 +7. 在 **Start Replication Position** 区域,填写你从 Dumpling 导出 metadata 文件中获取的 TSO。 -8. 点击**下一步**以配置你的 changefeed 规格。 +8. 点击 **Next**,配置 changefeed 规格。 - - 在 **Changefeed 规格**区域,指定 changefeed 要使用的复制容量单位(RCU)数量。 - - 在 **Changefeed 名称**区域,为 changefeed 指定一个名称。 + - 在 **Changefeed Specification** 区域,指定 changefeed 使用的 Replication Capacity Units (RCUs) 数量。 + - 在 **Changefeed Name** 区域,为 changefeed 指定一个名称。 -9. 点击**下一步**以审查 changefeed 配置。 +9. 点击 **Next**,检查 changefeed 配置。 - 如果你确认所有配置都正确,请检查跨区域复制的合规性,然后点击**创建**。 + 如果确认所有配置无误,勾选跨区域同步合规性,并点击 **Create**。 - 如果你想修改某些配置,点击**上一步**返回上一个配置页面。 + 如果需要修改配置,点击 **Previous** 返回上一步。 -10. sink 很快就会启动,你可以看到 sink 的状态从**创建中**变为**运行中**。 +10. sink 很快会启动,你可以看到 sink 状态从 **Creating** 变为 **Running**。 - 点击 changefeed 名称,你可以看到有关 changefeed 的更多详细信息,如检查点、复制延迟和其他指标。 + 点击 changefeed 名称,可以查看更多关于 changefeed 的详细信息,如 checkpoint、同步延迟及其他指标。 -11. 在创建 sink 后,将 [tidb_gc_life_time](https://docs.pingcap.com/tidb/stable/system-variables#tidb_gc_life_time-new-in-v50) 恢复为原始值(默认值为 `10m`): +11. sink 创建完成后,将 [tidb_gc_life_time](https://docs.pingcap.com/tidb/stable/system-variables#tidb_gc_life_time-new-in-v50) 恢复为原值(默认值为 `10m`): ```sql SET GLOBAL tidb_gc_life_time = '10m'; - ``` + ``` \ No newline at end of file diff --git a/tidb-cloud/cli-reference.md b/tidb-cloud/cli-reference.md index efeef763240d5..52ba42bb0b866 100644 --- a/tidb-cloud/cli-reference.md +++ b/tidb-cloud/cli-reference.md @@ -1,68 +1,69 @@ --- title: TiDB Cloud CLI 参考 -summary: 提供 TiDB Cloud CLI 的概述。 +summary: 提供 TiDB Cloud CLI 的概览。 --- # TiDB Cloud CLI 参考(Beta) -> **注意:** +> **Note:** > -> TiDB Cloud CLI 目前处于 beta 阶段。 +> 目前,TiDB Cloud CLI 处于 beta 阶段,暂不适用于 TiDB Cloud Dedicated 集群。 TiDB Cloud CLI 是一个命令行界面,允许你通过几行命令在终端中操作 TiDB Cloud。在 TiDB Cloud CLI 中,你可以轻松管理 TiDB Cloud 集群、向集群导入数据以及执行更多操作。 ## 开始之前 -请确保首先[设置你的 TiDB Cloud CLI 环境](/tidb-cloud/get-started-with-cli.md)。安装 `ticloud` CLI 后,你就可以通过命令行管理 TiDB Cloud 集群。 +请确保你已先[完成 TiDB Cloud CLI 环境的设置](/tidb-cloud/get-started-with-cli.md)。安装好 `ticloud` CLI 后,你就可以通过命令行管理 TiDB Cloud 集群。 ## 可用命令 -下表列出了 TiDB Cloud CLI 的可用命令。 +下表列出了 TiDB Cloud CLI 支持的命令。 -要在终端中使用 `ticloud` CLI,运行 `ticloud [command] [subcommand]`。如果你使用的是 [TiUP](https://docs.pingcap.com/tidb/stable/tiup-overview),请使用 `tiup cloud [command] [subcommand]`。 +在终端中使用 `ticloud` CLI 时,运行 `ticloud [command] [subcommand]`。如果你使用的是 [TiUP](https://docs.pingcap.com/tidb/stable/tiup-overview),则使用 `tiup cloud [command] [subcommand]`。 -| 命令 | 子命令 | 描述 | +| Command | Subcommand | Description | |-----------------------|-----------------------------------------------------------------------|------------------------------------------------| -| auth | login, logout, whoami | 登录和登出 | -| serverless (别名: s) | create, delete, describe, list, update, spending-limit, region, shell | 管理 TiDB Cloud Serverless 集群 | -| serverless branch | create, delete, describe, list, shell | 管理 TiDB Cloud Serverless 分支 | -| serverless import | cancel, describe, list, start | 管理 TiDB Cloud Serverless 导入任务 | -| serverless export | create, describe, list, cancel, download | 管理 TiDB Cloud Serverless 导出任务 | -| serverless sql-user | create, list, delete, update | 管理 TiDB Cloud Serverless SQL 用户 | -| ai | - | 与 TiDB Bot 聊天 | -| completion | bash, fish, powershell, zsh | 为指定的 shell 生成补全脚本 | -| config | create, delete, describe, edit, list, set, use | 配置用户配置文件 | -| project | list | 管理项目 | -| upgrade | - | 将 CLI 更新到最新版本 | -| help | auth, config, serverless, ai, project, upgrade, help, completion | 查看任何命令的帮助 | +| auth | login, logout, whoami | 登录与登出 | +| serverless (alias: s) | create, delete, describe, list, update, spending-limit, region, shell | 管理 TiDB Cloud Serverless 集群 | +| serverless branch | create, delete, describe, list, shell | 管理 TiDB Cloud Serverless 分支 | +| serverless import | cancel, describe, list, start | 管理 TiDB Cloud Serverless 导入任务 | +| serverless export | create, describe, list, cancel, download | 管理 TiDB Cloud Serverless 导出任务 | +| serverless sql-user | create, list, delete, update | 管理 TiDB Cloud Serverless SQL 用户 | +| serverless audit-log | config, describe, filter-rule (alias: filter), download | 管理 TiDB Cloud Serverless 数据库审计日志 | +| ai | - | 与 TiDB Bot 聊天 | +| completion | bash, fish, powershell, zsh | 为指定 shell 生成补全脚本 | +| config | create, delete, describe, edit, list, set, use | 配置用户配置文件 | +| project | list | 管理项目 | +| upgrade | - | 将 CLI 升级到最新版本 | +| help | auth, config, serverless, ai, project, upgrade, help, completion | 查看任意命令的帮助信息 | ## 命令模式 -TiDB Cloud CLI 为某些命令提供了两种模式,方便使用: +TiDB Cloud CLI 针对部分命令提供了两种模式,便于使用: - 交互模式 - 你可以运行不带标志的命令(如 `ticloud config create`),CLI 会提示你输入。 + 你可以在不带参数的情况下运行命令(如 `ticloud config create`),CLI 会提示你输入相关信息。 - 非交互模式 - 运行命令时必须提供所有必需的参数和标志,如 `ticloud config create --profile-name --public-key --private-key `。 + 你需要在运行命令时提供所有必需的参数和选项,例如 `ticloud config create --profile-name --public-key --private-key `。 ## 用户配置文件 -对于 TiDB Cloud CLI,用户配置文件是与用户相关的属性集合,包括配置文件名称、公钥、私钥和 OAuth 令牌。要使用 TiDB Cloud CLI,你必须有一个用户配置文件。 +对于 TiDB Cloud CLI,用户配置文件是与用户相关的一组属性,包括配置文件名称、公钥、私钥和 OAuth token。要使用 TiDB Cloud CLI,你必须拥有一个用户配置文件。 -### 使用 TiDB Cloud API 密钥创建用户配置文件 +### 使用 TiDB Cloud API key 创建用户配置文件 使用 [`ticloud config create`](/tidb-cloud/ticloud-config-create.md) 创建用户配置文件。 -### 使用 OAuth 令牌创建用户配置文件 +### 使用 OAuth token 创建用户配置文件 -使用 [`ticloud auth login`](/tidb-cloud/ticloud-auth-login.md) 将 OAuth 令牌分配给当前配置文件。如果不存在配置文件,将自动创建一个名为 `default` 的配置文件。 +使用 [`ticloud auth login`](/tidb-cloud/ticloud-auth-login.md) 为当前配置文件分配 OAuth token。如果不存在任何配置文件,则会自动创建一个名为 `default` 的配置文件。 -> **注意:** +> **Note:** > -> 在上述两种方法中,TiDB Cloud API 密钥优先于 OAuth 令牌。如果当前配置文件中两者都可用,将使用 API 密钥。 +> 在上述两种方式中,TiDB Cloud API key 的优先级高于 OAuth token。如果当前配置文件中同时存在两者,将优先使用 API key。 ### 列出所有用户配置文件 @@ -77,9 +78,9 @@ dev staging ``` -在此示例输出中,用户配置文件 `default` 当前处于活动状态。 +在此示例输出中,`default` 用户配置文件为当前激活状态。 -### 描述用户配置文件 +### 查看用户配置文件详情 使用 [`ticloud config describe`](/tidb-cloud/ticloud-config-describe.md) 获取用户配置文件的属性。 @@ -92,13 +93,13 @@ staging } ``` -### 设置用户配置文件中的属性 +### 设置用户配置文件属性 使用 [`ticloud config set`](/tidb-cloud/ticloud-config-set.md) 设置用户配置文件中的属性。 -### 切换到另一个用户配置文件 +### 切换到其他用户配置文件 -使用 [`ticloud config use`](/tidb-cloud/ticloud-config-use.md) 切换到另一个用户配置文件。 +使用 [`ticloud config use`](/tidb-cloud/ticloud-config-use.md) 切换到其他用户配置文件。 示例输出如下: @@ -114,16 +115,16 @@ Current profile has been changed to default 使用 [`ticloud config delete`](/tidb-cloud/ticloud-config-delete.md) 删除用户配置文件。 -## 全局标志 +## 全局参数 -下表列出了 TiDB Cloud CLI 的全局标志。 +下表列出了 TiDB Cloud CLI 的全局参数。 -| 标志 | 描述 | 是否必需 | 注意 | +| Flag | Description | Required | Note | |----------------------|---------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令中使用的活动用户配置文件。 | 否 | 在非交互和交互模式下都有效。 | -| -D, --debug | 启用调试模式 | 否 | 在非交互和交互模式下都有效。 | +| --no-color | 禁用输出中的颜色。 | No | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定本次命令使用的激活用户配置文件。 | No | 适用于非交互和交互模式。 | +| -D, --debug | 启用调试模式 | No | 适用于非交互和交互模式。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建[议题](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎在 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose) 页面提交。同时也欢迎任何贡献。 \ No newline at end of file diff --git a/tidb-cloud/configure-ip-access-list.md b/tidb-cloud/configure-ip-access-list.md index 658cced0309e2..86878275e2d6c 100644 --- a/tidb-cloud/configure-ip-access-list.md +++ b/tidb-cloud/configure-ip-access-list.md @@ -1,30 +1,30 @@ --- title: 配置 IP 访问列表 -summary: 了解如何配置允许访问 TiDB Cloud Dedicated 集群的 IP 地址。 +summary: 了解如何配置允许访问你的 TiDB Cloud Dedicated 集群的 IP 地址。 --- # 配置 IP 访问列表 -对于 TiDB Cloud 中的每个 TiDB Cloud Dedicated 集群,你可以配置 IP 访问列表来过滤尝试访问集群的互联网流量,其工作方式类似于防火墙访问控制列表。配置完成后,只有 IP 地址在 IP 访问列表中的客户端和应用程序才能连接到你的 TiDB Cloud Dedicated 集群。 +对于 TiDB Cloud 中的每个 TiDB Cloud Dedicated 集群,你可以配置 IP 访问列表来过滤试图访问集群的互联网流量,其工作方式类似于防火墙访问控制列表。配置完成后,只有 IP 地址在 IP 访问列表中的客户端和应用程序才能连接到你的 TiDB Cloud Dedicated 集群。 > **注意:** > -> 本文适用于 [**TiDB Cloud Dedicated**](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated)。有关配置 **TiDB Cloud Serverless** IP 访问列表的说明,请参见[为公共端点配置 TiDB Cloud Serverless 防火墙规则](/tidb-cloud/configure-serverless-firewall-rules-for-public-endpoints.md)。 +> 本文档适用于 [**TiDB Cloud Dedicated**](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated)。如果你需要为 **TiDB Cloud Serverless** 配置 IP 访问列表,请参见 [Configure TiDB Cloud Serverless Firewall Rules for Public Endpoints](/tidb-cloud/configure-serverless-firewall-rules-for-public-endpoints.md)。 -要为 TiDB Cloud Dedicated 集群配置 IP 访问列表,请执行以下步骤: +要为你的 TiDB Cloud Dedicated 集群配置 IP 访问列表,请按照以下步骤操作: -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称以进入其概览页面。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群的名称,进入其概览页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 -2. 在左侧导航栏中,点击**设置** > **网络**。 -3. 在**网络**页面上,点击**添加 IP 地址**。 -4. 在显示的对话框中,选择以下选项之一: +2. 在左侧导航栏,点击 **Settings** > **Networking**。 +3. 在 **Networking** 页面,点击 **Add IP Address**。 +4. 在弹出的对话框中,选择以下选项之一: - - **允许来自任何地方的访问**:允许所有 IP 地址访问 TiDB Cloud。此选项将你的集群完全暴露在互联网上,风险很高。 - - **使用 IP 地址**(推荐):你可以添加允许通过 SQL 客户端访问 TiDB Cloud 的 IP 和 CIDR 地址列表。 + - **Allow access from anywhere**:允许所有 IP 地址访问 TiDB Cloud。此选项会将你的集群完全暴露在互联网中,风险极高。 + - **Use IP addresses**(推荐):你可以添加允许通过 SQL 客户端访问 TiDB Cloud 的 IP 列表和 CIDR 地址。 -5. 如果你选择**使用 IP 地址**,请添加 IP 地址或 CIDR 范围,并可选择添加描述。对于每个 TiDB Cloud Dedicated 集群,你最多可以添加 100 个 IP 地址。 -6. 点击**确认**以保存更改。 +5. 如果你选择 **Use IP addresses**,请添加 IP 地址或 CIDR 范围,并可选填写描述。每个 TiDB Cloud Dedicated 集群最多可添加 100 个 IP 地址。 +6. 点击 **Confirm** 保存更改。 \ No newline at end of file diff --git a/tidb-cloud/configure-security-settings.md b/tidb-cloud/configure-security-settings.md index 0d3035f2e13eb..06e783f48719a 100644 --- a/tidb-cloud/configure-security-settings.md +++ b/tidb-cloud/configure-security-settings.md @@ -1,27 +1,27 @@ --- title: 配置集群密码设置 -summary: 了解如何配置连接到集群的 root 密码。 +summary: 了解如何配置 root 密码以连接到你的集群。 --- # 配置集群密码设置 -对于 TiDB Cloud Dedicated 集群,你可以配置 root 密码和允许的 IP 地址来连接到你的集群。 +对于 TiDB Cloud 专属集群,你可以配置 root 密码以及允许连接到你集群的 IP 地址。 > **注意:** > -> 对于 TiDB Cloud Serverless 集群,本文档不适用,你可以参考 [TiDB Cloud Serverless 的 TLS 连接](/tidb-cloud/secure-connections-to-serverless-clusters.md)。 +> 对于 TiDB Cloud Serverless 集群,本篇文档不适用,你可以参考 [TLS Connection to TiDB Cloud Serverless](/tidb-cloud/secure-connections-to-serverless-clusters.md)。 -1. 在 TiDB Cloud 控制台中,导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 +1. 在 TiDB Cloud 控制台中,进入你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 -2. 在目标集群所在行,点击 **...** 并选择**密码设置**。 -3. 设置连接到集群的 root 密码,然后点击**保存**。 +2. 在目标集群所在的行,点击 **...** 并选择 **Password Settings**。 +3. 设置连接到你集群的 root 密码,然后点击 **Save**。 - 你可以点击**自动生成密码**生成随机密码。生成的密码不会再次显示,因此请将密码保存在安全的位置。 + 你可以点击 **Auto-generate Password** 自动生成一个随机密码。生成的密码不会再次显示,请将你的密码保存在安全的位置。 > **提示:** > -> 如果你正在查看集群的概览页面,也可以点击页面右上角的 **...**,选择**密码设置**,并配置这些设置。 +> 如果你正在查看集群的概览页面,也可以点击页面右上角的 **...**,选择 **Password Settings**,并进行相关设置。 \ No newline at end of file diff --git a/tidb-cloud/configure-serverless-firewall-rules-for-public-endpoints.md b/tidb-cloud/configure-serverless-firewall-rules-for-public-endpoints.md index 9da5f00b59e67..02aa85cb488b7 100644 --- a/tidb-cloud/configure-serverless-firewall-rules-for-public-endpoints.md +++ b/tidb-cloud/configure-serverless-firewall-rules-for-public-endpoints.md @@ -1,58 +1,58 @@ --- -title: 为 TiDB Cloud Serverless 公共端点配置防火墙规则 -summary: 了解如何安全地配置和管理 TiDB Cloud Serverless 集群的公共访问防火墙规则。 +title: 配置 TiDB Cloud Serverless 公共端点的防火墙规则 +summary: 了解如何安全地为 TiDB Cloud Serverless 集群配置和管理具有公共访问权限的防火墙规则。 --- -# 为 TiDB Cloud Serverless 公共端点配置防火墙规则 +# 配置 TiDB Cloud Serverless 公共端点的防火墙规则 -本文档介绍 TiDB Cloud Serverless 的公共连接选项。你将了解通过互联网安全管理 TiDB Cloud Serverless 集群访问的关键概念。 +本文档介绍了 TiDB Cloud Serverless 的公共连接选项。你将学习如何安全地管理可通过互联网访问的 TiDB Cloud Serverless 集群的关键概念。 -> **注意:** +> **Note:** > -> 本文档适用于 **TiDB Cloud Serverless**。有关配置 **TiDB Cloud Dedicated** IP 访问列表的说明,请参阅[为 TiDB Cloud Dedicated 配置 IP 访问列表](/tidb-cloud/configure-ip-access-list.md)。 +> 本文档适用于 **TiDB Cloud Serverless**。关于为 **TiDB Cloud Dedicated** 配置 IP 访问列表的说明,请参见 [Configure an IP Access List for TiDB Cloud Dedicated](/tidb-cloud/configure-ip-access-list.md)。 ## 公共端点 -在 TiDB Cloud Serverless 集群上配置公共访问允许通过公共端点访问集群。也就是说,可以通过互联网访问集群。公共端点是一个可公开解析的 DNS 地址。"授权网络"是指你选择允许访问集群的 IP 地址范围。这些权限通过**防火墙规则**强制执行。 +在 TiDB Cloud Serverless 集群上配置公共访问后,集群可以通过公共端点进行访问。也就是说,集群可以通过互联网访问。公共端点是一个可公开解析的 DNS 地址。术语 “authorized network” 指的是你选择允许访问集群的一组 IP 地址范围。这些权限通过 **firewall rules** 强制执行。 -### 公共访问的特点 +### 公共访问的特性 -- 只有指定的 IP 地址可以访问 TiDB Cloud Serverless。 - - 默认情况下,允许所有 IP 地址(`0.0.0.0 - 255.255.255.255`)。 - - 你可以在集群创建后更新允许的 IP 地址。 -- 你的集群有一个可公开解析的 DNS 名称。 -- 进出集群的网络流量通过**公共互联网**而不是私有网络路由。 +- 只有指定的 IP 地址可以访问 TiDB Cloud Serverless。 + - 默认情况下,允许所有 IP 地址(`0.0.0.0 - 255.255.255.255`)访问。 + - 你可以在集群创建后更新允许的 IP 地址。 +- 你的集群拥有一个可公开解析的 DNS 名称。 +- 进出你集群的网络流量通过 **public internet**(公共互联网)路由,而不是私有网络。 ### 防火墙规则 -通过**防火墙规则**授予对 IP 地址的访问权限。如果连接尝试来自未经批准的 IP 地址,客户端将收到错误。 +通过 **firewall rules** 授权 IP 地址访问。如果连接尝试来自未被批准的 IP 地址,客户端将收到错误提示。 你最多可以创建 200 条 IP 防火墙规则。 ### 允许 AWS 访问 -你可以通过参考官方 [AWS IP 地址列表](https://docs.aws.amazon.com/vpc/latest/userguide/aws-ip-ranges.html)启用来自**所有 AWS IP 地址**的访问。 +你可以通过参考官方 [AWS IP address list](https://docs.aws.amazon.com/vpc/latest/userguide/aws-ip-ranges.html) 启用来自 **所有 AWS IP 地址** 的访问。 -TiDB Cloud 定期更新此列表,并使用保留的 IP 地址 **169.254.65.87** 代表所有 AWS IP 地址。 +TiDB Cloud 会定期更新此列表,并使用保留 IP 地址 **169.254.65.87** 代表所有 AWS IP 地址。 ## 创建和管理防火墙规则 -本节介绍如何管理 TiDB Cloud Serverless 集群的防火墙规则。使用公共端点时,对 TiDB Cloud Serverless 集群的连接仅限于防火墙规则中指定的 IP 地址。 +本节介绍如何为 TiDB Cloud Serverless 集群管理防火墙规则。启用公共端点后,对 TiDB Cloud Serverless 集群的连接将被限制为防火墙规则中指定的 IP 地址。 -要向 TiDB Cloud Serverless 集群添加防火墙规则,请执行以下步骤: +要为 TiDB Cloud Serverless 集群添加防火墙规则,请按照以下步骤操作: -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称以进入其概览页面。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群的名称,进入其概览页面。 -2. 在左侧导航栏中,点击**设置** > **网络**。 +2. 在左侧导航栏,点击 **Settings** > **Networking**。 -3. 在**网络**页面上,如果**公共端点**已禁用,请启用它。在**授权网络**中,点击**+ 添加当前 IP**。这将自动创建一条包含你的计算机公共 IP 地址(由 TiDB Cloud 感知)的防火墙规则。 +3. 在 **Networking** 页面,如果 **Public Endpoint** 处于禁用状态,请先启用。在 **Authorized Networks** 中,点击 **+ Add Current IP**。这会自动使用 TiDB Cloud 识别到的你电脑的公网 IP 地址创建一条防火墙规则。 - > **注意:** + > **Note:** > - > 在某些情况下,TiDB Cloud 控制台观察到的 IP 地址与访问互联网时使用的 IP 地址不同。因此,你可能需要更改起始和结束 IP 地址,以使规则按预期运行。你可以使用搜索引擎或其他在线工具检查自己的 IP 地址。例如,搜索"我的 IP 是什么"。 + > 在某些情况下,TiDB Cloud 控制台检测到的 IP 地址与你实际访问互联网时使用的 IP 地址不同。因此,你可能需要更改起始和结束 IP 地址,以使规则按预期生效。你可以使用搜索引擎或其他在线工具查询自己的 IP 地址。例如,搜索 “what is my IP”。 -4. 点击**添加规则**以添加更多地址范围。在显示的窗口中,你可以指定单个 IP 地址或 IP 地址范围。如果要将规则限制为单个 IP 地址,请在**起始 IP 地址**和**结束 IP 地址**字段中输入相同的 IP 地址。打开防火墙后,管理员、用户和应用程序可以访问你的 TiDB Cloud Serverless 集群上拥有有效凭据的任何数据库。点击**提交**以添加防火墙规则。 +4. 点击 **Add rule** 以添加更多地址范围。在弹出的窗口中,你可以指定单个 IP 地址或一段 IP 地址范围。如果你只想限制为单个 IP 地址,请在 **Start IP Address** 和 **End IP Address** 字段中输入相同的 IP 地址。开启防火墙后,管理员、用户和应用程序可以使用有效凭证访问你 TiDB Cloud Serverless 集群上的任意数据库。点击 **Submit** 添加防火墙规则。 -## 下一步 +## 后续操作 -- [通过公共端点连接到 TiDB Cloud Serverless](/tidb-cloud/connect-via-standard-connection-serverless.md) +- [通过公共端点连接 TiDB Cloud Serverless](/tidb-cloud/connect-via-standard-connection-serverless.md) \ No newline at end of file diff --git a/tidb-cloud/connect-to-tidb-cluster-serverless.md b/tidb-cloud/connect-to-tidb-cluster-serverless.md index fee74aa89a4bd..3c1d17616fd36 100644 --- a/tidb-cloud/connect-to-tidb-cluster-serverless.md +++ b/tidb-cloud/connect-to-tidb-cluster-serverless.md @@ -1,62 +1,62 @@ --- -title: 连接到 TiDB Cloud Serverless 集群 -summary: 了解如何通过不同方法连接到 TiDB Cloud Serverless 集群。 +title: 连接到你的 TiDB Cloud Serverless 集群 +summary: 了解如何通过不同方式连接到你的 TiDB Cloud Serverless 集群。 --- -# 连接到 TiDB Cloud Serverless 集群 +# 连接到你的 TiDB Cloud Serverless 集群 -本文档介绍如何连接到 TiDB Cloud Serverless 集群。 +本文档介绍如何连接到你的 TiDB Cloud Serverless 集群。 -> **提示:** +> **Tip:** > -> 如需了解如何连接到 TiDB Cloud Dedicated 集群,请参阅[连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/connect-to-tidb-cluster.md)。 +> 如果你想了解如何连接到 TiDB Cloud Dedicated 集群,请参见 [Connect to Your TiDB Cloud Dedicated Cluster](/tidb-cloud/connect-to-tidb-cluster.md)。 -## 连接方法 +## 连接方式 -在 TiDB Cloud 上创建 Serverless 集群后,你可以通过以下方法之一连接到集群: +在 TiDB Cloud 上创建好你的 TiDB Cloud Serverless 集群后,你可以通过以下任一方式进行连接: -- 直接连接 +- 直连 - 直接连接是指通过 TCP 的 MySQL 原生连接系统。你可以使用任何支持 MySQL 连接的工具(如 [MySQL 客户端](https://dev.mysql.com/doc/refman/8.0/en/mysql.html))连接到 TiDB Cloud Serverless 集群。 + 直连指的是通过 TCP 的 MySQL 原生连接系统。你可以使用任何支持 MySQL 连接的工具连接到你的 TiDB Cloud Serverless 集群,例如 [MySQL client](https://dev.mysql.com/doc/refman/8.0/en/mysql.html)。 -- [数据服务(测试版)](/tidb-cloud/data-service-overview.md) +- [Data Service (beta)](/tidb-cloud/data-service-overview.md) - TiDB Cloud 提供数据服务功能,使你能够通过自定义 API 端点使用 HTTPS 请求连接到 TiDB Cloud Serverless 集群。与直接连接不同,数据服务通过 RESTful API 而不是原始 SQL 访问 TiDB Cloud Serverless 数据。 + TiDB Cloud 提供了 Data Service 功能,使你可以通过自定义 API 端点的 HTTPS 请求连接到你的 TiDB Cloud Serverless 集群。与直连不同,Data Service 通过 RESTful API 访问 TiDB Cloud Serverless 的数据,而不是原生 SQL。 -- [Serverless 驱动(测试版)](/tidb-cloud/serverless-driver.md) +- [Serverless Driver (beta)](/tidb-cloud/serverless-driver.md) - TiDB Cloud 为 JavaScript 提供 Serverless 驱动,使你能够在边缘环境中以与直接连接相同的体验连接到 TiDB Cloud Serverless 集群。 + TiDB Cloud 为 JavaScript 提供了 serverless driver,允许你在边缘环境中以与直连相同的体验连接到 TiDB Cloud Serverless 集群。 -在上述连接方法中,你可以根据需求选择合适的方法: +在上述连接方式中,你可以根据需求选择合适的方式: -| 连接方法 | 用户界面 | 使用场景 | -|-------------------|------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------| -| 直接连接 | SQL/ORM | 长期运行的环境,如 Java、Node.js 和 Python。 | -| 数据服务 | RESTful API | 所有浏览器和应用程序交互。 | -| Serverless 驱动 | SQL/ORM | Serverless 和边缘环境,如 [Vercel Edge Functions](https://vercel.com/docs/functions/edge-functions) 和 [Cloudflare Workers](https://workers.cloudflare.com/)。 | +| 连接方式 | 用户界面 | 场景 | +|--------------------|------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------| +| 直连 | SQL/ORM | 长时间运行的环境,如 Java、Node.js 和 Python。 | +| Data Service | RESTful API | 所有浏览器和应用交互。 | +| Serverless Driver | SQL/ORM | Serverless 和边缘环境,如 [Vercel Edge Functions](https://vercel.com/docs/functions/edge-functions) 和 [Cloudflare Workers](https://workers.cloudflare.com/)。 | ## 网络 -TiDB Cloud Serverless 有两种网络连接类型: +TiDB Cloud Serverless 支持两种网络连接类型: - [私有端点](/tidb-cloud/set-up-private-endpoint-connections-serverless.md)(推荐) - 私有端点连接提供一个私有端点,允许你 VPC 中的 SQL 客户端通过 AWS PrivateLink 安全地访问服务。AWS PrivateLink 提供高度安全的单向访问数据库服务,并简化了网络管理。 + 私有端点连接为你的 VPC 中的 SQL 客户端提供一个私有端点,通过 AWS PrivateLink 安全访问服务,具备高度安全性和单向访问数据库服务的能力,并简化网络管理。 -- [公共端点](/tidb-cloud/connect-via-standard-connection-serverless.md) +- [公网端点](/tidb-cloud/connect-via-standard-connection-serverless.md) - 标准连接暴露一个公共端点,因此你可以从笔记本电脑通过 SQL 客户端连接到 TiDB 集群。 + 标准连接会暴露一个公网端点,因此你可以通过笔记本上的 SQL 客户端连接到你的 TiDB 集群。 - TiDB Cloud Serverless 要求使用 [TLS 连接](/tidb-cloud/secure-connections-to-serverless-clusters.md),这确保了从应用程序到 TiDB 集群的数据传输安全。 + TiDB Cloud Serverless 要求 [TLS 连接](/tidb-cloud/secure-connections-to-serverless-clusters.md),以确保从你的应用到 TiDB 集群的数据传输安全。 -下表显示了不同连接方法可以使用的网络: +下表展示了不同连接方式可用的网络类型: -| 连接方法 | 网络 | 说明 | -|--------------------------|----------------------------|----------------------------------------------------------------------------------------------------------| -| 直接连接 | 公共或私有端点 | 直接连接可以通过公共和私有端点进行。 | -| 数据服务(测试版) | / | 通过数据服务(测试版)访问 TiDB Cloud Serverless 不需要指定网络类型。 | -| Serverless 驱动(测试版) | 公共端点 | Serverless 驱动仅支持通过公共端点连接。 | +| 连接方式 | 网络类型 | 说明 | +|---------------------------|-----------------------------|------------------------------------------------------------------------------------------------------------| +| 直连 | 公网或私有端点 | 直连可以通过公网或私有端点进行。 | +| Data Service (beta) | / | 通过 Data Service (beta) 访问 TiDB Cloud Serverless 无需指定网络类型。 | +| Serverless Driver (beta) | 公网端点 | Serverless Driver 仅支持通过公网端点连接。 | -## 下一步 +## 后续操作 -成功连接到 TiDB 集群后,你可以[使用 TiDB 探索 SQL 语句](/basic-sql-operations.md)。 +成功连接到你的 TiDB 集群后,你可以 [使用 TiDB 探索 SQL 语句](/basic-sql-operations.md)。 \ No newline at end of file diff --git a/tidb-cloud/connect-to-tidb-cluster.md b/tidb-cloud/connect-to-tidb-cluster.md index eecb510b03775..9f8a74ee80871 100644 --- a/tidb-cloud/connect-to-tidb-cluster.md +++ b/tidb-cloud/connect-to-tidb-cluster.md @@ -1,50 +1,50 @@ --- title: 连接到你的 TiDB Cloud Dedicated 集群 -summary: 了解如何通过不同方法连接到你的 TiDB Cloud Dedicated 集群。 +summary: 了解如何通过不同方式连接到你的 TiDB Cloud Dedicated 集群。 --- # 连接到你的 TiDB Cloud Dedicated 集群 -本文档介绍连接到你的 TiDB Cloud Dedicated 集群的方法。 +本文介绍了连接到你的 TiDB Cloud Dedicated 集群的方法。 -> **提示:** +> **Tip:** > -> 要了解如何连接到 TiDB Cloud Serverless 集群,请参见[连接到你的 TiDB Cloud Serverless 集群](/tidb-cloud/connect-to-tidb-cluster-serverless.md)。 +> 如果你想了解如何连接到 TiDB Cloud Serverless 集群,请参见 [Connect to Your TiDB Cloud Serverless Cluster](/tidb-cloud/connect-to-tidb-cluster-serverless.md)。 -在 TiDB Cloud 上创建 TiDB Cloud Dedicated 集群后,你可以通过以下方法之一连接到它: +在 TiDB Cloud 上创建 TiDB Cloud Dedicated 集群后,你可以通过以下任一方式进行连接: -- 直接连接 +- 直连 - 直接连接使用基于 TCP 的 MySQL 原生连接系统。你可以使用任何支持 MySQL 连接的工具连接到你的 TiDB Cloud Dedicated 集群,例如 [MySQL 命令行客户端](https://dev.mysql.com/doc/refman/8.0/en/mysql.html)。TiDB Cloud 还提供 [SQL Shell](/tidb-cloud/connect-via-sql-shell.md),使你能够尝试 TiDB SQL,快速测试 TiDB 与 MySQL 的兼容性,并管理用户权限。 + 直连使用 MySQL 原生的基于 TCP 的连接系统。你可以使用任何支持 MySQL 连接的工具连接到你的 TiDB Cloud Dedicated 集群,例如 [MySQL Command-Line Client](https://dev.mysql.com/doc/refman/8.0/en/mysql.html)。TiDB Cloud 还提供了 [SQL Shell](/tidb-cloud/connect-via-sql-shell.md),你可以用它快速体验 TiDB SQL、测试 TiDB 对 MySQL 的兼容性,并管理用户权限。 TiDB Cloud Dedicated 提供三种网络连接类型: - - [公共连接](/tidb-cloud/connect-via-standard-connection.md) + - [公网连接](/tidb-cloud/connect-via-standard-connection.md) - 公共连接暴露一个带有流量过滤器的公共端点,因此你可以通过笔记本电脑上的 SQL 客户端连接到你的 TiDB 集群。你可以使用 TLS 连接到你的 TiDB 集群,这确保了从你的应用程序到 TiDB 集群的数据传输安全。更多信息,请参见[通过公共连接连接到 TiDB Cloud Dedicated](/tidb-cloud/connect-via-standard-connection.md)。 + 公网连接通过流量过滤器暴露一个公网连接端点,因此你可以通过 SQL 客户端从你的本地电脑连接到 TiDB 集群。你可以使用 TLS 连接到 TiDB 集群,确保应用到 TiDB 集群间数据传输的安全性。更多信息请参见 [Connect to TiDB Cloud Dedicated via Public Connection](/tidb-cloud/connect-via-standard-connection.md)。 - 私有端点(推荐) - 私有端点连接提供一个私有端点,允许你 VPC 中的 SQL 客户端安全地访问 TiDB Cloud Dedicated 集群。这使用不同云服务提供商提供的私有链接服务,通过简化的网络管理提供高度安全的单向数据库服务访问。 + 私有端点连接为你的 VPC 内的 SQL 客户端提供一个私有端点,以安全地访问 TiDB Cloud Dedicated 集群。该方式使用不同云服务商提供的 Private Link 服务,能够以更高的安全性和更简化的网络管理方式实现对数据库服务的单向访问。 - - 对于托管在 AWS 上的 TiDB Cloud Dedicated 集群,私有端点连接使用 AWS PrivateLink。更多信息,请参见[通过 AWS PrivateLink 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections.md)。 - - 对于托管在 Azure 上的 TiDB Cloud Dedicated 集群,私有端点连接使用 Azure Private Link。更多信息,请参见[通过 Azure Private Link 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections-on-azure.md)。 - - 对于托管在 Google Cloud 上的 TiDB Cloud Dedicated 集群,私有端点连接使用 Google Cloud Private Service Connect。更多信息,请参见[通过 Google Cloud Private Service Connect 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md)。 + - 对于托管在 AWS 上的 TiDB Cloud Dedicated 集群,私有端点连接使用 AWS PrivateLink。更多信息请参见 [Connect to a TiDB Cloud Dedicated Cluster via AWS PrivateLink](/tidb-cloud/set-up-private-endpoint-connections.md)。 + - 对于托管在 Azure 上的 TiDB Cloud Dedicated 集群,私有端点连接使用 Azure Private Link。更多信息请参见 [Connect to a TiDB Cloud Dedicated Cluster via Azure Private Link](/tidb-cloud/set-up-private-endpoint-connections-on-azure.md)。 + - 对于托管在 Google Cloud 上的 TiDB Cloud Dedicated 集群,私有端点连接使用 Google Cloud Private Service Connect。更多信息请参见 [Connect to a TiDB Cloud Dedicated Cluster via Google Cloud Private Service Connect](/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md)。 - - [VPC 对等连接](/tidb-cloud/set-up-vpc-peering-connections.md) + - [VPC Peering](/tidb-cloud/set-up-vpc-peering-connections.md) - 如果你想要更低的延迟和更高的安全性,请设置 VPC 对等连接,并通过你云账户中相应云服务提供商的虚拟机实例使用私有端点进行连接。更多信息,请参见[通过 VPC 对等连接连接到 TiDB Cloud Dedicated](/tidb-cloud/set-up-vpc-peering-connections.md)。 + 如果你需要更低的延迟和更高的安全性,可以在你的云账号中通过相应云服务商的 VM 实例设置 VPC Peering,并通过私有端点进行连接。更多信息请参见 [Connect to TiDB Cloud Dedicated via VPC Peering](/tidb-cloud/set-up-vpc-peering-connections.md)。 - [内置 SQL 编辑器](/tidb-cloud/explore-data-with-chat2query.md) - > **注意:** + > **Note:** > - > 要在 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群上使用 SQL 编辑器,请联系 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 + > 如需在 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群上使用 SQL 编辑器,请联系 [TiDB Cloud support](/tidb-cloud/tidb-cloud-support.md)。 - 如果你的集群托管在 AWS 上,且集群的 TiDB 版本是 v6.5.0 或更高版本,你可以在 [TiDB Cloud 控制台](https://tidbcloud.com/)中使用 AI 辅助的 SQL 编辑器来最大化你的数据价值。 + 如果你的集群托管在 AWS 且 TiDB 版本为 v6.5.0 或更高,你可以在 [TiDB Cloud 控制台](https://tidbcloud.com/)中使用 AI 辅助的 SQL 编辑器,最大化你的数据价值。 - 在 SQL 编辑器中,你可以手动编写 SQL 查询,或者在 macOS 上简单地按 + I(在 Windows 或 Linux 上按 Control + I)来指示 [Chat2Query (beta)](/tidb-cloud/tidb-cloud-glossary.md#chat2query) 自动生成 SQL 查询。这使你无需本地 SQL 客户端即可对数据库运行 SQL 查询。你可以直观地以表格或图表形式查看查询结果,并轻松检查查询日志。 + 在 SQL 编辑器中,你可以手动编写 SQL 查询,或直接在 macOS 上按 + I(Windows 或 Linux 上为 Control + I),让 [Chat2Query (beta)](/tidb-cloud/tidb-cloud-glossary.md#chat2query) 自动生成 SQL 查询。这样你无需本地 SQL 客户端即可对数据库运行 SQL 查询,并可以以表格或图表的形式直观查看查询结果,轻松检查查询日志。 -## 下一步 +## 后续操作 -成功连接到你的 TiDB 集群后,你可以[使用 TiDB 探索 SQL 语句](/basic-sql-operations.md)。 +成功连接到 TiDB 集群后,你可以 [使用 TiDB 探索 SQL 语句](/basic-sql-operations.md)。 \ No newline at end of file diff --git a/tidb-cloud/connect-via-sql-shell.md b/tidb-cloud/connect-via-sql-shell.md index 86d301e5d9e97..643f2b748db70 100644 --- a/tidb-cloud/connect-via-sql-shell.md +++ b/tidb-cloud/connect-via-sql-shell.md @@ -5,20 +5,20 @@ summary: 了解如何通过 SQL Shell 连接到你的 TiDB 集群。 # 通过 SQL Shell 连接 -在 TiDB Cloud SQL Shell 中,你可以尝试 TiDB SQL,快速测试 TiDB 与 MySQL 的兼容性,并管理数据库用户权限。 +在 TiDB Cloud SQL Shell 中,你可以尝试 TiDB SQL,快速测试 TiDB 对 MySQL 的兼容性,并管理数据库用户权限。 > **注意:** > -> 你不能使用 SQL Shell 连接到 [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless)。要连接到你的 TiDB Cloud Serverless 集群,请参见[连接到 TiDB Cloud Serverless 集群](/tidb-cloud/connect-to-tidb-cluster-serverless.md)。 +> 你无法使用 SQL Shell 连接到 [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless)。要连接到你的 TiDB Cloud Serverless 集群,请参阅 [连接到 TiDB Cloud Serverless 集群](/tidb-cloud/connect-to-tidb-cluster-serverless.md)。 -要使用 SQL shell 连接到你的 TiDB 集群,请执行以下步骤: +要使用 SQL shell 连接到你的 TiDB 集群,请按照以下步骤操作: -1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 +1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),并导航到你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 -2. 点击目标集群的名称进入其集群概览页面,然后在左侧导航栏中点击**设置** > **网络**。 -3. 在**网络**页面上,点击右上角的 **Web SQL Shell**。 -4. 在提示的**输入密码**行中,输入当前集群的 root 密码。然后你的应用程序就连接到了 TiDB 集群。 +2. 点击目标集群的名称,进入该集群的概览页面,然后点击左侧导航栏中的 **Settings** > **Networking**。 +3. 在 **Networking** 页面,点击右上角的 **Web SQL Shell**。 +4. 在弹出的 **Enter password** 行中,输入当前集群的 root 密码。然后你的应用就会连接到 TiDB 集群。 \ No newline at end of file diff --git a/tidb-cloud/connect-via-standard-connection-serverless.md b/tidb-cloud/connect-via-standard-connection-serverless.md index 69171f7da3829..873447cda694e 100644 --- a/tidb-cloud/connect-via-standard-connection-serverless.md +++ b/tidb-cloud/connect-via-standard-connection-serverless.md @@ -1,68 +1,68 @@ --- -title: 通过公共端点连接到 TiDB Cloud Serverless -summary: 了解如何通过公共端点连接到你的 TiDB Cloud Serverless 集群。 +title: 通过 Public Endpoint 连接 TiDB Cloud Serverless +summary: 了解如何通过 public endpoint 连接到你的 TiDB Cloud Serverless 集群。 --- -# 通过公共端点连接到 TiDB Cloud Serverless +# 通过 Public Endpoint 连接 TiDB Cloud Serverless -本文介绍如何通过公共端点从你的计算机使用 SQL 客户端连接到 TiDB Cloud Serverless 集群,以及如何禁用公共端点。 +本文介绍如何通过 public endpoint,使用你电脑上的 SQL 客户端连接到 TiDB Cloud Serverless 集群,以及如何禁用 public endpoint。 -## 通过公共端点连接 +## 通过 public endpoint 连接 -> **提示:** +> **Tip:** > -> 要了解如何通过公共端点连接到 TiDB Cloud Dedicated 集群,请参见[通过公共连接连接到 TiDB Cloud Dedicated](/tidb-cloud/connect-via-standard-connection.md)。 +> 如需了解如何通过 public endpoint 连接到 TiDB Cloud Dedicated 集群,请参见 [Connect to TiDB Cloud Dedicated via Public Connection](/tidb-cloud/connect-via-standard-connection.md)。 -要通过公共端点连接到 TiDB Cloud Serverless 集群,请执行以下步骤: +要通过 public endpoint 连接到 TiDB Cloud Serverless 集群,请按照以下步骤操作: -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群的名称,进入其概览页面。 -2. 点击右上角的**连接**。将显示连接对话框。 +2. 点击右上角的 **Connect**。此时会弹出连接对话框。 -3. 在对话框中,保持连接类型的默认设置为 `Public`,并选择你首选的连接方法和操作系统以获取相应的连接字符串。 +3. 在对话框中,保持连接类型的默认设置为 `Public`,并选择你偏好的连接方式和操作系统,以获取对应的连接字符串。 - > **注意:** + > **Note:** > - > - 将连接类型保持为 `Public` 意味着通过标准 TLS 连接进行连接。更多信息,请参见[到 TiDB Cloud Serverless 的 TLS 连接](/tidb-cloud/secure-connections-to-serverless-clusters.md)。 - > - 如果你在**连接类型**下拉列表中选择**私有端点**,则表示通过私有端点进行连接。更多信息,请参见[通过私有端点连接到 TiDB Cloud Serverless](/tidb-cloud/set-up-private-endpoint-connections-serverless.md)。 + > - 保持连接类型为 `Public`,表示通过标准 TLS 连接进行连接。更多信息,请参见 [TLS Connection to TiDB Cloud Serverless](/tidb-cloud/secure-connections-to-serverless-clusters.md)。 + > - 如果你在 **Connection Type** 下拉列表中选择 **Private Endpoint**,则表示通过私有 endpoint 进行连接。更多信息,请参见 [Connect to TiDB Cloud Serverless via Private Endpoint](/tidb-cloud/set-up-private-endpoint-connections-serverless.md)。 -4. TiDB Cloud Serverless 允许你为集群创建[分支](/tidb-cloud/branch-overview.md)。创建分支后,你可以通过**分支**下拉列表选择连接到该分支。`main` 代表集群本身。 +4. TiDB Cloud Serverless 支持为你的集群创建 [branches](/tidb-cloud/branch-overview.md)。创建 branch 后,你可以通过 **Branch** 下拉列表选择连接到指定 branch。`main` 代表集群本身。 -5. 如果你还没有设置密码,点击**生成密码**生成随机密码。生成的密码不会再次显示,因此请将密码保存在安全的位置。 +5. 如果你还没有设置密码,点击 **Generate Password** 生成一个随机密码。生成的密码只会显示一次,请妥善保存。 6. 使用连接字符串连接到你的集群。 - > **注意:** + > **Note:** > - > 当你连接到 TiDB Cloud Serverless 集群时,必须在用户名中包含集群的前缀,并用引号将名称括起来。更多信息,请参见[用户名前缀](/tidb-cloud/select-cluster-tier.md#用户名前缀)。 - > 你的客户端 IP 必须在集群公共端点的允许 IP 规则中。更多信息,请参见[为公共端点配置 TiDB Cloud Serverless 防火墙规则](/tidb-cloud/configure-serverless-firewall-rules-for-public-endpoints.md)。 + > 连接到 TiDB Cloud Serverless 集群时,必须在用户名中包含集群的前缀,并用引号包裹用户名。更多信息,请参见 [User name prefix](/tidb-cloud/select-cluster-tier.md#user-name-prefix)。 + > 你的客户端 IP 必须在集群 public endpoint 的允许 IP 规则中。更多信息,请参见 [Configure TiDB Cloud Serverless Firewall Rules for Public Endpoints](/tidb-cloud/configure-serverless-firewall-rules-for-public-endpoints.md)。 -## 禁用公共端点 +## 禁用 public endpoint -如果你不需要使用 TiDB Cloud Serverless 集群的公共端点,可以禁用它以防止来自互联网的连接: +如果你不需要使用 TiDB Cloud Serverless 集群的 public endpoint,可以将其禁用,以防止来自互联网的连接: -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群的名称,进入其概览页面。 -2. 在左侧导航栏中,点击**设置** > **网络**。 +2. 在左侧导航栏,点击 **Settings** > **Networking**。 -3. 在**网络**页面上,点击**禁用**。将显示确认对话框。 +3. 在 **Networking** 页面,点击 **Disable**。此时会弹出确认对话框。 -4. 在确认对话框中点击**禁用**。 +4. 在确认对话框中点击 **Disable**。 -禁用公共端点后,连接对话框中**连接类型**下拉列表中的 `Public` 条目将被禁用。如果用户仍然尝试从公共端点访问集群,他们将收到错误。 +禁用 public endpoint 后,连接对话框的 **Connection Type** 下拉列表中的 `Public` 选项会被禁用。如果用户仍尝试通过 public endpoint 访问集群,将会收到错误提示。 -> **注意:** +> **Note:** > -> 禁用公共端点不会影响现有连接。它只会阻止来自互联网的新连接。 +> 禁用 public endpoint 不会影响已有的连接,只会阻止新的互联网连接。 -禁用后,你可以重新启用公共端点: +你可以在禁用后重新启用 public endpoint: -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群的名称,进入其概览页面。 -2. 在左侧导航栏中,点击**设置** > **网络**。 +2. 在左侧导航栏,点击 **Settings** > **Networking**。 -3. 在**网络**页面上,点击**启用**。 +3. 在 **Networking** 页面,点击 **Enable**。 -## 下一步 +## 后续操作 -成功连接到 TiDB 集群后,你可以[使用 TiDB 探索 SQL 语句](/basic-sql-operations.md)。 +成功连接到 TiDB 集群后,你可以 [使用 TiDB 探索 SQL 语句](/basic-sql-operations.md)。 \ No newline at end of file diff --git a/tidb-cloud/connect-via-standard-connection.md b/tidb-cloud/connect-via-standard-connection.md index 641d19ae2bce5..e584350e21c29 100644 --- a/tidb-cloud/connect-via-standard-connection.md +++ b/tidb-cloud/connect-via-standard-connection.md @@ -1,44 +1,44 @@ --- -title: 通过公共连接连接到 TiDB Cloud Dedicated -summary: 了解如何通过公共连接连接到 TiDB Cloud 集群。 +title: 通过公共连接接入 TiDB Cloud Dedicated +summary: 了解如何通过公共连接接入你的 TiDB Cloud 集群。 --- -# 通过公共连接连接到 TiDB Cloud Dedicated +# 通过公共连接接入 TiDB Cloud Dedicated -本文档介绍如何通过公共连接连接到 TiDB Cloud Dedicated 集群。公共连接暴露了一个带有流量过滤器的公共端点,因此你可以通过笔记本电脑上的 SQL 客户端连接到 TiDB Cloud Dedicated 集群。 +本文档介绍如何通过公共连接接入你的 TiDB Cloud Dedicated 集群。公共连接会暴露一个带有流量过滤器的公共端点,因此你可以通过 SQL 客户端从你的笔记本电脑连接到 TiDB Cloud Dedicated 集群。 -> **提示:** +> **Tip:** > -> 要了解如何通过公共连接连接到 TiDB Cloud Serverless 集群,请参阅[通过公共端点连接到 TiDB Cloud Serverless](/tidb-cloud/connect-via-standard-connection-serverless.md)。 +> 如果你想了解如何通过公共连接接入 TiDB Cloud Serverless 集群,请参见 [Connect to TiDB Cloud Serverless via Public Endpoint](/tidb-cloud/connect-via-standard-connection-serverless.md)。 -## 前提条件:配置 IP 访问列表 +## 前置条件:配置 IP 访问列表 -对于公共连接,TiDB Cloud Dedicated 只允许来自 IP 访问列表中地址的客户端连接。如果你尚未配置 IP 访问列表,请在首次连接之前按照[配置 IP 访问列表](/tidb-cloud/configure-ip-access-list.md)中的步骤进行配置。 +对于公共连接,TiDB Cloud Dedicated 只允许来自 IP 访问列表中的地址的客户端连接。如果你还没有配置 IP 访问列表,请按照 [Configure an IP Access List](/tidb-cloud/configure-ip-access-list.md) 中的步骤,在首次连接前进行配置。 ## 连接到集群 -要通过公共连接连接到 TiDB Cloud Dedicated 集群,请执行以下步骤: +要通过公共连接接入 TiDB Cloud Dedicated 集群,请按照以下步骤操作: 1. 打开目标集群的概览页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),并进入你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称以进入其概览页面。 + 2. 点击目标集群的名称,进入其概览页面。 -2. 点击右上角的**连接**。此时会显示一个连接对话框。 +2. 点击右上角的 **Connect**。此时会弹出连接对话框。 -3. 在连接对话框中,从**连接类型**下拉列表中选择**公共**。 +3. 在连接对话框中,从 **Connection Type** 下拉列表中选择 **Public**。 - 如果你尚未配置 IP 访问列表,请点击**配置 IP 访问列表**或按照[配置 IP 访问列表](/tidb-cloud/configure-ip-access-list.md)中的步骤进行配置,然后再进行首次连接。 + 如果你还没有配置 IP 访问列表,请点击 **Configure IP Access List**,或按照 [Configure an IP Access List](/tidb-cloud/configure-ip-access-list.md) 中的步骤,在首次连接前进行配置。 -4. 点击 **CA 证书**下载用于 TLS 连接到 TiDB 集群的 CA 证书。CA 证书默认支持 TLS 1.2 版本。 +4. 点击 **CA cert** 下载用于 TLS 连接 TiDB 集群的 CA 证书。该 CA 证书默认支持 TLS 1.2 版本。 -5. 选择你喜欢的连接方式,然后参考选项卡上的连接字符串和示例代码连接到你的集群。 +5. 选择你偏好的连接方式,然后参考该标签页上的连接字符串和示例代码,连接到你的集群。 -## 下一步 +## 后续操作 -成功连接到 TiDB 集群后,你可以[使用 TiDB 探索 SQL 语句](/basic-sql-operations.md)。 +成功连接到 TiDB 集群后,你可以 [使用 TiDB 探索 SQL 语句](/basic-sql-operations.md)。 \ No newline at end of file diff --git a/tidb-cloud/create-tidb-cluster-serverless.md b/tidb-cloud/create-tidb-cluster-serverless.md index 6845f0ce234bf..bea3751b8dd94 100644 --- a/tidb-cloud/create-tidb-cluster-serverless.md +++ b/tidb-cloud/create-tidb-cluster-serverless.md @@ -1,53 +1,53 @@ --- title: 创建 TiDB Cloud Serverless 集群 -summary: 了解如何创建 TiDB Cloud Serverless 集群。 +summary: 了解如何创建你的 TiDB Cloud Serverless 集群。 --- # 创建 TiDB Cloud Serverless 集群 -本文档介绍如何在 [TiDB Cloud 控制台](https://tidbcloud.com/)中创建 TiDB Cloud Serverless 集群。 +本文档介绍如何在 [TiDB Cloud 控制台](https://tidbcloud.com/) 中创建 TiDB Cloud Serverless 集群。 -> **提示:** +> **Tip:** > -> 要了解如何创建 TiDB Cloud Dedicated 集群,请参见[创建 TiDB Cloud Dedicated 集群](/tidb-cloud/create-tidb-cluster.md)。 +> 如果你想了解如何创建 TiDB Cloud Dedicated 集群,请参见 [Create a TiDB Cloud Dedicated Cluster](/tidb-cloud/create-tidb-cluster.md)。 ## 开始之前 -如果你还没有 TiDB Cloud 账户,请点击[此处](https://tidbcloud.com/signup)注册账户。 +如果你还没有 TiDB Cloud 账号,请点击[这里](https://tidbcloud.com/signup)注册账号。 -- 你可以使用电子邮件和密码注册,这样你就可以使用 TiDB Cloud 管理你的密码,也可以使用你的 Google、GitHub 或 Microsoft 账户注册。 -- 对于 AWS Marketplace 用户,你也可以通过 AWS Marketplace 注册。为此,在 [AWS Marketplace](https://aws.amazon.com/marketplace) 中搜索 `TiDB Cloud`,订阅 TiDB Cloud,然后按照屏幕上的说明设置你的 TiDB Cloud 账户。 -- 对于 Azure Marketplace 用户,你也可以通过 Azure Marketplace 注册。为此,在 [Azure Marketplace](https://azuremarketplace.microsoft.com) 中搜索 `TiDB Cloud`,订阅 TiDB Cloud,然后按照屏幕上的说明设置你的 TiDB Cloud 账户。 -- 对于 Google Cloud Marketplace 用户,你也可以通过 Google Cloud Marketplace 注册。为此,在 [Google Cloud Marketplace](https://console.cloud.google.com/marketplace) 中搜索 `TiDB Cloud`,订阅 TiDB Cloud,然后按照屏幕上的说明设置你的 TiDB Cloud 账户。 +- 你可以使用邮箱和密码注册,这样你可以通过 TiDB Cloud 管理你的密码,或者使用 Google、GitHub 或 Microsoft 账号注册。 +- 对于 AWS Marketplace 用户,你也可以通过 AWS Marketplace 注册。具体操作为,在 [AWS Marketplace](https://aws.amazon.com/marketplace) 中搜索 `TiDB Cloud`,订阅 TiDB Cloud,然后按照屏幕上的指引设置你的 TiDB Cloud 账号。 +- 对于 Azure Marketplace 用户,你也可以通过 Azure Marketplace 注册。具体操作为,在 [Azure Marketplace](https://azuremarketplace.microsoft.com) 中搜索 `TiDB Cloud`,订阅 TiDB Cloud,然后按照屏幕上的指引设置你的 TiDB Cloud 账号。 +- 对于 Google Cloud Marketplace 用户,你也可以通过 Google Cloud Marketplace 注册。具体操作为,在 [Google Cloud Marketplace](https://console.cloud.google.com/marketplace) 中搜索 `TiDB Cloud`,订阅 TiDB Cloud,然后按照屏幕上的指引设置你的 TiDB Cloud 账号。 -## 步骤 +## 操作步骤 -如果你是 `Organization Owner` 或 `Project Owner` 角色,你可以按照以下步骤创建 TiDB Cloud Serverless 集群: +如果你拥有 `Organization Owner` 或 `Project Owner` 角色,可以按照以下步骤创建 TiDB Cloud Serverless 集群: -1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),然后导航到[**集群**](https://tidbcloud.com/project/clusters)页面。 +1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),然后进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 -2. 点击**创建集群**。 +2. 点击 **Create Cluster**。 -3. 在**创建集群**页面上,默认选择 **Serverless**。 +3. 在 **Create Cluster** 页面,**Serverless** 会被默认选中。 -4. TiDB Cloud Serverless 的云服务提供商是 AWS。你可以选择要托管集群的 AWS 区域。 +4. TiDB Cloud Serverless 的云服务商为 AWS。你可以选择希望托管集群的 AWS 区域。 -5. 如有必要,更新默认的集群名称。 +5. 如有需要,可以修改默认的集群名称。 -6. 选择集群方案。TiDB Cloud Serverless 提供两种[集群方案](/tidb-cloud/select-cluster-tier.md#cluster-plans):**免费集群**和**可扩展集群**。你可以从免费集群开始,随着需求增长再升级到可扩展集群。要创建可扩展集群,你需要指定**每月支出限额**并添加信用卡。 +6. 选择集群方案。TiDB Cloud Serverless 提供两种 [集群方案](/tidb-cloud/select-cluster-tier.md#cluster-plans):**Free Cluster** 和 **Scalable Cluster**。你可以从免费集群开始,随着需求增长再升级为可扩展集群。创建可扩展集群时,你需要指定 **Monthly Spending Limit** 并添加信用卡。 - > **注意:** + > **Note:** > - > 对于 TiDB Cloud 中的每个组织,默认情况下你最多可以创建五个[免费集群](/tidb-cloud/select-cluster-tier.md#free-cluster-plan)。要创建更多 TiDB Cloud Serverless 集群,你需要添加信用卡并创建[可扩展集群](/tidb-cloud/select-cluster-tier.md#scalable-cluster-plan)。 + > 每个 TiDB Cloud 组织默认最多可以创建 5 个 [免费集群](/tidb-cloud/select-cluster-tier.md#free-cluster-plan)。如需创建更多 TiDB Cloud Serverless 集群,你需要添加信用卡并创建 [可扩展集群](/tidb-cloud/select-cluster-tier.md#scalable-cluster-plan)以供使用。 -7. 点击**创建**。 +7. 点击 **Create**。 - 集群创建过程开始,你的 TiDB Cloud 集群将在大约 30 秒内创建完成。 + 集群创建流程将启动,你的 TiDB Cloud 集群将在大约 30 秒内创建完成。 -## 下一步 +## 后续操作 -集群创建完成后,按照[通过公共端点连接到 TiDB Cloud Serverless](/tidb-cloud/connect-via-standard-connection-serverless.md)中的说明为你的集群创建密码。 +集群创建完成后,请按照 [Connect to TiDB Cloud Serverless via Public Endpoint](/tidb-cloud/connect-via-standard-connection-serverless.md) 的指引为你的集群创建密码。 -> **注意:** +> **Note:** > -> 如果你不设置密码,将无法连接到集群。 +> 如果你未设置密码,将无法连接到集群。 \ No newline at end of file diff --git a/tidb-cloud/create-tidb-cluster.md b/tidb-cloud/create-tidb-cluster.md index 1f04e0aa864e6..2f1659d886e7b 100644 --- a/tidb-cloud/create-tidb-cluster.md +++ b/tidb-cloud/create-tidb-cluster.md @@ -1,83 +1,83 @@ --- -title: 创建 TiDB Cloud Dedicated 集群 -summary: 了解如何创建 TiDB Cloud Dedicated 集群。 +title: 创建 TiDB Cloud 专属集群 +summary: 了解如何创建你的 TiDB Cloud 专属集群。 --- -# 创建 TiDB Cloud Dedicated 集群 +# 创建 TiDB Cloud 专属集群 -本教程将指导你注册并创建 TiDB Cloud Dedicated 集群。 +本教程将指导你注册并创建一个 TiDB Cloud 专属集群。 -> **提示:** +> **Tip:** > -> 如需了解如何创建 TiDB Cloud Serverless 集群,请参阅[创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md)。 +> 如果你想了解如何创建 TiDB Cloud Serverless 集群,请参见 [Create a TiDB Cloud Serverless Cluster](/tidb-cloud/create-tidb-cluster-serverless.md)。 ## 开始之前 -如果你还没有 TiDB Cloud 账号,请点击[此处](https://tidbcloud.com/signup)注册账号。 +如果你还没有 TiDB Cloud 账号,请点击[这里](https://tidbcloud.com/signup)注册账号。 -- 你可以使用电子邮件和密码注册,这样可以通过 TiDB Cloud 管理密码,也可以使用 Google、GitHub 或 Microsoft 账号注册。 -- 对于 AWS Marketplace 用户,你也可以通过 AWS Marketplace 注册。只需在 [AWS Marketplace](https://aws.amazon.com/marketplace) 中搜索 `TiDB Cloud`,订阅 TiDB Cloud,然后按照屏幕上的说明设置你的 TiDB Cloud 账号。 -- 对于 Azure Marketplace 用户,你也可以通过 Azure Marketplace 注册。只需在 [Azure Marketplace](https://azuremarketplace.microsoft.com) 中搜索 `TiDB Cloud`,订阅 TiDB Cloud,然后按照屏幕上的说明设置你的 TiDB Cloud 账号。 -- 对于 Google Cloud Marketplace 用户,你也可以通过 Google Cloud Marketplace 注册。只需在 [Google Cloud Marketplace](https://console.cloud.google.com/marketplace) 中搜索 `TiDB Cloud`,订阅 TiDB Cloud,然后按照屏幕上的说明设置你的 TiDB Cloud 账号。 +- 你可以使用邮箱和密码注册,这样你可以通过 TiDB Cloud 管理你的密码,或者使用 Google、GitHub 或 Microsoft 账号注册。 +- 对于 AWS Marketplace 用户,你也可以通过 AWS Marketplace 注册。方法是,在 [AWS Marketplace](https://aws.amazon.com/marketplace) 搜索 `TiDB Cloud`,订阅 TiDB Cloud,然后按照屏幕上的指引设置你的 TiDB Cloud 账号。 +- 对于 Azure Marketplace 用户,你也可以通过 Azure Marketplace 注册。方法是,在 [Azure Marketplace](https://azuremarketplace.microsoft.com) 搜索 `TiDB Cloud`,订阅 TiDB Cloud,然后按照屏幕上的指引设置你的 TiDB Cloud 账号。 +- 对于 Google Cloud Marketplace 用户,你也可以通过 Google Cloud Marketplace 注册。方法是,在 [Google Cloud Marketplace](https://console.cloud.google.com/marketplace) 搜索 `TiDB Cloud`,订阅 TiDB Cloud,然后按照屏幕上的指引设置你的 TiDB Cloud 账号。 ## (可选)步骤 1. 使用默认项目或创建新项目 -登录 [TiDB Cloud 控制台](https://tidbcloud.com/)后,你会有一个默认的[项目](/tidb-cloud/tidb-cloud-glossary.md#project)。当你的组织中只有一个项目时,你的集群将在该项目中创建。有关项目的更多信息,请参阅[组织和项目](/tidb-cloud/manage-user-access.md#organizations-and-projects)。 +登录 [TiDB Cloud 控制台](https://tidbcloud.com/) 后,你会有一个默认的 [project](/tidb-cloud/tidb-cloud-glossary.md#project)。当你的组织中只有一个项目时,集群会被创建在该项目下。关于项目的更多信息,请参见 [Organizations and projects](/tidb-cloud/manage-user-access.md#organizations-and-projects)。 -如果你是组织所有者,可以根据需要按照以下步骤重命名默认项目或为集群创建新项目: +如果你是组织所有者,可以根据需要重命名默认项目或为集群创建新项目,操作如下: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,点击左上角的组合框。将显示你的默认组织和项目。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,点击左上角的下拉框。你的默认组织和项目会显示出来。 -2. 点击你组织的名称,然后点击左侧导航栏中的**项目**。 +2. 点击你的组织名称,然后在左侧导航栏点击 **Projects**。 -3. 在**项目**页面上,执行以下操作之一: +3. 在 **Projects** 页面,执行以下操作之一: - - 要重命名默认项目,请在**操作**列中点击 **...** > **重命名**。 - - 要创建项目,请点击**创建新项目**,输入项目名称,然后点击**确认**。 + - 若要重命名默认项目,在 **Actions** 列点击 **...** > **Rename**。 + - 若要创建新项目,点击 **Create New Project**,输入项目名称,然后点击 **Confirm**。 -4. 要转到项目的集群列表页面,请在**项目**页面上点击项目名称。 +4. 若要进入项目的集群列表页面,在 **Projects** 页面点击项目名称。 -## 步骤 2. 创建 TiDB Cloud Dedicated 集群 +## 步骤 2. 创建 TiDB Cloud 专属集群 -如果你是`组织所有者`或`项目所有者`角色,可以按照以下步骤创建 TiDB Cloud Dedicated 集群: +如果你拥有 `Organization Owner` 或 `Project Owner` 角色,可以按照以下步骤创建 TiDB Cloud 专属集群: -1. 导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 +1. 进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 -2. 点击**创建集群**。 +2. 点击 **Create Cluster**。 -3. 在**创建集群**页面上,选择 **Dedicated**,然后按如下配置集群信息: +3. 在 **Create Cluster** 页面,选择 **Dedicated**,然后按如下方式配置集群信息: - 1. 选择云服务提供商和区域。 + 1. 选择云服务商和区域。 - > **注意:** + > **Note:** > - > - 目前,Azure 上的 TiDB Cloud Dedicated 支持处于公开预览阶段。 - > - 如果你通过 [AWS Marketplace](https://aws.amazon.com/marketplace) 注册了 TiDB Cloud,云服务提供商为 AWS,且无法在 TiDB Cloud 中更改。 - > - 如果你通过 [Azure Marketplace](https://azuremarketplace.microsoft.com) 注册了 TiDB Cloud,云服务提供商为 Azure Cloud,且无法在 TiDB Cloud 中更改。 - > - 如果你通过 [Google Cloud Marketplace](https://console.cloud.google.com/marketplace) 注册了 TiDB Cloud,云服务提供商为 Google Cloud,且无法在 TiDB Cloud 中更改。 + > - 目前,TiDB Cloud 专属集群在 Azure 上的支持处于公开预览阶段。 + > - 如果你是通过 [AWS Marketplace](https://aws.amazon.com/marketplace) 注册的 TiDB Cloud,云服务商为 AWS,且无法在 TiDB Cloud 中更改。 + > - 如果你是通过 [Azure Marketplace](https://azuremarketplace.microsoft.com) 注册的 TiDB Cloud,云服务商为 Azure Cloud,且无法在 TiDB Cloud 中更改。 + > - 如果你是通过 [Google Cloud Marketplace](https://console.cloud.google.com/marketplace) 注册的 TiDB Cloud,云服务商为 Google Cloud,且无法在 TiDB Cloud 中更改。 - 2. 分别为 TiDB、TiKV 和 TiFlash(可选)配置[集群大小](/tidb-cloud/size-your-cluster.md)。 - 3. 如有必要,更新默认的集群名称和端口号。 - 4. 如果尚未为该区域配置 CIDR,则需要设置 CIDR。如果你没有看到**项目 CIDR**字段,则表示该区域已配置 CIDR。 + 2. 分别为 TiDB、TiKV 和 TiFlash(可选)配置 [cluster size](/tidb-cloud/size-your-cluster.md)。 + 3. 如有需要,修改默认集群名称和端口号。 + 4. 如果该区域尚未配置 CIDR,则需要设置 CIDR。如果你没有看到 **Project CIDR** 字段,说明该区域已配置了 CIDR。 - > **注意:** + > **Note:** > - > - 当在此区域创建第一个集群时,TiDB Cloud 将使用此 CIDR 创建一个 VPC。同一项目在此区域的所有后续集群都将使用此 VPC。 - > - 设置 CIDR 时,避免与应用程序所在 VPC 的 CIDR 发生冲突。VPC 创建后无法修改 CIDR。 + > - 当该区域的第一个集群创建时,TiDB Cloud 会使用该 CIDR 创建一个 VPC。该区域同一项目下的后续集群都会使用该 VPC。 + > - 设置 CIDR 时,请避免与你应用所在 VPC 的 CIDR 冲突。VPC 创建后,CIDR 无法修改。 -4. 确认右侧的集群和计费信息。 +4. 在右侧确认集群和计费信息。 -5. 如果你尚未添加付款方式,请点击右下角的**添加信用卡**。 +5. 如果你还没有添加支付方式,请点击右下角的 **Add Credit Card**。 - > **注意:** + > **Note:** > - > 如果你通过 [AWS Marketplace](https://aws.amazon.com/marketplace)、[Azure Marketplace](https://azuremarketplace.microsoft.com) 或 [Google Cloud Marketplace](https://console.cloud.google.com/marketplace) 注册了 TiDB Cloud,你可以直接通过 AWS 账号、Azure 账号或 Google Cloud 账号付款,但无法在 TiDB Cloud 控制台中添加付款方式或下载发票。 + > 如果你是通过 [AWS Marketplace](https://aws.amazon.com/marketplace)、[Azure Marketplace](https://azuremarketplace.microsoft.com) 或 [Google Cloud Marketplace](https://console.cloud.google.com/marketplace) 注册的 TiDB Cloud,可以直接通过 AWS 账号、Azure 账号或 Google Cloud 账号支付,但无法在 TiDB Cloud 控制台添加支付方式或下载发票。 -6. 点击**创建**。 +6. 点击 **Create**。 你的 TiDB Cloud 集群将在大约 20 到 30 分钟内创建完成。 @@ -85,12 +85,12 @@ summary: 了解如何创建 TiDB Cloud Dedicated 集群。 集群创建完成后,按照以下步骤设置 root 密码: -1. 在集群概览页面的右上角,点击 **...** 并选择**密码设置**。 +1. 在集群概览页面右上角,点击 **...** 并选择 **Password Settings**。 -2. 设置连接集群的 root 密码,然后点击**保存**。 +2. 设置连接集群所需的 root 密码,然后点击 **Save**。 - 你可以点击**自动生成密码**生成随机密码。生成的密码不会再次显示,请将密码保存在安全的位置。 + 你可以点击 **Auto-generate Password** 自动生成一个随机密码。生成的密码不会再次显示,请妥善保存你的密码。 -## 下一步 +## 后续操作 -在 TiDB Cloud 上创建集群后,你可以通过[连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/connect-to-tidb-cluster.md)中提供的方法连接到集群。 +在 TiDB Cloud 上创建集群后,你可以通过 [Connect to Your TiDB Cloud Dedicated Cluster](/tidb-cloud/connect-to-tidb-cluster.md) 中提供的方法连接到你的集群。 \ No newline at end of file diff --git a/tidb-cloud/data-service-get-started.md b/tidb-cloud/data-service-get-started.md index 496c6ff7ed30f..303e7cd4cd84a 100644 --- a/tidb-cloud/data-service-get-started.md +++ b/tidb-cloud/data-service-get-started.md @@ -1,148 +1,148 @@ --- -title: 数据服务入门 -summary: 了解如何使用 TiDB Cloud 数据服务通过 HTTPS 请求访问数据。 +title: 快速入门 Data Service +summary: 了解如何使用 TiDB Cloud Data Service 通过 HTTPS 请求访问你的数据。 --- -# 数据服务入门 +# 快速入门 Data Service -数据服务(beta)使你能够通过自定义 API 端点使用 HTTPS 请求访问 TiDB Cloud 数据,让你可以无缝集成任何支持 HTTPS 的应用程序或服务。 +Data Service(测试版)使你能够通过自定义 API 端点使用 HTTPS 请求访问 TiDB Cloud 数据,并允许你无缝集成到任何兼容 HTTPS 的应用或服务中。 > **提示:** > -> TiDB Cloud 为 TiDB 集群提供 Chat2Query API。启用后,TiDB Cloud 将自动在数据服务中创建一个名为 **Chat2Query** 的系统数据应用和一个 Chat2Data 端点。你可以调用此端点,通过提供指令让 AI 生成并执行 SQL 语句。 +> TiDB Cloud 为 TiDB 集群提供了 Chat2Query API。启用后,TiDB Cloud 会自动在 Data Service 中创建一个名为 **Chat2Query** 的系统 Data App 以及一个 Chat2Data 端点。你可以调用该端点,通过提供指令让 AI 生成并执行 SQL 语句。 > -> 更多信息,请参阅[Chat2Query API 入门](/tidb-cloud/use-chat2query-api.md)。 +> 更多信息,参见 [快速入门 Chat2Query API](/tidb-cloud/use-chat2query-api.md)。 -本文介绍如何通过创建数据应用、开发、测试、部署和调用端点,快速开始使用 TiDB Cloud 数据服务(beta)。数据应用是一组端点的集合,你可以使用这些端点访问特定应用程序的数据。 +本文档介绍如何通过创建 Data App、开发、测试、部署和调用端点,快速上手 TiDB Cloud Data Service(测试版)。Data App 是一组端点的集合,你可以用它来为特定应用访问数据。 ## 开始之前 -在创建数据应用之前,请确保你已创建了一个 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。如果你还没有,请按照[创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md)中的步骤创建一个。 +在创建 Data App 之前,请确保你已经创建了 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。如果还没有,请按照 [创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md) 的步骤进行创建。 -## 从示例数据应用开始 +## 使用示例 Data App 快速入门 -创建示例数据应用是开始使用数据服务的最佳方式。如果你的项目还没有任何数据应用,可以按照**数据服务**页面上的屏幕说明创建一个示例数据应用,并使用此应用探索数据服务功能。 +创建一个示例 Data App 是快速上手 Data Service 的最佳方式。如果你的项目还没有任何 Data App,可以按照 **Data Service** 页面上的引导创建一个示例 Data App,并通过该 App 体验 Data Service 的功能。 -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,点击左侧导航栏中的 **数据服务**。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 的左侧导航栏,点击 **Data Service**。 -2. 在**数据服务**页面,点击**创建示例数据应用**。将显示一个对话框。 +2. 在 **Data Service** 页面,点击 **Create Sample Data App**。会弹出一个对话框。 -3. 在对话框中,根据需要更新应用名称,选择你希望数据应用访问的集群,然后点击**创建**。 +3. 在对话框中,如有需要可修改 App 名称,选择你希望 Data App 访问的集群,然后点击 **Create**。 - 创建过程需要几秒钟。 + 创建过程只需几秒钟。 > **注意:** > - > 如果你当前的项目中没有集群,可以在**链接数据源**下拉列表中点击**创建新集群**先创建一个。 + > 如果当前项目下没有集群,可以在 **Link Data Sources** 下拉列表中点击 **Create New Cluster** 先创建一个集群。 -4. 示例数据应用自动创建后,你可以在左侧窗格中看到应用名称和端点列表,中间窗格中显示端点的 SQL 语句,右侧显示使用示例数据应用的说明。 +4. 示例 Data App 自动创建完成后,你可以在左侧看到 App 名称和端点列表,在中间看到某个端点的 SQL 语句,在右侧看到关于如何使用示例 Data App 的说明。 -5. 按照右侧的说明选择一个端点并使用 curl 命令调用该端点。 +5. 按照右侧的说明,选择一个端点并使用 curl 命令调用该端点。 -## 从你自己的数据应用开始 +## 使用自定义 Data App 快速入门 -要开始使用数据服务,你也可以创建自己的数据应用,然后按照以下步骤开发、测试、部署和调用端点。 +你也可以通过创建自己的 Data App,并按照以下步骤开发、测试、部署和调用端点,快速上手 Data Service。 -### 步骤 1. 创建数据应用 +### 步骤 1. 创建 Data App -要创建数据应用,请执行以下步骤: +要创建 Data App,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,点击左侧导航栏中的 **数据服务**。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 的左侧导航栏,点击 **Data Service**。 -2. 在项目的[**数据服务**](https://tidbcloud.com/project/data-service)页面,点击左侧窗格中的 **创建数据应用**。 +2. 在项目的 [**Data Service**](https://tidbcloud.com/project/data-service) 页面左侧,点击 **Create DataApp**。 > **提示:** > - > 如果这是你项目中的第一个数据应用,请点击页面中间的**创建数据应用**。 + > 如果这是你项目中的第一个 Data App,请在页面中间点击 **Create Data App**。 -3. 在**创建数据应用**对话框中,输入名称、描述,并选择你希望数据应用访问的集群。 +3. 在 **Create Data App** 对话框中,输入名称、描述,并选择你希望 Data App 访问的集群。 > **注意:** > - > 默认情况下,数据应用类型为**标准数据应用**。如果你想创建 **Chat2Query 数据应用**,请参考 [Chat2Query API 入门](/tidb-cloud/use-chat2query-api.md)而不是本文档。 + > 默认情况下,Data App 类型为 **Standard Data App**。如果你想创建 **Chat2Query Data App**,请参考 [快速入门 Chat2Query API](/tidb-cloud/use-chat2query-api.md),而不是本文档。 -4. (可选)要自动将数据应用的端点部署到你首选的 GitHub 仓库和分支,请启用**连接到 GitHub**,然后执行以下操作: +4. (可选)如需将 Data App 的端点自动部署到你指定的 GitHub 仓库和分支,请启用 **Connect to GitHub**,然后执行以下操作: - 1. 点击**在 GitHub 上安装**,然后按照屏幕说明在目标仓库上安装 **TiDB Cloud Data Service** 应用。 - 2. 返回 TiDB Cloud 控制台,然后点击**授权**以授权访问 GitHub 上的应用。 - 3. 指定要保存数据应用配置文件的目标仓库、分支和目录。 + 1. 点击 **Install on GitHub**,并按照页面指引将 **TiDB Cloud Data Service** 作为应用安装到目标仓库。 + 2. 返回 TiDB Cloud 控制台,点击 **Authorize** 授权 GitHub 上的应用访问权限。 + 3. 指定你希望保存 Data App 配置文件的目标仓库、分支和目录。 > **注意:** > - > - 目录必须以斜杠 (`/`) 开头。例如,`/mydata`。如果你指定的目录在目标仓库和分支中不存在,将自动创建。 - > - 仓库、分支和目录的组合标识了配置文件的路径,在数据应用中必须是唯一的。如果你指定的路径已被另一个数据应用使用,你需要指定一个新路径。否则,当前数据应用在 TiDB Cloud 控制台中配置的端点将覆盖你指定路径中的文件。 + > - 目录必须以斜杠(`/`)开头。例如,`/mydata`。如果你指定的目录在目标仓库和分支下不存在,会自动创建。 + > - 仓库、分支和目录的组合唯一标识配置文件路径,在所有 Data App 中必须唯一。如果你指定的路径已被其他 Data App 使用,需要重新指定路径。否则,在 TiDB Cloud 控制台为当前 Data App 配置的端点会覆盖你指定路径下的文件。 -5. 点击**创建数据应用**。将显示[**数据服务**](https://tidbcloud.com/project/data-service)详情页面。 +5. 点击 **Create Data App**。会显示 [**Data Service**](https://tidbcloud.com/project/data-service) 详情页。 -6. 如果你已配置将数据应用连接到 GitHub,请检查你指定的 GitHub 目录。你会发现[数据应用配置文件](/tidb-cloud/data-service-app-config-files.md)已由 `tidb-cloud-data-service` 提交到该目录,这意味着你的数据应用已成功连接到 GitHub。 +6. 如果你已配置将 Data App 连接到 GitHub,请检查你指定的 GitHub 目录。你会发现 [Data App 配置文件](/tidb-cloud/data-service-app-config-files.md) 已由 `tidb-cloud-data-service` 提交到该目录,说明 Data App 已成功连接到 GitHub。 - 对于你的新数据应用,默认启用了**自动同步和部署**和**审核草稿**,这样你就可以轻松地在 TiDB Cloud 控制台和 GitHub 之间同步数据应用更改,并在部署前审核更改。有关 GitHub 集成的更多信息,请参阅[使用 GitHub 自动部署数据应用更改](/tidb-cloud/data-service-manage-github-connection.md)。 + 对于新建的 Data App,**Auto Sync & Deployment** 和 **Review Draft** 默认开启,你可以方便地在 TiDB Cloud 控制台和 GitHub 之间同步 Data App 变更,并在部署前审查变更。关于 GitHub 集成的更多信息,参见 [通过 GitHub 自动部署 Data App 变更](/tidb-cloud/data-service-manage-github-connection.md)。 ### 步骤 2. 开发端点 -端点是一个可以自定义执行 SQL 语句的 Web API。 +端点是你可以自定义以执行 SQL 语句的 Web API。 -要创建新端点,找到新创建的数据应用,然后点击应用名称右侧的 **+** **创建端点**。 +要创建新端点,定位到新建的 Data App,点击 App 名称右侧的 **+** **Create Endpoint**。 #### 配置属性 -在右侧窗格中,点击**属性**选项卡并为端点设置属性,例如: +在右侧面板点击 **Properties** 标签页,为端点设置属性,例如: -- **路径**:用户访问端点的路径。请求方法和路径的组合在数据应用中必须是唯一的。 +- **Path**:用户访问端点时使用的路径。请求方法和路径的组合在同一个 Data App 内必须唯一。 -- **端点 URL**:(只读)URL 根据相应集群所在的区域、数据应用的服务 URL 和端点的路径自动生成。例如,如果端点的路径是 `/my_endpoint/get_id`,则端点 URL 为 `https://.data.tidbcloud.com/api/v1beta/app//endpoint/my_endpoint/get_id`。 +- **Endpoint URL**:(只读)URL 会根据对应集群所在区域、Data App 的服务 URL 以及端点路径自动生成。例如,如果端点路径为 `/my_endpoint/get_id`,则端点 URL 为 `https://.data.tidbcloud.com/api/v1beta/app//endpoint/my_endpoint/get_id`。 -- **请求方法**:端点的 HTTP 方法。你可以使用 `GET` 检索数据,使用 `POST` 创建或插入数据,使用 `PUT` 更新或修改数据,使用 `DELETE` 删除数据。 +- **Request Method**:端点的 HTTP 方法。你可以使用 `GET` 获取数据,使用 `POST` 创建或插入数据,使用 `PUT` 更新或修改数据,使用 `DELETE` 删除数据。 -有关端点属性的更多信息,请参阅[配置属性](/tidb-cloud/data-service-manage-endpoint.md#configure-properties)。 +关于端点属性的更多信息,参见 [配置属性](/tidb-cloud/data-service-manage-endpoint.md#configure-properties)。 #### 编写 SQL 语句 -你可以在 SQL 编辑器(即页面中间的窗格)中为端点自定义 SQL 语句。 +你可以在 **Data Service** 页中间的 SQL 编辑器自定义端点的 SQL 语句。 1. 选择集群。 > **注意:** > - > 下拉列表中只显示链接到数据应用的集群。要管理链接的集群,请参阅[管理链接的集群](/tidb-cloud/data-service-manage-data-app.md#manage-linked-data-sources)。 + > 只有已关联到 Data App 的集群会显示在下拉列表中。要管理已关联的集群,参见 [管理已关联集群](/tidb-cloud/data-service-manage-data-app.md#manage-linked-data-sources)。 - 在 SQL 编辑器的上部,从下拉列表中选择要执行 SQL 语句的集群。然后,你可以在右侧窗格的**架构**选项卡中查看此集群的所有数据库。 + 在 SQL 编辑器上方,从下拉列表中选择你希望执行 SQL 语句的集群。然后,你可以在右侧面板的 **Schema** 标签页查看该集群的所有数据库。 2. 编写 SQL 语句。 - 在查询或修改数据之前,你需要先在 SQL 语句中指定数据库。例如,`USE database_name;`。 + 在查询或修改数据前,需要在 SQL 语句中先指定数据库。例如,`USE database_name;`。 - 在 SQL 编辑器中,你可以编写表连接查询、复杂查询和聚合函数等语句。你也可以简单地输入 `--` 后跟你的指令,让 AI 自动生成 SQL 语句。 + 在 SQL 编辑器中,你可以编写表连接查询、复杂查询、聚合函数等语句。你也可以直接输入 `--` 加上你的指令,让 AI 自动生成 SQL 语句。 > **注意:** > - > 要尝试 TiDB Cloud 的 AI 功能,你需要允许 PingCAP 和 Amazon Bedrock 使用你的代码片段进行研究和服务改进。更多信息,请参阅[启用或禁用 AI 生成 SQL 查询](/tidb-cloud/explore-data-with-chat2query.md#enable-or-disable-ai-to-generate-sql-queries)。 + > 如需体验 TiDB Cloud 的 AI 能力,你需要允许 PingCAP 和 Amazon Bedrock 使用你的代码片段进行研究和服务改进。更多信息,参见 [启用或禁用 AI 生成 SQL 查询](/tidb-cloud/explore-data-with-chat2query.md#enable-or-disable-ai-to-generate-sql-queries)。 - 要定义参数,你可以在 SQL 语句中插入变量占位符,如 `${ID}`。例如,`SELECT * FROM table_name WHERE id = ${ID}`。然后,你可以点击右侧窗格的**参数**选项卡来更改参数定义和测试值。 + 如需定义参数,可以在 SQL 语句中以变量占位符的形式插入,例如 `${ID}`。例如,`SELECT * FROM table_name WHERE id = ${ID}`。然后,你可以点击右侧面板的 **Params** 标签页修改参数定义和测试值。 > **注意:** > - > - 参数名称区分大小写。 + > - 参数名区分大小写。 > - 参数不能用作表名或列名。 - - 在**定义**部分,你可以指定客户端调用端点时是否需要参数、数据类型和参数的默认值。 - - 在**测试值**部分,你可以为参数设置测试值。测试值在运行 SQL 语句或测试端点时使用。如果你没有设置测试值,将使用默认值。 - - 更多信息,请参阅[配置参数](/tidb-cloud/data-service-manage-endpoint.md#configure-parameters)。 + - 在 **Definition** 部分,你可以指定客户端调用端点时参数是否必填、数据类型和默认值。 + - 在 **Test Values** 部分,你可以为参数设置测试值。测试值用于运行 SQL 语句或测试端点时。如果未设置测试值,则使用默认值。 + - 更多信息,参见 [配置参数](/tidb-cloud/data-service-manage-endpoint.md#configure-parameters)。 3. 运行 SQL 语句。 - 如果你在 SQL 语句中插入了参数,请确保你已在右侧窗格的**参数**选项卡中设置了测试值或默认值。否则,将返回错误。 + 如果 SQL 语句中包含参数,请确保你已在右侧 **Params** 标签页为参数设置了测试值或默认值,否则会返回错误。
对于 macOS: - - 如果编辑器中只有一条语句,要运行它,请按 **⌘ + Enter** 或点击 **运行**。 + - 如果编辑器中只有一条语句,按 **⌘ + Enter** 或点击 **Run** 运行。 - - 如果编辑器中有多条语句,要按顺序运行其中一条或几条语句,请将光标放在目标语句上或用光标选择目标语句的行,然后按 **⌘ + Enter** 或点击**运行**。 + - 如果编辑器中有多条语句,要顺序运行其中一条或多条,将光标放在目标语句上或选中目标语句的行,然后按 **⌘ + Enter** 或点击 **Run**。 - - 要按顺序运行编辑器中的所有语句,请按 **⇧ + ⌘ + Enter**,或用光标选择所有语句的行并点击**运行**。 + - 要顺序运行编辑器中的所有语句,按 **⇧ + ⌘ + Enter**,或用光标选中所有语句的行后点击 **Run**。
@@ -150,77 +150,77 @@ summary: 了解如何使用 TiDB Cloud 数据服务通过 HTTPS 请求访问数 对于 Windows 或 Linux: - - 如果编辑器中只有一条语句,要运行它,请按 **Ctrl + Enter** 或点击 **运行**。 + - 如果编辑器中只有一条语句,按 **Ctrl + Enter** 或点击 **Run** 运行。 - - 如果编辑器中有多条语句,要按顺序运行其中一条或几条语句,请将光标放在目标语句上或用光标选择目标语句的行,然后按 **Ctrl + Enter** 或点击**运行**。 + - 如果编辑器中有多条语句,要顺序运行其中一条或多条,将光标放在目标语句上或选中目标语句的行,然后按 **Ctrl + Enter** 或点击 **Run**。 - - 要按顺序运行编辑器中的所有语句,请按 **Shift + Ctrl + Enter**,或用光标选择所有语句的行并点击**运行**。 + - 要顺序运行编辑器中的所有语句,按 **Shift + Ctrl + Enter**,或用光标选中所有语句的行后点击 **Run**。
- 运行语句后,你可以在页面底部的**结果**选项卡中立即看到查询结果。 + 运行语句后,你可以在页面底部的 **Result** 标签页立即看到查询结果。 ### 步骤 3. 测试端点(可选) -配置端点后,你可以在部署之前测试端点,以验证它是否按预期工作。 +配置端点后,你可以先测试端点,验证其是否按预期工作,再进行部署。 -要测试端点,请点击右上角的**测试**或按 **F5**。 +要测试端点,点击右上角的 **Test** 或按 **F5**。 -然后,你可以在页面底部的 **HTTP 响应**选项卡中看到响应。有关响应的更多信息,请参阅[端点的响应](/tidb-cloud/data-service-manage-endpoint.md#response)。 +然后,你可以在页面底部的 **HTTP Response** 标签页看到响应。关于响应的更多信息,参见 [端点的响应](/tidb-cloud/data-service-manage-endpoint.md#response)。 ### 步骤 4. 部署端点 要部署端点,请执行以下步骤: -1. 在端点详情页面,点击右上角的**部署**。 +1. 在端点详情页,点击右上角的 **Deploy**。 -2. 点击**部署**确认部署。如果端点成功部署,你将看到**端点已部署**的提示。 +2. 点击 **Deploy** 确认部署。如果端点部署成功,会提示 **Endpoint has been deployed**。 - 要查看部署历史记录,你可以点击左侧窗格中的数据应用名称,然后点击右侧窗格中的**部署**选项卡。 + 如需查看部署历史,可以点击左侧 Data App 名称,再点击右侧的 **Deployments** 标签页。 ### 步骤 5. 调用端点 -你可以通过发送 HTTPS 请求来调用端点。在调用端点之前,你需要先获取数据应用的 API 密钥。 +你可以通过发送 HTTPS 请求调用端点。在调用端点前,需要先为 Data App 获取 API key。 -#### 1. 创建 API 密钥 +#### 1. 创建 API key -1. 在[**数据服务**](https://tidbcloud.com/project/data-service)页面的左侧窗格中,点击数据应用的名称以查看其详情。 -2. 在**身份验证**区域,点击**创建 API 密钥**。 -3. 在**创建 API 密钥**对话框中,执行以下操作: +1. 在 [**Data Service**](https://tidbcloud.com/project/data-service) 页左侧,点击你的 Data App 名称查看详情。 +2. 在 **Authentication** 区域,点击 **Create API Key**。 +3. 在 **Create API Key** 对话框中,执行以下操作: - 1. (可选)为你的 API 密钥输入描述。 - 2. 为你的 API 密钥选择角色。 + 1. (可选)为 API key 输入描述。 + 2. 选择 API key 的角色。 - 角色用于控制 API 密钥是否可以读取或写入链接到数据应用的集群数据。你可以选择 `ReadOnly` 或 `ReadAndWrite` 角色: + 角色用于控制 API key 是否可以对 Data App 关联的集群进行读写。你可以选择 `ReadOnly` 或 `ReadAndWrite` 角色: - - `ReadOnly`:仅允许 API 密钥读取数据,如 `SELECT`、`SHOW`、`USE`、`DESC` 和 `EXPLAIN` 语句。 - - `ReadAndWrite`:允许 API 密钥读取和写入数据。你可以使用此 API 密钥执行所有 SQL 语句,如 DML 和 DDL 语句。 + - `ReadOnly`:只允许 API key 读取数据,如 `SELECT`、`SHOW`、`USE`、`DESC` 和 `EXPLAIN` 语句。 + - `ReadAndWrite`:允许 API key 读写数据。你可以用该 API key 执行所有 SQL 语句,如 DML 和 DDL 语句。 - 3. (可选)为你的 API 密钥设置所需的速率限制。 + 3. (可选)为 API key 设置期望的速率限制。 -4. 点击**下一步**。将显示公钥和私钥。 +4. 点击 **Next**。会显示公钥和私钥。 - 确保你已将私钥复制并保存在安全的位置。离开此页面后,你将无法再次获取完整的私钥。 + 请务必将私钥复制并妥善保存。离开此页面后,将无法再次获取完整私钥。 -5. 点击**完成**。 +5. 点击 **Done**。 -有关 API 密钥的更多信息,请参阅[数据服务中的 API 密钥](/tidb-cloud/data-service-api-key.md)。 +关于 API key 的更多信息,参见 [Data Service 中的 API Key](/tidb-cloud/data-service-api-key.md)。 #### 2. 获取代码示例 -TiDB Cloud 生成代码示例以帮助你调用端点。要获取代码示例,请执行以下步骤: +TiDB Cloud 会生成代码示例,帮助你调用端点。要获取代码示例,请执行以下步骤: -1. 在[**数据服务**](https://tidbcloud.com/project/data-service)页面的左侧窗格中,点击端点的名称,然后点击右上角的 **...** > **代码示例**。将显示**代码示例**对话框。 +1. 在 [**Data Service**](https://tidbcloud.com/project/data-service) 页左侧,点击你的端点名称,然后点击右上角 **...** > **Code Example**。会弹出 **Code Example** 对话框。 -2. 在对话框中,选择要用于调用端点的集群和数据库,然后复制代码示例。 +2. 在对话框中,选择你希望用于调用端点的集群和数据库,然后复制代码示例。 - 以下是 curl 代码示例: + curl 代码示例如下: -
+
- 要调用端点的草稿版本,你需要添加 `endpoint-type: draft` 头: + 如需调用端点的草稿版本,需要添加 `endpoint-type: draft` 头: ```bash curl --digest --user ':' \ @@ -230,11 +230,11 @@ TiDB Cloud 生成代码示例以帮助你调用端点。要获取代码示例,
-
+
- 在检查线上环境的代码示例之前,你必须先部署端点。 + 你必须先部署端点,才能在在线环境下查看代码示例。 - 要调用端点的当前线上版本,请使用以下命令: + 如需调用端点的当前在线版本,使用如下命令: ```bash curl --digest --user ':' \ @@ -247,16 +247,16 @@ TiDB Cloud 生成代码示例以帮助你调用端点。要获取代码示例, > **注意:** > > - 通过请求区域域名 `.data.tidbcloud.com`,你可以直接访问 TiDB 集群所在区域的端点。 - > - 或者,你也可以请求全局域名 `data.tidbcloud.com` 而不指定区域。这样,TiDB Cloud 将在内部将请求重定向到目标区域,但这可能会导致额外的延迟。如果你选择这种方式,请确保在调用端点时在 curl 命令中添加 `--location-trusted` 选项。 + > - 你也可以不指定区域,直接请求全局域名 `data.tidbcloud.com`。此时,TiDB Cloud 会在内部将请求重定向到目标区域,但可能会带来额外延迟。如果选择这种方式,调用端点时请确保在 curl 命令中添加 `--location-trusted` 选项。 #### 3. 使用代码示例 -将代码示例粘贴到你的应用程序中并运行。然后,你可以获取端点的响应。 +将代码示例粘贴到你的应用中并运行,即可获取端点响应。 -- 你需要将 `` 和 `` 占位符替换为你的 API 密钥。 -- 如果端点包含参数,请在调用端点时指定参数值。 +- 你需要将 `` 和 `` 占位符替换为你的 API key。 +- 如果端点包含参数,调用端点时请指定参数值。 -调用端点后,你可以看到 JSON 格式的响应。以下是一个示例: +调用端点后,你可以看到 JSON 格式的响应。例如: ```json { @@ -294,11 +294,11 @@ TiDB Cloud 生成代码示例以帮助你调用端点。要获取代码示例, } ``` -有关响应的更多信息,请参阅[端点的响应](/tidb-cloud/data-service-manage-endpoint.md#response)。 +关于响应的更多信息,参见 [端点的响应](/tidb-cloud/data-service-manage-endpoint.md#response)。 ## 了解更多 -- [数据服务概述](/tidb-cloud/data-service-overview.md) -- [Chat2Query API 入门](/tidb-cloud/use-chat2query-api.md) -- [管理数据应用](/tidb-cloud/data-service-manage-data-app.md) +- [Data Service 概览](/tidb-cloud/data-service-overview.md) +- [快速入门 Chat2Query API](/tidb-cloud/use-chat2query-api.md) +- [管理 Data App](/tidb-cloud/data-service-manage-data-app.md) - [管理端点](/tidb-cloud/data-service-manage-endpoint.md) diff --git a/tidb-cloud/data-service-oas-with-nextjs.md b/tidb-cloud/data-service-oas-with-nextjs.md index ed94f22514275..93112b053294b 100644 --- a/tidb-cloud/data-service-oas-with-nextjs.md +++ b/tidb-cloud/data-service-oas-with-nextjs.md @@ -1,17 +1,17 @@ --- -title: 将数据应用的 OpenAPI 规范与 Next.js 一起使用 -summary: 了解如何使用数据应用的 OpenAPI 规范生成客户端代码并开发 Next.js 应用程序。 +title: 在 Next.js 中使用 Data App 的 OpenAPI 规范 +summary: 学习如何使用 Data App 的 OpenAPI 规范生成客户端代码并开发 Next.js 应用。 --- -# 将数据应用的 OpenAPI 规范与 Next.js 一起使用 +# 在 Next.js 中使用 Data App 的 OpenAPI 规范 -本文介绍如何使用[数据应用](/tidb-cloud/tidb-cloud-glossary.md#data-app)的 OpenAPI 规范生成客户端代码并开发 Next.js 应用程序。 +本文介绍如何使用 [Data App](/tidb-cloud/tidb-cloud-glossary.md#data-app) 的 OpenAPI 规范生成客户端代码,并开发 Next.js 应用。 ## 开始之前 -在将 OpenAPI 规范与 Next.js 一起使用之前,请确保你具有以下条件: +在将 OpenAPI 规范与 Next.js 配合使用之前,请确保你已具备以下条件: -- 一个 TiDB 集群。更多信息,请参见[创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md)或[创建 TiDB Cloud Dedicated 集群](/tidb-cloud/create-tidb-cluster.md)。 +- 一个 TiDB 集群。更多信息,参见 [创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md) 或 [创建 TiDB Cloud Dedicated 集群](/tidb-cloud/create-tidb-cluster.md)。 - [Node.js](https://nodejs.org/en/download) - [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) - [yarn](https://yarnpkg.com/getting-started/install) @@ -20,9 +20,9 @@ summary: 了解如何使用数据应用的 OpenAPI 规范生成客户端代码 ## 步骤 1. 准备数据 -首先,在你的 TiDB 集群中创建一个 `test.repository` 表并向其中插入一些示例数据。以下示例插入一些由 PingCAP 开发的开源项目作为演示数据。 +首先,在你的 TiDB 集群中创建表 `test.repository`,并插入一些示例数据。以下示例插入了由 PingCAP 开发的一些开源项目,作为演示数据。 -要执行 SQL 语句,你可以使用 [TiDB Cloud 控制台](https://tidbcloud.com)中的 [SQL 编辑器](/tidb-cloud/explore-data-with-chat2query.md)。 +你可以在 [TiDB Cloud 控制台](https://tidbcloud.com)的 [SQL 编辑器](/tidb-cloud/explore-data-with-chat2query.md)中执行这些 SQL 语句。 ```sql -- 选择数据库 @@ -43,23 +43,23 @@ VALUES ('tidb', 'https://github.com/pingcap/tidb'), ('tiflash', 'https://github.com/pingcap/tiflash'); ``` -## 步骤 2. 创建数据应用 +## 步骤 2. 创建 Data App -插入数据后,在 [TiDB Cloud 控制台](https://tidbcloud.com)中导航到[**数据服务**](https://tidbcloud.com/project/data-service)页面。创建一个链接到你的 TiDB 集群的数据应用,为该数据应用创建一个 API 密钥,然后在数据应用中创建一个 `GET /repositories` 端点。此端点的对应 SQL 语句如下,它从 `test.repository` 表中获取所有行: +数据插入完成后,前往 [TiDB Cloud 控制台](https://tidbcloud.com)的 [**Data Service**](https://tidbcloud.com/project/data-service) 页面。创建一个关联到你的 TiDB 集群的 Data App,为该 Data App 创建一个 API key,然后在 Data App 中创建一个 `GET /repositories` 的 endpoint。该 endpoint 对应的 SQL 语句如下,用于查询 `test.repository` 表中的所有行: ```sql SELECT * FROM test.repository; ``` -更多信息,请参见[开始使用数据服务](/tidb-cloud/data-service-get-started.md)。 +更多信息,参见 [快速开始使用 Data Service](/tidb-cloud/data-service-get-started.md)。 ## 步骤 3. 生成客户端代码 -以下以 Next.js 为例,演示如何使用数据应用的 OpenAPI 规范生成客户端代码。 +以下以 Next.js 为例,演示如何使用 Data App 的 OpenAPI 规范生成客户端代码。 -1. 创建一个名为 `hello-repos` 的 Next.js 项目。 +1. 创建名为 `hello-repos` 的 Next.js 项目。 - 要使用官方模板创建 Next.js 项目,请使用以下命令,并在提示时保持所有默认选项: + 要使用官方模板创建 Next.js 项目,请执行以下命令,并在提示时保持所有默认选项: ```shell yarn create next-app hello-repos @@ -73,21 +73,21 @@ SELECT * FROM test.repository; 2. 安装依赖。 - 本文使用 [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) 从 OpenAPI 规范自动生成 API 客户端库。 + 本文使用 [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) 根据 OpenAPI 规范自动生成 API 客户端库。 - 要将 OpenAPI Generator 安装为开发依赖项,请运行以下命令: + 通过以下命令将 OpenAPI Generator 作为开发依赖安装: ```shell yarn add @openapitools/openapi-generator-cli --dev ``` -3. 下载 OpenAPI 规范并将其保存为 `oas/doc.json`。 +3. 下载 OpenAPI 规范并保存为 `oas/doc.json`。 - 1. 在 TiDB Cloud [**数据服务**](https://tidbcloud.com/project/data-service)页面,点击左侧窗格中的数据应用名称以查看应用设置。 - 2. 在 **API 规范**区域,点击**下载**,选择 JSON 格式,如果出现提示,点击**授权**。 - 3. 将下载的文件保存为 `hello-repos` 项目目录中的 `oas/doc.json`。 + 1. 在 TiDB Cloud [**Data Service**](https://tidbcloud.com/project/data-service) 页面,点击左侧面板中的 Data App 名称,进入 App 设置页面。 + 2. 在 **API Specification** 区域,点击 **Download**,选择 JSON 格式,如有提示点击 **Authorize**。 + 3. 将下载的文件保存为 `hello-repos` 项目目录下的 `oas/doc.json`。 - 更多信息,请参见[下载 OpenAPI 规范](/tidb-cloud/data-service-manage-data-app.md#下载-openapi-规范)。 + 更多信息,参见 [下载 OpenAPI 规范](/tidb-cloud/data-service-manage-data-app.md#download-the-openapi-specification)。 `oas/doc.json` 文件的结构如下: @@ -139,22 +139,22 @@ SELECT * FROM test.repository; yarn run openapi-generator-cli generate -i oas/doc.json --generator-name typescript-fetch -o gen/api ``` - 此命令使用 `oas/doc.json` 规范作为输入生成客户端代码,并将客户端代码输出到 `gen/api` 目录。 + 该命令以 `oas/doc.json` 规范为输入,生成客户端代码并输出到 `gen/api` 目录。 -## 步骤 4. 开发你的 Next.js 应用程序 +## 步骤 4. 开发你的 Next.js 应用 -你可以使用生成的客户端代码开发你的 Next.js 应用程序。 +你可以使用生成的客户端代码开发 Next.js 应用。 -1. 在 `hello-repos` 项目目录中,创建一个包含以下变量的 `.env.local` 文件,然后将变量值设置为你的数据应用的公钥和私钥。 +1. 在 `hello-repos` 项目目录下,创建 `.env.local` 文件,并添加以下变量,然后将变量值设置为你的 Data App 的 public key 和 private key。 ``` TIDBCLOUD_DATA_SERVICE_PUBLIC_KEY=YOUR_PUBLIC_KEY TIDBCLOUD_DATA_SERVICE_PRIVATE_KEY=YOUR_PRIVATE_KEY ``` - 要为数据应用创建 API 密钥,请参见[创建 API 密钥](/tidb-cloud/data-service-api-key.md#创建-api-密钥)。 + 有关如何为 Data App 创建 API key,参见 [创建 API key](/tidb-cloud/data-service-api-key.md#create-an-api-key)。 -2. 在 `hello-repos` 项目目录中,用以下代码替换 `app/page.tsx` 的内容,该代码从 `GET /repositories` 端点获取数据并渲染它: +2. 在 `hello-repos` 项目目录下,将 `app/page.tsx` 的内容替换为以下代码,该代码会从 `GET /repositories` endpoint 获取数据并进行渲染: ```js import {DefaultApi, Configuration} from "../gen/api" @@ -182,7 +182,7 @@ SELECT * FROM test.repository; > **注意:** > - > 如果你的数据应用链接的集群位于不同的区域,你将在下载的 OpenAPI 规范文件的 `servers` 部分看到多个项目。在这种情况下,你还需要在 `config` 对象中配置端点路径,如下所示: + > 如果你的 Data App 关联的集群分布在不同区域,你会在下载的 OpenAPI 规范文件的 `servers` 部分看到多个项。此时,你还需要在 `config` 对象中配置 endpoint 路径,如下所示: > > ```js > const config = new Configuration({ @@ -192,18 +192,18 @@ SELECT * FROM test.repository; > }); > ``` > - > 确保将 `basePath` 替换为你的数据应用的实际端点路径。要获取 `${YOUR_REGION}` 和 `{YOUR_DATA_APP_ID}`,请查看端点**属性**面板中的**端点 URL**。 + > 请确保将 `basePath` 替换为你的 Data App 实际的 endpoint 路径。要获取 `${YOUR_REGION}` 和 `{YOUR_DATA_APP_ID}`,请在 endpoint 的 **Properties** 面板中查看 **Endpoint URL**。 -## 步骤 5. 预览你的 Next.js 应用程序 +## 步骤 5. 预览你的 Next.js 应用 > **注意:** > -> 在预览之前,请确保已安装并正确配置所有必需的依赖项。 +> 在预览前,请确保所有必需的依赖已安装并正确配置。 -要在本地开发服务器中预览你的应用程序,请运行以下命令: +要在本地开发服务器中预览你的应用,请运行以下命令: ```shell yarn dev ``` -然后,你可以在浏览器中打开 [http://localhost:3000](http://localhost:3000),看到从 `test.repository` 数据库显示的数据。 +然后你可以在浏览器中打开 [http://localhost:3000](http://localhost:3000),即可在页面上看到 `test.repository` 数据库中的数据。 \ No newline at end of file diff --git a/tidb-cloud/dedicated-external-storage.md b/tidb-cloud/dedicated-external-storage.md index cabece64dfcd4..2370da0f4d8d9 100644 --- a/tidb-cloud/dedicated-external-storage.md +++ b/tidb-cloud/dedicated-external-storage.md @@ -1,57 +1,57 @@ --- -title: 为 TiDB Cloud Dedicated 配置外部存储访问 -summary: 了解如何配置 Amazon Simple Storage Service (Amazon S3)、Google Cloud Storage (GCS) 和 Azure Blob Storage 访问。 +title: 为 TiDB Cloud 专属集群配置外部存储访问 +summary: 了解如何配置 Amazon Simple Storage Service (Amazon S3)、Google Cloud Storage (GCS) 和 Azure Blob Storage 的访问权限。 aliases: ['/tidb-cloud/config-s3-and-gcs-access'] --- -# 为 TiDB Cloud Dedicated 配置外部存储访问 +# 为 TiDB Cloud 专属集群配置外部存储访问 -如果你的源数据存储在 Amazon S3 存储桶、Azure Blob Storage 容器或 Google Cloud Storage (GCS) 存储桶中,在将数据导入或迁移到 TiDB Cloud 之前,你需要配置对这些存储桶的跨账户访问。本文档介绍如何为 TiDB Cloud Dedicated 集群进行此配置。 +如果你的源数据存储在 Amazon S3 存储桶、Azure Blob Storage 容器或 Google Cloud Storage (GCS) 存储桶中,在将数据导入或迁移到 TiDB Cloud 之前,你需要为存储桶配置跨账号访问权限。本文档介绍了如何为 TiDB Cloud 专属集群进行相关配置。 -如果你需要为 TiDB Cloud Serverless 集群配置这些外部存储,请参阅[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md)。 +如果你需要为 TiDB Cloud Serverless 集群配置这些外部存储,请参见 [为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md)。 -## 配置 Amazon S3 访问 +## 配置 Amazon S3 访问权限 -要允许 TiDB Cloud Dedicated 集群访问你的 Amazon S3 存储桶中的源数据,可以使用以下任一方法为集群配置存储桶访问: +要允许 TiDB Cloud 专属集群访问你 Amazon S3 存储桶中的源数据,可以通过以下任一方式为集群配置存储桶访问权限: -- [使用 Role ARN](#使用-role-arn-配置-amazon-s3-访问)(推荐):使用 Role ARN 访问你的 Amazon S3 存储桶。 -- [使用 AWS 访问密钥](#使用-aws-访问密钥配置-amazon-s3-访问):使用 IAM 用户的访问密钥访问你的 Amazon S3 存储桶。 +- [使用 Role ARN](#configure-amazon-s3-access-using-a-role-arn)(推荐):使用 Role ARN 访问你的 Amazon S3 存储桶。 +- [使用 AWS 访问密钥](#configure-amazon-s3-access-using-an-aws-access-key):使用 IAM 用户的访问密钥访问你的 Amazon S3 存储桶。 -### 使用 Role ARN 配置 Amazon S3 访问 +### 使用 Role ARN 配置 Amazon S3 访问权限 -按照以下步骤为 TiDB Cloud 配置存储桶访问并获取 Role ARN: +按照以下步骤为 TiDB Cloud 配置存储桶访问权限并获取 Role ARN: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,获取目标 TiDB 集群对应的 TiDB Cloud 账户 ID 和外部 ID。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,获取目标 TiDB 集群对应的 TiDB Cloud 账号 ID 和 External ID。 - 1. 导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Data** > **Import**。 - 3. 选择**从云存储导入数据**,然后点击 **Amazon S3**。 + 3. 选择 **Import data from Cloud Storage**,然后点击 **Amazon S3**。 - 4. 在**从 Amazon S3 导入数据**页面,点击 **Role ARN** 下的链接。此时会显示**添加新的 Role ARN** 对话框。 + 4. 在 **Import Data from Amazon S3** 页面,点击 **Role ARN** 下方的链接。此时会弹出 **Add New Role ARN** 对话框。 - 5. 展开**手动创建 Role ARN**以获取 TiDB Cloud 账户 ID 和 TiDB Cloud 外部 ID。记下这些 ID 以供后续使用。 + 5. 展开 **Create Role ARN manually**,获取 TiDB Cloud Account ID 和 TiDB Cloud External ID。请记录这些 ID,后续会用到。 2. 在 AWS 管理控制台中,为你的 Amazon S3 存储桶创建托管策略。 - 1. 登录 AWS 管理控制台,打开 Amazon S3 控制台:[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。 - 2. 在**存储桶**列表中,选择包含源数据的存储桶名称,然后点击**复制 ARN**以获取你的 S3 存储桶 ARN(例如,`arn:aws:s3:::tidb-cloud-source-data`)。记下存储桶 ARN 以供后续使用。 + 1. 登录 AWS 管理控制台,并打开 Amazon S3 控制台 [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。 + 2. 在 **Buckets** 列表中,选择包含源数据的存储桶名称,然后点击 **Copy ARN** 获取你的 S3 存储桶 ARN(例如,`arn:aws:s3:::tidb-cloud-source-data`)。请记录该存储桶 ARN,后续会用到。 - ![复制存储桶 ARN](/media/tidb-cloud/copy-bucket-arn.png) + ![Copy bucket ARN](/media/tidb-cloud/copy-bucket-arn.png) - 3. 打开 IAM 控制台:[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/),在左侧导航栏中点击**策略**,然后点击**创建策略**。 + 3. 打开 IAM 控制台 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/),在左侧导航栏点击 **Policies**,然后点击 **Create Policy**。 - ![创建策略](/media/tidb-cloud/aws-create-policy.png) + ![Create a policy](/media/tidb-cloud/aws-create-policy.png) - 4. 在**创建策略**页面,点击 **JSON** 选项卡。 - 5. 复制以下访问策略模板并将其粘贴到策略文本字段中。 + 4. 在 **Create policy** 页面,点击 **JSON** 标签页。 + 5. 复制以下访问策略模板,并粘贴到策略文本框中。 - ```json + ````json { "Version": "2012-10-17", "Statement": [ @@ -62,32 +62,31 @@ aliases: ['/tidb-cloud/config-s3-and-gcs-access'] "s3:GetObject", "s3:GetObjectVersion" ], - "Resource": "<你的 S3 存储桶 ARN>/<源数据目录>/*" + "Resource": "//*" }, { "Sid": "VisualEditor1", "Effect": "Allow", "Action": [ - "s3:ListBucket", - "s3:GetBucketLocation" + "s3:ListBucket" ], - "Resource": "<你的 S3 存储桶 ARN>" + "Resource": "" } ] } ``` - 在策略文本字段中,将以下配置更新为你自己的值。 + 在策略文本框中,将以下配置项替换为你自己的值。 - - `"Resource": "<你的 S3 存储桶 ARN>/<源数据目录>/*"` + - `"Resource": "//*"` - 例如,如果你的源数据存储在 `tidb-cloud-source-data` 存储桶的根目录中,使用 `"Resource": "arn:aws:s3:::tidb-cloud-source-data/*"`。如果你的源数据存储在存储桶的 `mydata` 目录中,使用 `"Resource": "arn:aws:s3:::tidb-cloud-source-data/mydata/*"`。确保在目录末尾添加 `/*`,以便 TiDB Cloud 可以访问此目录中的所有文件。 + 例如,如果你的源数据存储在 `tidb-cloud-source-data` 存储桶的根目录下,使用 `"Resource": "arn:aws:s3:::tidb-cloud-source-data/*"`。如果你的源数据存储在存储桶的 `mydata` 目录下,使用 `"Resource": "arn:aws:s3:::tidb-cloud-source-data/mydata/*"`。请确保目录末尾添加了 `/*`,以便 TiDB Cloud 能访问该目录下的所有文件。 - - `"Resource": "<你的 S3 存储桶 ARN>"` + - `"Resource": ""` 例如,`"Resource": "arn:aws:s3:::tidb-cloud-source-data"`。 - - 如果你启用了带有客户管理密钥加密的 AWS Key Management Service 密钥(SSE-KMS),请确保策略中包含以下配置。`"arn:aws:kms:ap-northeast-1:105880447796:key/c3046e91-fdfc-4f3a-acff-00597dd3801f"` 是存储桶的示例 KMS 密钥。 + - 如果你启用了 AWS Key Management Service 密钥(SSE-KMS)并使用客户自管密钥加密,请确保策略中包含以下配置。`"arn:aws:kms:ap-northeast-1:105880447796:key/c3046e91-fdfc-4f3a-acff-00597dd3801f"` 是存储桶的一个示例 KMS 密钥。 ```json { @@ -100,144 +99,144 @@ aliases: ['/tidb-cloud/config-s3-and-gcs-access'] } ``` - 如果你的存储桶中的对象是从另一个加密存储桶复制的,KMS 密钥值需要包含两个存储桶的密钥。例如,`"Resource": ["arn:aws:kms:ap-northeast-1:105880447796:key/c3046e91-fdfc-4f3a-acff-00597dd3801f","arn:aws:kms:ap-northeast-1:495580073302:key/0d7926a7-6ecc-4bf7-a9c1-a38f0faec0cd"]`。 + 如果你的存储桶中的对象是从另一个加密存储桶复制过来的,KMS 密钥值需要包含两个存储桶的密钥。例如,`"Resource": ["arn:aws:kms:ap-northeast-1:105880447796:key/c3046e91-fdfc-4f3a-acff-00597dd3801f","arn:aws:kms:ap-northeast-1:495580073302:key/0d7926a7-6ecc-4bf7-a9c1-a38f0faec0cd"]`。 - 6. 点击**下一步**。 - 7. 设置策略名称,添加策略标签(可选),然后点击**创建策略**。 + 6. 点击 **Next**。 + 7. 设置策略名称,添加策略标签(可选),然后点击 **Create policy**。 -3. 在 AWS 管理控制台中,为 TiDB Cloud 创建访问角色并获取角色 ARN。 +3. 在 AWS 管理控制台中,为 TiDB Cloud 创建访问角色并获取 role ARN。 - 1. 在 IAM 控制台 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 中,点击左侧导航栏中的**角色**,然后点击**创建角色**。 + 1. 在 IAM 控制台 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/),点击左侧导航栏的 **Roles**,然后点击 **Create role**。 - ![创建角色](/media/tidb-cloud/aws-create-role.png) + ![Create a role](/media/tidb-cloud/aws-create-role.png) - 2. 填写以下信息以创建角色: + 2. 创建角色时,填写以下信息: - - 在**可信实体类型**下,选择 **AWS 账户**。 - - 在 **AWS 账户**下,选择**其他 AWS 账户**,然后将 TiDB Cloud 账户 ID 粘贴到**账户 ID**字段中。 - - 在**选项**下,点击**需要外部 ID**以避免[混淆代理问题](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html),然后将 TiDB Cloud 外部 ID 粘贴到**外部 ID**字段中。如果创建角色时没有"需要外部 ID",任何拥有你的 S3 存储桶 URI 和 IAM 角色 ARN 的人都可能访问你的 Amazon S3 存储桶。如果创建角色时同时使用账户 ID 和外部 ID,只有在同一项目和同一区域中运行的 TiDB 集群才能访问存储桶。 + - 在 **Trusted entity type** 下选择 **AWS account**。 + - 在 **An AWS account** 下选择 **Another AWS account**,并将 TiDB Cloud account ID 粘贴到 **Account ID** 字段。 + - 在 **Options** 下,点击 **Require external ID** 以避免 [confused deputy problem](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html),然后将 TiDB Cloud External ID 粘贴到 **External ID** 字段。如果创建角色时未勾选 "Require external ID",任何拥有你 S3 存储桶 URI 和 IAM role ARN 的人都可能访问你的 Amazon S3 存储桶。如果同时配置了 account ID 和 external ID,只有运行在同一项目和同一区域的 TiDB 集群才能访问该存储桶。 - 3. 点击**下一步**打开策略列表,选择你刚刚创建的策略,然后点击**下一步**。 - 4. 在**角色详细信息**下,为角色设置名称,然后点击右下角的**创建角色**。创建角色后,将显示角色列表。 - 5. 在角色列表中,点击你刚刚创建的角色名称进入其摘要页面,然后复制角色 ARN。 + 3. 点击 **Next** 打开策略列表,选择你刚刚创建的策略,然后点击 **Next**。 + 4. 在 **Role details** 下设置角色名称,然后点击右下角的 **Create role**。角色创建完成后,会显示角色列表。 + 5. 在角色列表中,点击你刚刚创建的角色名称进入其详情页,然后复制 role ARN。 - ![复制 AWS 角色 ARN](/media/tidb-cloud/aws-role-arn.png) + ![Copy AWS role ARN](/media/tidb-cloud/aws-role-arn.png) -4. 在 TiDB Cloud 控制台中,转到获取 TiDB Cloud 账户 ID 和外部 ID 的**数据导入**页面,然后将角色 ARN 粘贴到 **Role ARN** 字段中。 +4. 回到 TiDB Cloud 控制台,在你获取 TiDB Cloud account ID 和 external ID 的 **Data Import** 页面,将 role ARN 粘贴到 **Role ARN** 字段。 -### 使用 AWS 访问密钥配置 Amazon S3 访问 +### 使用 AWS 访问密钥配置 Amazon S3 访问权限 -建议使用 IAM 用户(而不是 AWS 账户根用户)创建访问密钥。 +推荐使用 IAM 用户(而非 AWS 账号 root 用户)来创建访问密钥。 按照以下步骤配置访问密钥: -1. 创建具有以下策略的 IAM 用户: +1. 创建一个具有以下策略的 IAM 用户: - `AmazonS3ReadOnlyAccess` - [`CreateOwnAccessKeys`(必需)和 `ManageOwnAccessKeys`(可选)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html#access-keys_required-permissions) - 建议这些策略仅适用于存储源数据的存储桶。 + 建议这些策略仅对存储源数据的存储桶生效。 - 有关更多信息,请参阅[创建 IAM 用户](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html#id_users_create_console)。 + 详细信息请参见 [创建 IAM 用户](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html#id_users_create_console)。 -2. 使用你的 AWS 账户 ID 或账户别名以及 IAM 用户名和密码登录 [IAM 控制台](https://console.aws.amazon.com/iam)。 +2. 使用你的 AWS 账号 ID 或账号别名,以及 IAM 用户名和密码登录 [IAM 控制台](https://console.aws.amazon.com/iam)。 -3. 创建访问密钥。有关详细信息,请参阅[为 IAM 用户创建访问密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html#Using_CreateAccessKey)。 +3. 创建访问密钥。详细步骤请参见 [为 IAM 用户创建访问密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html#Using_CreateAccessKey)。 -> **注意:** +> **Note:** > -> TiDB Cloud 不会存储你的访问密钥。建议在导入完成后[删除访问密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html#Using_CreateAccessKey)。 +> TiDB Cloud 不会存储你的访问密钥。建议在导入完成后 [删除访问密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html#Using_CreateAccessKey)。 -## 配置 GCS 访问 +## 配置 GCS 访问权限 -要允许 TiDB Cloud 访问你的 GCS 存储桶中的源数据,你需要为存储桶配置 GCS 访问。一旦为项目中的一个 TiDB 集群完成配置,该项目中的所有 TiDB 集群都可以访问该 GCS 存储桶。 +要允许 TiDB Cloud 访问你 GCS 存储桶中的源数据,需要为存储桶配置 GCS 访问权限。项目中任意一个 TiDB 集群完成配置后,该项目下所有 TiDB 集群都可以访问该 GCS 存储桶。 -1. 在 TiDB Cloud 控制台中,获取目标 TiDB 集群的 Google Cloud 服务账户 ID。 +1. 在 TiDB Cloud 控制台获取目标 TiDB 集群的 Google Cloud Service Account ID。 - 1. 导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Data** > **Import**。 - 3. 选择**从云存储导入数据**,然后点击 **Google Cloud Storage**。 + 3. 选择 **Import data from Cloud Storage**,然后点击 **Google Cloud Storage**。 - 4. 点击**显示 Google Cloud 服务账户 ID**,然后复制服务账户 ID 以供后续使用。 + 4. 点击 **Show Google Cloud Server Account ID**,复制 Service Account ID 以备后用。 2. 在 Google Cloud 控制台中,为你的 GCS 存储桶创建 IAM 角色。 1. 登录 [Google Cloud 控制台](https://console.cloud.google.com/)。 - 2. 转到[角色](https://console.cloud.google.com/iam-admin/roles)页面,然后点击**创建角色**。 + 2. 进入 [Roles](https://console.cloud.google.com/iam-admin/roles) 页面,然后点击 **CREATE ROLE**。 - ![创建角色](/media/tidb-cloud/gcp-create-role.png) + ![Create a role](/media/tidb-cloud/gcp-create-role.png) - 3. 为角色输入名称、描述、ID 和角色启动阶段。角色名称在创建后不能更改。 - 4. 点击**添加权限**。 - 5. 为角色添加以下只读权限,然后点击**添加**。 + 3. 输入角色的名称、描述、ID 和角色发布阶段。角色名称创建后不可更改。 + 4. 点击 **ADD PERMISSIONS**。 + 5. 为角色添加以下只读权限,然后点击 **Add**。 - storage.buckets.get - storage.objects.get - storage.objects.list - 你可以将权限名称复制到**输入属性名称或值**字段作为筛选查询,然后在筛选结果中选择该名称。要添加这三个权限,你可以在权限名称之间使用 **OR**。 + 你可以将权限名称复制到 **Enter property name or value** 字段作为过滤条件,并在过滤结果中选择名称。要添加这三个权限,可以在权限名称之间使用 **OR**。 - ![添加权限](/media/tidb-cloud/gcp-add-permissions.png) + ![Add permissions](/media/tidb-cloud/gcp-add-permissions.png) -3. 转到[存储桶](https://console.cloud.google.com/storage/browser)页面,点击你希望 TiDB Cloud 访问的 GCS 存储桶的名称。 +3. 进入 [Bucket](https://console.cloud.google.com/storage/browser) 页面,点击你希望 TiDB Cloud 访问的 GCS 存储桶名称。 -4. 在**存储桶详情**页面,点击**权限**选项卡,然后点击**授予访问权限**。 +4. 在 **Bucket details** 页面,点击 **PERMISSIONS** 标签页,然后点击 **GRANT ACCESS**。 - ![授予存储桶访问权限](/media/tidb-cloud/gcp-bucket-permissions.png) + ![Grant Access to the bucket ](/media/tidb-cloud/gcp-bucket-permissions.png) -5. 填写以下信息以授予对存储桶的访问权限,然后点击**保存**。 +5. 填写以下信息以授予存储桶访问权限,然后点击 **SAVE**。 - - 在**新主体**字段中,粘贴目标 TiDB 集群的 Google Cloud 服务账户 ID。 - - 在**选择角色**下拉列表中,输入你刚刚创建的 IAM 角色名称,然后从筛选结果中选择该名称。 + - 在 **New Principals** 字段,粘贴目标 TiDB 集群的 Google Cloud Service Account ID。 + - 在 **Select a role** 下拉列表中,输入你刚刚创建的 IAM 角色名称,并在过滤结果中选择该名称。 - > **注意:** + > **Note:** > - > 要删除对 TiDB Cloud 的访问权限,你可以简单地删除你已授予的访问权限。 + > 如果需要移除 TiDB Cloud 的访问权限,只需移除你已授予的访问即可。 -6. 在**存储桶详情**页面,点击**对象**选项卡。 +6. 在 **Bucket details** 页面,点击 **OBJECTS** 标签页。 - 如果你想复制文件的 gsutil URI,选择该文件,点击**打开对象溢出菜单**,然后点击**复制 gsutil URI**。 + 如果你想复制文件的 gsutil URI,选择该文件,点击 **Open object overflow menu**,然后点击 **Copy gsutil URI**。 - ![获取存储桶 URI](/media/tidb-cloud/gcp-bucket-uri01.png) + ![Get bucket URI](/media/tidb-cloud/gcp-bucket-uri01.png) - 如果你想使用文件夹的 gsutil URI,打开该文件夹,然后点击文件夹名称后面的复制按钮以复制文件夹名称。之后,你需要在名称开头添加 `gs://`,在末尾添加 `/` 以获取文件夹的正确 URI。 + 如果你想使用文件夹的 gsutil URI,打开该文件夹,然后点击文件夹名称后面的复制按钮复制文件夹名称。之后,你需要在名称前加上 `gs://`,末尾加上 `/`,以获得正确的文件夹 URI。 - 例如,如果文件夹名称是 `tidb-cloud-source-data`,你需要使用 `gs://tidb-cloud-source-data/` 作为 URI。 + 例如,如果文件夹名称为 `tidb-cloud-source-data`,你需要使用 `gs://tidb-cloud-source-data/` 作为 URI。 - ![获取存储桶 URI](/media/tidb-cloud/gcp-bucket-uri02.png) + ![Get bucket URI](/media/tidb-cloud/gcp-bucket-uri02.png) -7. 在 TiDB Cloud 控制台中,转到获取 Google Cloud 服务账户 ID 的**数据导入**页面,然后将 GCS 存储桶 gsutil URI 粘贴到**存储桶 gsutil URI** 字段中。例如,粘贴 `gs://tidb-cloud-source-data/`。 +7. 回到 TiDB Cloud 控制台,在你获取 Google Cloud Service Account ID 的 **Data Import** 页面,将 GCS 存储桶的 gsutil URI 粘贴到 **Bucket gsutil URI** 字段。例如,粘贴 `gs://tidb-cloud-source-data/`。 -## 配置 Azure Blob Storage 访问 +## 配置 Azure Blob Storage 访问权限 -要允许 TiDB Cloud Dedicated 访问你的 Azure Blob 容器,你需要为容器配置 Azure Blob 访问。你可以使用账户 SAS 令牌配置容器访问: +要允许 TiDB Cloud 专属集群访问你的 Azure Blob 容器,需要为容器配置 Azure Blob 访问权限。你可以使用账户 SAS token 配置容器访问: -1. 在 [Azure Storage 账户](https://portal.azure.com/#browse/Microsoft.Storage%2FStorageAccounts)页面,点击容器所属的存储账户。 +1. 在 [Azure Storage account](https://portal.azure.com/#browse/Microsoft.Storage%2FStorageAccounts) 页面,点击包含目标容器的存储账户。 -2. 在存储账户的导航栏中,点击**安全性 + 网络** > **共享访问签名**。 +2. 在存储账户的导航栏中,点击 **Security + networking** > **Shared access signature**。 ![sas-position](/media/tidb-cloud/dedicated-external-storage/azure-sas-position.png) -3. 在**共享访问签名**页面,按照以下步骤创建具有必要权限的[账户 SAS 令牌](https://docs.microsoft.com/en-us/azure/storage/common/storage-sas-overview): +3. 在 **Shared access signature** 页面,按如下方式创建具有必要权限的 [account SAS token](https://docs.microsoft.com/en-us/azure/storage/common/storage-sas-overview): - 1. 在**允许的服务**下,选择**Blob**。 - 2. 在**允许的资源类型**下,选择**容器**和**对象**。 - 3. 在**允许的权限**下,选择所需的权限。例如,将数据导入到 TiDB Cloud Dedicated 需要**读取**和**列出**权限。 - 4. 根据需要调整**开始和到期日期/时间**。出于安全考虑,建议设置与数据导入时间表相符的到期日期。 - 5. 保留其他设置的默认值。 + 1. 在 **Allowed services** 下选择 **Blob**。 + 2. 在 **Allowed resource types** 下选择 **Container** 和 **Object**。 + 3. 在 **Allowed permissions** 下选择所需权限。例如,导入数据到 TiDB Cloud 专属集群需要 **Read** 和 **List**。 + 4. 根据需要调整 **Start and expiry date/time**。出于安全考虑,建议设置与数据导入时间线相符的过期时间。 + 5. 其他设置保持默认值。 ![sas-create](/media/tidb-cloud/dedicated-external-storage/azure-sas-create.png) -4. 点击**生成 SAS 和连接字符串**以生成 SAS 令牌。 +4. 点击 **Generate SAS and connection string** 生成 SAS token。 -5. 复制生成的 **SAS 令牌**。在 TiDB Cloud 中配置数据导入时,你将需要此令牌字符串。 +5. 复制生成的 **SAS Token**。在 TiDB Cloud 配置数据导入时需要用到该 token 字符串。 -> **注意:** +> **Note:** > -> 在开始数据导入之前,请测试连接和权限,以确保 TiDB Cloud Dedicated 可以访问指定的 Azure Blob 容器和文件。 +> 在开始数据导入前,请测试连接和权限,确保 TiDB Cloud 专属集群能够访问指定的 Azure Blob 容器及文件。 \ No newline at end of file diff --git a/tidb-cloud/delete-tidb-cluster.md b/tidb-cloud/delete-tidb-cluster.md index 300a04594ef1d..1a36203c0e0b5 100644 --- a/tidb-cloud/delete-tidb-cluster.md +++ b/tidb-cloud/delete-tidb-cluster.md @@ -5,38 +5,38 @@ summary: 了解如何删除 TiDB 集群。 # 删除 TiDB 集群 -本文介绍如何在 TiDB Cloud 上删除 TiDB 集群。 +本文档介绍如何在 TiDB Cloud 上删除 TiDB 集群。 -你可以随时通过执行以下步骤删除集群: +你可以随时通过以下步骤删除集群: -1. 导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 -2. 在要删除的目标集群所在行,点击 **...**。 +1. 进入你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 +2. 在你想要删除的目标集群所在行,点击 **...**。 > **提示:** > - > 或者,你也可以点击目标集群的名称进入其概览页面,然后点击右上角的 **...**。 + > 你也可以点击目标集群的名称进入其概览页面,然后点击右上角的 **...**。 -3. 在下拉菜单中点击**删除**。 -4. 在集群删除窗口中,确认删除: +3. 在下拉菜单中点击 **Delete**。 +4. 在集群删除窗口中,确认删除操作: - - 如果你至少有一个手动或自动备份,你可以看到备份数量和备份的收费政策。点击**继续**并输入 `<组织名称>/<项目名称>/<集群名称>`。 - - 如果你没有任何备份,只需输入 `<组织名称>/<项目名称>/<集群名称>`。 + - 如果你至少有一个手动或自动备份,你可以看到备份的数量以及备份的计费策略。点击 **Continue** 并输入 `//`。 + - 如果你没有任何备份,只需输入 `//`。 - 如果你想在将来某个时候恢复集群,请确保你有集群的备份。否则,你将无法再恢复它。有关如何备份 TiDB Cloud Dedicated 集群的更多信息,请参见[备份和恢复 TiDB Cloud Dedicated 数据](/tidb-cloud/backup-and-restore.md)。 + 如果你希望将来恢复该集群,请确保你已经对集群进行了备份。否则,将无法再恢复。关于如何备份 TiDB Cloud Dedicated 集群的更多信息,请参见 [Back Up and Restore TiDB Cloud Dedicated Data](/tidb-cloud/backup-and-restore.md)。 > **注意:** > - > [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless)不支持删除后恢复数据。如果你想删除 TiDB Cloud Serverless 集群并在将来恢复其数据,请参见[从 TiDB Cloud Serverless 导出数据](/tidb-cloud/serverless-export.md)以导出数据作为备份。 + > [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 在删除后不支持数据恢复。如果你想删除 TiDB Cloud Serverless 集群并在将来恢复其数据,请参见 [Export Data from TiDB Cloud Serverless](/tidb-cloud/serverless-export.md) 将你的数据导出作为备份。 -5. 点击**我明白,删除它**。 +5. 点击 **I understand, delete it**。 - 一旦已备份的 TiDB Cloud Dedicated 集群被删除,该集群的现有备份文件将被移至回收站。 + 一旦已备份的 TiDB Cloud Dedicated 集群被删除,该集群现有的备份文件会被移动到回收站。 - - 自动备份将在保留期结束后过期并自动删除。如果你不修改,默认保留期为 7 天。 - - 手动备份将保留在回收站中,直到手动删除。 + - 自动备份将在保留期结束后过期并自动删除。如果你没有修改,默认保留期为 7 天。 + - 手动备份会一直保留在回收站,直到你手动删除。 > **注意:** > - > 请注意,备份将继续产生费用,直到被删除。 + > 请注意,备份在被删除前会持续产生费用。 - 如果你想从回收站恢复 TiDB Cloud Dedicated 集群,请参见[恢复已删除的集群](/tidb-cloud/backup-and-restore.md#restore-a-deleted-cluster)。 + 如果你想从回收站恢复 TiDB Cloud Dedicated 集群,请参见 [Restore a deleted cluster](/tidb-cloud/backup-and-restore.md#restore-a-deleted-cluster)。 \ No newline at end of file diff --git a/tidb-cloud/dev-guide-bi-looker-studio.md b/tidb-cloud/dev-guide-bi-looker-studio.md index 4d073ed87fa92..3aab223db989c 100644 --- a/tidb-cloud/dev-guide-bi-looker-studio.md +++ b/tidb-cloud/dev-guide-bi-looker-studio.md @@ -1,98 +1,98 @@ --- title: 使用 Looker Studio 连接 TiDB Cloud Serverless -summary: 了解如何使用 Looker Studio 连接 TiDB Cloud Serverless。 +summary: 学习如何使用 Looker Studio 连接 TiDB Cloud Serverless。 --- # 使用 Looker Studio 连接 TiDB Cloud Serverless -TiDB 是一个兼容 MySQL 的数据库,TiDB Cloud Serverless 是一个全托管的 TiDB 服务,而 [Looker Studio](https://lookerstudio.google.com/) 是一个免费的基于 Web 的 BI 工具,可以可视化来自各种来源的数据。 +TiDB 是一个兼容 MySQL 的数据库,TiDB Cloud Serverless 是 TiDB 的全托管云服务,[Looker Studio](https://lookerstudio.google.com/) 是一款免费的基于 Web 的 BI 工具,可以可视化来自多种数据源的数据。 -在本教程中,你可以学习如何使用 Looker Studio 连接到 TiDB Cloud Serverless 集群。 +在本教程中,你将学习如何使用 Looker Studio 连接到你的 TiDB Cloud Serverless 集群。 -> **注意:** +> **Note:** > -> 本教程中的大多数步骤也适用于 TiDB Cloud Dedicated。但是,对于 TiDB Cloud Dedicated,你需要注意以下事项: -> -> - 按照[从文件导入数据到 TiDB Cloud](/tidb-cloud/tidb-cloud-migration-overview.md#import-data-from-files-to-tidb-cloud) 导入你的数据集。 -> - 按照[连接到 TiDB Cloud Dedicated](/tidb-cloud/connect-via-standard-connection.md) 获取集群的连接信息。连接到 TiDB Cloud Dedicated 时,你需要允许来自 `142.251.74.0/23` 的访问。有关来自 Looker Studio 的连接的更多信息,请参见 [Looker Studio 文档](https://support.google.com/looker-studio/answer/7088031#zippy=%2Cin-this-article)。 +> 本教程中的大多数步骤同样适用于 TiDB Cloud Dedicated。但对于 TiDB Cloud Dedicated,你需要注意以下事项: +> +> - 按照 [从文件导入数据到 TiDB Cloud](/tidb-cloud/tidb-cloud-migration-overview.md#import-data-from-files-to-tidb-cloud) 导入你的数据集。 +> - 按照 [连接到 TiDB Cloud Dedicated](/tidb-cloud/connect-via-standard-connection.md) 获取你的集群连接信息。连接 TiDB Cloud Dedicated 时,你需要允许来自 `142.251.74.0/23` 的访问。关于 Looker Studio 连接的更多信息,请参见 [Looker Studio 文档](https://support.google.com/looker-studio/answer/7088031#zippy=%2Cin-this-article)。 -## 前提条件 +## 前置条件 -要完成本教程,你需要: +完成本教程,你需要: - 一个 Google 账号 - 一个 TiDB Cloud Serverless 集群 -**如果你还没有 TiDB Cloud Serverless 集群,可以按照以下方式创建:** +**如果你还没有 TiDB Cloud Serverless 集群,可以按如下方式创建:** -- [创建 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md#step-1-create-a-tidb-cloud-serverless-cluster) +- [创建 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md#step-1-create-a-tidb-cloud-cluster) -## 步骤 1. 导入数据集 +## 第 1 步:导入数据集 -你可以导入 TiDB Cloud Serverless 交互式教程中提供的标准普尔 500 指数数据集。 +你可以导入 TiDB Cloud Serverless 交互式教程中提供的 S&P 500 数据集。 -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,点击右下角的 **?**。将显示**帮助**对话框。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击右下角的 **?**。会弹出 **Help** 对话框。 -2. 在对话框中,点击**交互式教程**,然后点击 **S&P 500 分析**。 +2. 在对话框中,点击 **Interactive Tutorials**,然后点击 **S&P 500 Analysis**。 -3. 选择你的 TiDB Cloud Serverless 集群,然后点击**导入数据集**将标准普尔 500 指数数据集导入到你的集群。 +3. 选择你的 TiDB Cloud Serverless 集群,然后点击 **Import Dataset**,将 S&P 500 数据集导入到你的集群中。 -4. 导入状态变为**已导入**后,点击**退出教程**关闭此对话框。 +4. 当导入状态变为 **IMPORTED** 后,点击 **Exit Tutorial** 关闭该对话框。 -如果在导入过程中遇到任何问题,你可以按照以下方式取消此导入任务: +如果在导入过程中遇到任何问题,你可以按如下方式取消该导入任务: -1. 在[**集群**](https://tidbcloud.com/project/clusters)页面,点击你的 TiDB Cloud Serverless 集群的名称进入其概览页面。 -2. 在左侧导航栏中,点击**数据** > **导入**。 -3. 找到名为 **sp500-insight** 的导入任务,点击**操作**列中的 **...**,然后点击**取消**。 +1. 在 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击你的 TiDB Cloud Serverless 集群名称,进入集群概览页面。 +2. 在左侧导航栏,点击 **Data** > **Import**。 +3. 找到名为 **sp500-insight** 的导入任务,在 **Action** 列点击 **...**,然后点击 **Cancel**。 -## 步骤 2. 获取集群的连接信息 +## 第 2 步:获取集群连接信息 -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群名称,进入集群概览页面。 -2. 点击右上角的**连接**。将显示连接对话框。 +2. 点击右上角的 **Connect**,弹出连接对话框。 -3. 在连接对话框中,将**连接方式**设置为 `General`,然后点击**生成密码**创建随机密码。 +3. 在连接对话框中,将 **Connect With** 设置为 `General`,然后点击 **Generate Password** 生成一个随机密码。 - > **提示:** + > **Tip:** > - > 如果你之前已经创建了密码,请使用原始密码或点击**重置密码**生成新密码。 + > 如果你之前已经创建过密码,请使用原有密码,或点击 **Reset Password** 生成新密码。 -4. 下载 [CA 证书](https://letsencrypt.org/certs/isrgrootx1.pem)。 +4. 下载 [CA cert](https://letsencrypt.org/certs/isrgrootx1.pem)。 - > **提示:** + > **Tip:** > - > TiDB Cloud Serverless 要求客户端和集群之间建立安全的 TLS 连接,因此你需要在 Looker Studio 的连接设置中使用此 CA 证书。 + > TiDB Cloud Serverless 要求客户端与集群之间建立安全的 TLS 连接,因此你需要在 Looker Studio 的连接设置中使用该 CA 证书。 -## 步骤 3. 使用 Looker Studio 连接到 TiDB 集群 +## 第 3 步:使用 Looker Studio 连接 TiDB 集群 -1. 登录 [Looker Studio](https://lookerstudio.google.com/),然后在左侧导航栏中点击**创建** > **报告**。 +1. 登录 [Looker Studio](https://lookerstudio.google.com/),在左侧导航栏点击 **Create** > **Report**。 -2. 在显示的页面上,搜索并选择 **MySQL** 连接器,然后点击**授权**。 +2. 在弹出页面中,搜索并选择 **MySQL** 连接器,然后点击 **AUTHORIZE**。 -3. 在**基本**设置面板中,配置连接参数。 +3. 在 **BASIC** 设置面板中,配置连接参数。 - - **主机名或 IP**:输入 TiDB Cloud Serverless 连接对话框中的 `HOST` 参数。 - - **端口(可选)**:输入 TiDB Cloud Serverless 连接对话框中的 `PORT` 参数。 - - **数据库**:输入要连接的数据库。对于本教程,输入 `sp500insight`。 - - **用户名**:输入 TiDB Cloud Serverless 连接对话框中的 `USERNAME` 参数。 - - **密码**:输入 TiDB Cloud Serverless 连接对话框中的 `PASSWORD` 参数。 - - **启用 SSL**:选中此选项,然后点击 **MySQL SSL 客户端配置文件**右侧的上传图标,上传从[步骤 2](#步骤-2-获取集群的连接信息) 下载的 CA 文件。 + - **Host Name or IP**:输入 TiDB Cloud Serverless 连接对话框中的 `HOST` 参数。 + - **Port(Optional)**:输入 TiDB Cloud Serverless 连接对话框中的 `PORT` 参数。 + - **Database**:输入你要连接的数据库。本教程中输入 `sp500insight`。 + - **Username**:输入 TiDB Cloud Serverless 连接对话框中的 `USERNAME` 参数。 + - **Password**:输入 TiDB Cloud Serverless 连接对话框中的 `PASSWORD` 参数。 + - **Enable SSL**:勾选该选项,然后点击 **MySQL SSL Client Configuration Files** 右侧的上传图标,上传在 [第 2 步](#step-2-get-the-connection-information-for-your-cluster) 下载的 CA 文件。 - ![Looker Studio:为 TiDB Cloud Serverless 配置连接设置](/media/tidb-cloud/looker-studio-configure-connection.png) + ![Looker Studio: configure connection settings for TiDB Cloud Serverless](/media/tidb-cloud/looker-studio-configure-connection.png) -4. 点击**验证**。 +4. 点击 **AUTHENTICATE**。 -如果验证成功,你可以看到数据库中的表。 +如果认证成功,你可以看到数据库中的表。 -## 步骤 4. 创建简单图表 +## 第 4 步:创建一个简单的图表 -现在,你可以使用 TiDB 集群作为数据源,并使用数据创建简单的图表。 +现在,你可以将 TiDB 集群作为数据源,基于数据创建一个简单的图表。 -1. 在右侧面板中,点击**自定义查询**。 +1. 在右侧面板点击 **CUSTOM QUERY**。 - ![Looker Studio:自定义查询](/media/tidb-cloud/looker-studio-custom-query.png) + ![Looker Studio: custom query](/media/tidb-cloud/looker-studio-custom-query.png) -2. 将以下代码复制到**输入自定义查询**区域,然后点击右下角的**添加**。 +2. 将以下代码复制到 **Enter Custom Query** 区域,然后点击右下角的 **Add**。 ```sql SELECT sector, @@ -108,30 +108,30 @@ TiDB 是一个兼容 MySQL 的数据库,TiDB Cloud Serverless 是一个全托 ORDER BY 5 ASC; ``` - 如果看到**你即将向此报告添加数据**对话框,请点击**添加到报告**。然后,报告中将显示一个表格。 + 如果弹出 **You are about to add data to this report** 对话框,点击 **ADD TO REPORT**。随后,报表中会显示一个表格。 -3. 在报告的工具栏中,点击**添加图表**,然后在 `折线图` 类别中选择 `组合图表`。 +3. 在报表工具栏点击 **Add a chart**,然后在 `Line` 分类下选择 `Combo chart`。 -4. 在右侧的**图表**设置面板中,配置以下参数: +4. 在右侧 **Chart** 设置面板,配置以下参数: - - 在**设置**标签页中: - - **维度**:`sector`。 - - **指标**:`companies` 和 `total_market_cap`。 - - 在**样式**标签页中: - - 系列 #1:选择 `折线图` 选项和 `右` 轴。 - - 系列 #2:选择 `柱状图` 选项和 `左` 轴。 - - 其他字段保持默认值。 + - 在 **SETUP** 标签页: + - **Dimension**:`sector` + - **Metric**:`companies` 和 `total_market_cap` + - 在 **STYLE** 标签页: + - Series #1:选择 `Line` 选项并设置为 `Right` 轴 + - Series #2:选择 `Bars` 选项并设置为 `Left` 轴 + - 其他字段保持默认 -然后,你可以看到类似如下的组合图表: +此时,你可以看到类似如下的组合图表: -![Looker Studio:简单的组合图表](/media/tidb-cloud/looker-studio-simple-chart.png) +![Looker Studio: A simple Combo chart](/media/tidb-cloud/looker-studio-simple-chart.png) -## 下一步 +## 后续步骤 -- 从 [Looker Studio 帮助](https://support.google.com/looker-studio)了解更多 Looker Studio 的用法。 -- 通过[开发者指南](/develop/dev-guide-overview.md)中的章节了解 TiDB 应用程序开发的最佳实践,例如[插入数据](/develop/dev-guide-insert-data.md)、[更新数据](/develop/dev-guide-update-data.md)、[删除数据](/develop/dev-guide-delete-data.md)、[单表读取](/develop/dev-guide-get-data-from-single-table.md)、[事务](/develop/dev-guide-transaction-overview.md)和 [SQL 性能优化](/develop/dev-guide-optimize-sql-overview.md)。 -- 通过专业的 [TiDB 开发者课程](https://www.pingcap.com/education/)学习,并在通过考试后获得 [TiDB 认证](https://www.pingcap.com/education/certification/)。 +- 通过 [Looker Studio 帮助中心](https://support.google.com/looker-studio) 学习更多 Looker Studio 的用法。 +- 通过 [开发者指南](/develop/dev-guide-overview.md) 中的各章节,学习 TiDB 应用开发的最佳实践,例如 [插入数据](/develop/dev-guide-insert-data.md)、[更新数据](/develop/dev-guide-update-data.md)、[删除数据](/develop/dev-guide-delete-data.md)、[单表读取](/develop/dev-guide-get-data-from-single-table.md)、[事务](/develop/dev-guide-transaction-overview.md) 和 [SQL 性能优化](/develop/dev-guide-optimize-sql-overview.md)。 +- 通过专业的 [TiDB 开发者课程](https://www.pingcap.com/education/) 学习,并在通过考试后获得 [TiDB 认证](https://www.pingcap.com/education/certification/)。 ## 需要帮助? -在 [Discord](https://discord.gg/DQZ2dy3cuc?utm_source=doc) 或 [Slack](https://slack.tidb.io/invite?team=tidb-community&channel=everyone&ref=pingcap-docs) 上询问社区,或[提交支持工单](https://tidb.support.pingcap.com/)。 +欢迎在 [Discord](https://discord.gg/DQZ2dy3cuc?utm_source=doc) 或 [Slack](https://slack.tidb.io/invite?team=tidb-community&channel=everyone&ref=pingcap-docs) 社区提问,或 [提交支持工单](https://tidb.support.pingcap.com/)。 \ No newline at end of file diff --git a/tidb-cloud/dev-guide-wordpress.md b/tidb-cloud/dev-guide-wordpress.md index 94d7340694414..05ccf38bede03 100644 --- a/tidb-cloud/dev-guide-wordpress.md +++ b/tidb-cloud/dev-guide-wordpress.md @@ -1,108 +1,108 @@ --- title: 使用 WordPress 连接 TiDB Cloud Serverless -summary: 了解如何使用 TiDB Cloud Serverless 运行 WordPress。本教程提供分步指导,帮助你在几分钟内运行 WordPress + TiDB Cloud Serverless。 +summary: 学习如何使用 TiDB Cloud Serverless 运行 WordPress。本教程将为你提供分步指导,让你在几分钟内运行 WordPress + TiDB Cloud Serverless。 --- # 使用 WordPress 连接 TiDB Cloud Serverless -TiDB 是一个兼容 MySQL 的数据库,TiDB Cloud Serverless 是一个全托管的 TiDB 产品,而 [WordPress](https://github.com/WordPress) 是一个免费的开源内容管理系统(CMS),让用户可以创建和管理网站。WordPress 使用 PHP 编写,并使用 MySQL 数据库。 +TiDB 是一个兼容 MySQL 的数据库,TiDB Cloud Serverless 是一个全托管的 TiDB 云服务,[WordPress](https://github.com/WordPress) 是一个免费的开源内容管理系统(CMS),允许用户创建和管理网站。WordPress 使用 PHP 编写,并使用 MySQL 数据库。 在本教程中,你可以学习如何免费使用 TiDB Cloud Serverless 运行 WordPress。 -> **注意:** +> **Note:** > -> 除了 TiDB Cloud Serverless 外,本教程也适用于 TiDB Cloud Dedicated 和 TiDB Self-Managed 集群。但是,为了成本效益,强烈建议使用 TiDB Cloud Serverless 运行 WordPress。 +> 除了 TiDB Cloud Serverless,本教程同样适用于 TiDB Cloud Dedicated 和 TiDB 自建集群。但强烈推荐使用 TiDB Cloud Serverless 来运行 WordPress,以获得更高的性价比。 -## 前提条件 +## 前置条件 -要完成本教程,你需要: +完成本教程,你需要: -- 一个 TiDB Cloud Serverless 集群。如果你还没有,请按照[创建 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md)创建你自己的 TiDB Cloud 集群。 +- 一个 TiDB Cloud Serverless 集群。如果你还没有集群,请按照[创建 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md)来创建属于你自己的 TiDB Cloud 集群。 ## 使用 TiDB Cloud Serverless 运行 WordPress -本节演示如何使用 TiDB Cloud Serverless 运行 WordPress。 +本节将演示如何使用 TiDB Cloud Serverless 运行 WordPress。 -### 步骤 1:克隆 WordPress 示例仓库 +### 第 1 步:克隆 WordPress 示例仓库 -在终端窗口中运行以下命令来克隆示例代码仓库: +在终端窗口中运行以下命令,克隆示例代码仓库: ```shell git clone https://github.com/Icemap/wordpress-tidb-docker.git cd wordpress-tidb-docker ``` -### 步骤 2:安装依赖 +### 第 2 步:安装依赖 -1. 示例仓库需要 [Docker](https://www.docker.com/) 和 [Docker Compose](https://docs.docker.com/compose/) 来启动 WordPress。如果你已经安装了它们,可以跳过这一步。强烈建议在 Linux 环境(如 Ubuntu)中运行你的 WordPress。运行以下命令安装 Docker 和 Docker Compose: +1. 示例仓库需要 [Docker](https://www.docker.com/) 和 [Docker Compose](https://docs.docker.com/compose/) 来启动 WordPress。如果你已经安装了它们,可以跳过此步骤。强烈建议在 Linux 环境(如 Ubuntu)下运行 WordPress。运行以下命令安装 Docker 和 Docker Compose: ```shell sudo sh install.sh ``` -2. 示例仓库包含 [TiDB 兼容性插件](https://github.com/pingcap/wordpress-tidb-plugin)作为子模块。运行以下命令更新子模块: +2. 示例仓库包含了 [TiDB Compatibility Plugin](https://github.com/pingcap/wordpress-tidb-plugin) 作为子模块。运行以下命令更新子模块: ```shell git submodule update --init --recursive ``` -### 步骤 3:配置连接信息 +### 第 3 步:配置连接信息 -配置 WordPress 数据库与 TiDB Cloud Serverless 的连接。 +配置 WordPress 数据库连接到 TiDB Cloud Serverless。 -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群的名称,进入其概览页面。 -2. 点击右上角的**连接**。将显示连接对话框。 +2. 点击右上角的 **Connect**。此时会弹出连接对话框。 -3. 确保连接对话框中的配置与你的操作环境匹配。 +3. 确保连接对话框中的配置与你的操作环境一致。 - - **连接类型**设置为 `Public`。 - - **连接工具**设置为 `WordPress`。 - - **操作系统**设置为 `Debian/Ubuntu/Arch`。 - - **数据库**设置为你想要使用的数据库—例如 `test`。 + - **Connection Type** 设置为 `Public`。 + - **Connect With** 设置为 `WordPress`。 + - **Operating System** 设置为 `Debian/Ubuntu/Arch`。 + - **Database** 设置为你想要使用的数据库,例如 `test`。 -4. 点击**生成密码**创建随机密码。 +4. 点击 **Generate Password** 生成一个随机密码。 - > **提示:** + > **Tip:** > - > 如果你之前已经创建了密码,你可以使用原始密码或点击**重置密码**生成新密码。 + > 如果你之前已经创建过密码,可以继续使用原有密码,或者点击 **Reset Password** 生成新密码。 -5. 运行以下命令复制 `.env.example` 并将其重命名为 `.env`: +5. 运行以下命令,将 `.env.example` 复制并重命名为 `.env`: ```shell cp .env.example .env ``` -6. 将相应的连接字符串复制并粘贴到 `.env` 文件中。示例结果如下: +6. 将对应的连接字符串复制粘贴到 `.env` 文件中。示例结果如下: ```dotenv - TIDB_HOST='{HOST}' # 例如 gateway01.ap-northeast-1.prod.aws.tidbcloud.com + TIDB_HOST='{HOST}' # e.g. gateway01.ap-northeast-1.prod.aws.tidbcloud.com TIDB_PORT='4000' - TIDB_USER='{USERNAME}' # 例如 xxxxxx.root + TIDB_USER='{USERNAME}' # e.g. xxxxxx.root TIDB_PASSWORD='{PASSWORD}' TIDB_DB_NAME='test' ``` - 请确保将占位符 `{}` 替换为从连接对话框获得的连接参数。默认情况下,你的 TiDB Cloud Serverless 附带一个 `test` 数据库。如果你已经在 TiDB Cloud Serverless 集群中创建了另一个数据库,你可以将 `test` 替换为你的数据库名称。 + 请务必将 `{}` 占位符替换为你在连接对话框中获得的连接参数。默认情况下,你的 TiDB Cloud Serverless 集群自带一个 `test` 数据库。如果你已经在 TiDB Cloud Serverless 集群中创建了其他数据库,可以将 `test` 替换为你的数据库名。 7. 保存 `.env` 文件。 -### 步骤 4:使用 TiDB Cloud Serverless 启动 WordPress +### 第 4 步:使用 TiDB Cloud Serverless 启动 WordPress -1. 执行以下命令将 WordPress 作为 Docker 容器运行: +1. 执行以下命令,将 WordPress 作为 Docker 容器运行: ```shell docker compose up -d ``` -2. 如果你在本地机器上启动容器,请访问 [localhost](http://localhost/) 设置你的 WordPress 站点;如果 WordPress 在远程机器上运行,请访问 `http://`。 +2. 通过访问 [localhost](http://localhost/)(如果你在本地机器上启动容器)或 `http://`(如果 WordPress 运行在远程机器上)来设置你的 WordPress 站点。 -### 步骤 5:确认数据库连接 +### 第 5 步:确认数据库连接 -1. 在 TiDB Cloud 控制台上关闭集群的连接对话框,并打开 **SQL 编辑器**页面。 -2. 在左侧的**模式**标签下,点击你连接到 WordPress 的数据库。 -3. 确认你现在可以在该数据库的表列表中看到 WordPress 表(如 `wp_posts` 和 `wp_comments`)。 +1. 在 TiDB Cloud 控制台关闭集群的连接对话框,并打开 **SQL Editor** 页面。 +2. 在左侧的 **Schemas** 标签下,点击你连接到 WordPress 的数据库。 +3. 确认你现在可以在该数据库的表列表中看到 WordPress 的表(如 `wp_posts` 和 `wp_comments`)。 ## 需要帮助? -在 [Discord](https://discord.gg/DQZ2dy3cuc?utm_source=doc) 或 [Slack](https://slack.tidb.io/invite?team=tidb-community&channel=everyone&ref=pingcap-docs) 上询问社区,或[提交支持工单](https://tidb.support.pingcap.com/)。 +欢迎在 [Discord](https://discord.gg/DQZ2dy3cuc?utm_source=doc) 或 [Slack](https://slack.tidb.io/invite?team=tidb-community&channel=everyone&ref=pingcap-docs) 社区提问,或[提交支持工单](https://tidb.support.pingcap.com/)。 \ No newline at end of file diff --git a/tidb-cloud/explore-data-with-chat2query.md b/tidb-cloud/explore-data-with-chat2query.md index e53013d560042..38a0ea6e27002 100644 --- a/tidb-cloud/explore-data-with-chat2query.md +++ b/tidb-cloud/explore-data-with-chat2query.md @@ -1,88 +1,88 @@ --- -title: 使用 AI 辅助 SQL 编辑器探索数据 -summary: 了解如何在 TiDB Cloud 控制台中使用 AI 辅助 SQL 编辑器,以最大化数据价值。 +title: 使用 AI 辅助 SQL 编辑器探索你的数据 +summary: 了解如何在 TiDB Cloud 控制台中使用 AI 辅助 SQL 编辑器,最大化你的数据价值。 --- -# 使用 AI 辅助 SQL 编辑器探索数据 +# 使用 AI 辅助 SQL 编辑器探索你的数据 -你可以使用 [TiDB Cloud 控制台](https://tidbcloud.com/) 中内置的 AI 辅助 SQL 编辑器来最大化数据价值。 +你可以在 [TiDB Cloud 控制台](https://tidbcloud.com/)中使用内置的 AI 辅助 SQL 编辑器,最大化你的数据价值。 -在 SQL 编辑器中,你可以手动编写 SQL 查询,也可以在 macOS 上按 + I(或在 Windows 或 Linux 上按 Control + I)来指示 [Chat2Query (beta)](/tidb-cloud/tidb-cloud-glossary.md#chat2query) 自动生成 SQL 查询。这使你无需本地 SQL 客户端即可对数据库运行 SQL 查询。你可以直观地以表格或图表形式查看查询结果,并轻松查看查询日志。 +在 SQL 编辑器中,你可以手动编写 SQL 查询,或者只需在 macOS 上按下 + I(或在 Windows 或 Linux 上按下 Control + I),即可指示 [Chat2Query (beta)](/tidb-cloud/tidb-cloud-glossary.md#chat2query) 自动生成 SQL 查询。这样,你无需本地 SQL 客户端即可对数据库运行 SQL 查询。你可以直观地在表格或图表中查看查询结果,并轻松检查查询日志。 ## 使用场景 -SQL 编辑器的推荐使用场景如下: +SQL 编辑器推荐的使用场景如下: -- 利用 Chat2Query 的 AI 功能即时生成、调试或重写复杂的 SQL 查询。 +- 利用 Chat2Query 的 AI 能力,快速生成、调试或重写复杂的 SQL 查询。 - 快速测试 TiDB 的 MySQL 兼容性。 -- 使用自己的数据集轻松探索 TiDB 中的 SQL 功能。 +- 使用你自己的数据集,轻松探索 TiDB 的 SQL 特性。 ## 限制 -- AI 生成的 SQL 查询可能不是 100% 准确,你可能需要对其进行优化。 -- SQL 编辑器仅支持 v6.5.0 或更高版本且托管在 AWS 上的 TiDB 集群。 -- SQL 编辑器默认适用于 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。要在 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群上使用 SQL 编辑器和 Chat2Query,请联系 [TiDB Cloud 支持团队](/tidb-cloud/tidb-cloud-support.md)。 +- AI 生成的 SQL 查询可能并非 100% 准确,你可能需要对其进行完善。 +- SQL 编辑器仅支持部署在 AWS 上、版本为 v6.5.0 及以上的 TiDB 集群。 +- SQL 编辑器默认对 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群开放。若要在 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群上使用 SQL 编辑器和 Chat2Query,请联系 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 ## 访问 SQL 编辑器 -1. 转到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 +1. 进入你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 -2. 点击集群名称,然后在左侧导航栏中点击 **SQL 编辑器**。 +2. 点击你的集群名称,然后在左侧导航栏点击 **SQL Editor**。 > **注意:** > - > 在以下情况下,**SQL 编辑器**入口显示为灰色且不可点击: + > 在以下情况下,**SQL Editor** 入口会显示为灰色且不可点击。 > - > - 你的 TiDB Cloud Dedicated 集群版本早于 v6.5.0。要使用 SQL 编辑器,你需要联系 [TiDB Cloud 支持团队](/tidb-cloud/tidb-cloud-support.md)升级集群。 - > - 你的 TiDB Cloud Dedicated 集群刚刚创建,SQL 编辑器的运行环境仍在准备中。在这种情况下,等待几分钟后 Chat2Query 就会可用。 - > - 你的 TiDB Cloud Dedicated 集群已[暂停](/tidb-cloud/pause-or-resume-tidb-cluster.md)。 + > - 你的 TiDB Cloud Dedicated 集群版本低于 v6.5.0。若要使用 SQL 编辑器,你需要联系 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md) 升级你的集群。 + > - 你的 TiDB Cloud Dedicated 集群刚刚创建,SQL 编辑器的运行环境仍在准备中。此时请等待几分钟,Chat2Query 即可使用。 + > - 你的 TiDB Cloud Dedicated 集群已被 [暂停](/tidb-cloud/pause-or-resume-tidb-cluster.md)。 ## 启用或禁用 AI 生成 SQL 查询 -PingCAP 将用户数据的隐私和安全视为首要任务。SQL 编辑器中的 Chat2Query AI 功能只需要访问数据库架构来生成 SQL 查询,而不需要访问你的数据本身。更多信息,请参见 [Chat2Query 隐私常见问题](https://www.pingcap.com/privacy-policy/privacy-chat2query)。 +PingCAP 将用户数据的隐私和安全放在首位。SQL 编辑器中 Chat2Query 的 AI 能力仅需访问数据库 schema 以生成 SQL 查询,不会访问你的数据本身。更多信息请参见 [Chat2Query 隐私常见问题](https://www.pingcap.com/privacy-policy/privacy-chat2query)。 -当你首次访问 Chat2Query 时,会出现一个对话框,询问是否允许 PingCAP 和 Amazon Bedrock 使用你的代码片段来研究和改进服务。 +首次访问 Chat2Query 时,你会看到一个对话框,询问是否允许 PingCAP 和 Amazon Bedrock 使用你的代码片段进行服务研究和改进。 -- 要启用 AI 生成 SQL 查询,选中复选框并点击**保存并开始使用**。 -- 要禁用 AI 生成 SQL 查询,直接关闭此对话框。 +- 若要启用 AI 生成 SQL 查询,勾选复选框并点击 **Save and Get Started**。 +- 若要禁用 AI 生成 SQL 查询,直接关闭该对话框即可。 -首次访问后,你仍然可以按照以下方式更改 AI 设置: +首次访问后,你仍可按如下方式更改 AI 设置: -- 要启用 AI,点击 Chat2Query 右上角的**启用 AI 功能进行数据探索**。 -- 要禁用 AI,点击 [TiDB Cloud 控制台](https://tidbcloud.com/) 左下角的 ,点击**账户设置**,点击 **AI 和隐私**标签,然后禁用 **AI 驱动的数据探索**选项。 +- 启用 AI:在 Chat2Query 右上角点击 **Enable AI power for data exploration**。 +- 禁用 AI:在 [TiDB Cloud 控制台](https://tidbcloud.com/)左下角点击 ,点击 **Account Settings**,切换到 **AI & Privacy** 标签页,然后关闭 **AI-powered Data Exploration** 选项。 -## 编写和运行 SQL 查询 +## 编写并运行 SQL 查询 -在 SQL 编辑器中,你可以使用自己的数据集编写和运行 SQL 查询。 +在 SQL 编辑器中,你可以使用你自己的数据集编写并运行 SQL 查询。 1. 编写 SQL 查询。
- 对于 macOS: + 针对 macOS: - - 如果启用了 AI,只需按 **⌘ + I** 后输入你的指令并按 **Enter** 键,即可让 AI 自动生成 SQL 查询。 + - 如果已启用 AI,只需按下 **⌘ + I**,输入你的指令并按 **Enter**,即可让 AI 自动生成 SQL 查询。 - 对于 Chat2Query 生成的 SQL 查询,点击**接受**以接受查询并继续编辑。如果查询不符合你的要求,点击**放弃**以拒绝它。或者,点击**重新生成**以从 Chat2Query 请求新的查询。 + 对于 Chat2Query 生成的 SQL 查询,点击 **Accept** 接受该查询并继续编辑。如果查询不符合你的需求,点击 **Discard** 拒绝该查询。你也可以点击 **Regenerate** 让 Chat2Query 重新生成查询。 - - 如果禁用了 AI,手动编写 SQL 查询。 + - 如果未启用 AI,则手动编写 SQL 查询。
- 对于 Windows 或 Linux: + 针对 Windows 或 Linux: - - 如果启用了 AI,只需按 **Ctrl + I** 后输入你的指令并按 **Enter** 键,即可让 AI 自动生成 SQL 查询。 + - 如果已启用 AI,只需按下 **Ctrl + I**,输入你的指令并按 **Enter**,即可让 AI 自动生成 SQL 查询。 - 对于 Chat2Query 生成的 SQL 查询,点击**接受**以接受查询并继续编辑。如果查询不符合你的要求,点击**放弃**以拒绝它。或者,点击**重新生成**以从 Chat2Query 请求新的查询。 + 对于 Chat2Query 生成的 SQL 查询,点击 **Accept** 接受该查询并继续编辑。如果查询不符合你的需求,点击 **Discard** 拒绝该查询。你也可以点击 **Regenerate** 让 Chat2Query 重新生成查询。 - - 如果禁用了 AI,手动编写 SQL 查询。 + - 如果未启用 AI,则手动编写 SQL 查询。
@@ -92,99 +92,99 @@ PingCAP 将用户数据的隐私和安全视为首要任务。SQL 编辑器中
- 对于 macOS: + 针对 macOS: - - 如果编辑器中只有一个查询,要运行它,按 **⌘ + Enter** 或点击 **运行**。 + - 如果编辑器中只有一个查询,按 **⌘ + Enter** 或点击 **Run** 即可运行。 - - 如果编辑器中有多个查询,要按顺序运行其中一个或多个查询,用光标选择目标查询的行,然后按 **⌘ + Enter** 或点击**运行**。 + - 如果编辑器中有多个查询,想要顺序运行其中一个或多个,选中目标查询的行,然后按 **⌘ + Enter** 或点击 **Run**。 - - 要按顺序运行编辑器中的所有查询,按 **⇧ + ⌘ + Enter**,或用光标选择所有查询的行并点击**运行**。 + - 若要顺序运行编辑器中的所有查询,按 **⇧ + ⌘ + Enter**,或选中所有查询的行后点击 **Run**。
- 对于 Windows 或 Linux: + 针对 Windows 或 Linux: - - 如果编辑器中只有一个查询,要运行它,按 **Ctrl + Enter** 或点击 **运行**。 + - 如果编辑器中只有一个查询,按 **Ctrl + Enter** 或点击 **Run** 即可运行。 - - 如果编辑器中有多个查询,要按顺序运行其中一个或多个查询,用光标选择目标查询的行,然后按 **Ctrl + Enter** 或点击**运行**。 + - 如果编辑器中有多个查询,想要顺序运行其中一个或多个,选中目标查询的行,然后按 **Ctrl + Enter** 或点击 **Run**。 - - 要按顺序运行编辑器中的所有查询,按 **Shift + Ctrl + Enter**,或用光标选择所有查询的行并点击**运行**。 + - 若要顺序运行编辑器中的所有查询,按 **Shift + Ctrl + Enter**,或选中所有查询的行后点击 **Run**。
-运行查询后,你可以立即在页面底部看到查询日志和结果。 +运行查询后,你可以在页面底部立即看到查询日志和结果。 > **注意:** > -> 返回结果的大小限制为 8 MiB。 +> 返回结果有 8 MiB 的大小限制。 ## 使用 Chat2Query 重写 SQL 查询 -在 SQL 编辑器中,你可以使用 Chat2Query 重写现有的 SQL 查询,以优化性能、修复错误或满足其他特定要求。 +在 SQL 编辑器中,你可以使用 Chat2Query 重写已有的 SQL 查询,以优化性能、修复错误或满足其他特定需求。 -1. 用光标选择要重写的 SQL 查询行。 +1. 用光标选中你想要重写的 SQL 查询行。 -2. 使用操作系统对应的键盘快捷键调用 Chat2Query 进行重写: +2. 按照你的操作系统,使用快捷键调用 Chat2Query 进行重写: - - macOS 上按 + I - - Windows 或 Linux 上按 Control + I + - macOS 上为 + I + - Windows 或 Linux 上为 Control + I - 提供指令后按 **Enter** 键让 AI 处理重写。 + 输入你的指令后按 **Enter**,让 AI 进行重写。 -3. 调用 Chat2Query 后,你可以看到建议的重写内容和以下选项: +3. 调用 Chat2Query 后,你会看到建议的重写内容以及以下选项: - - **接受**:点击此项以接受建议的重写并继续编辑。 - - **放弃**:如果建议的重写不符合你的期望,点击此项。 - - **重新生成**:点击此项以根据你的反馈或额外指令从 Chat2Query 请求另一个重写。 + - **Accept**:点击此项接受建议的重写并继续编辑。 + - **Discard**:如果建议的重写不符合你的预期,点击此项拒绝。 + - **Regenerate**:根据你的反馈或补充指令,点击此项让 Chat2Query 重新生成重写内容。 > **注意:** > -> Chat2Query 使用 AI 算法来提供优化和修正建议。建议在最终确定查询之前仔细审查这些建议。 +> Chat2Query 使用 AI 算法提供优化和修正建议。建议你在最终确定查询前,仔细审核这些建议。 ## 管理 SQL 文件 -在 SQL 编辑器中,你可以将 SQL 查询保存在不同的 SQL 文件中,并按以下方式管理 SQL 文件: +在 SQL 编辑器中,你可以将 SQL 查询保存在不同的 SQL 文件中,并按如下方式管理 SQL 文件: -- 要添加 SQL 文件,点击 **SQL 文件**标签上的 **+**。 -- 要重命名 SQL 文件,将光标移到文件名上,点击文件名旁边的 **...**,然后选择**重命名**。 -- 要删除 SQL 文件,将光标移到文件名上,点击文件名旁边的 **...**,然后选择**删除**。注意,当 **SQL 文件**标签上只有一个 SQL 文件时,你无法删除它。 +- 新增 SQL 文件:点击 **SQL Files** 标签页上的 **+**。 +- 重命名 SQL 文件:将光标移到文件名上,点击文件名旁的 **...**,然后选择 **Rename**。 +- 删除 SQL 文件:将光标移到文件名上,点击文件名旁的 **...**,然后选择 **Delete**。注意,当 **SQL Files** 标签页上只有一个 SQL 文件时,无法删除该文件。 ## 通过 API 访问 Chat2Query -除了通过 UI 访问 Chat2Query 外,你还可以通过 API 访问 Chat2Query。要实现这一点,你需要先创建一个 Chat2Query Data App。 +除了通过 UI 访问 Chat2Query,你还可以通过 API 访问 Chat2Query。为此,你需要先创建一个 Chat2Query Data App。 -在 Chat2Query 中,你可以按以下方式访问或创建 Chat2Query Data App: +在 Chat2Query 中,你可以按如下方式访问或创建 Chat2Query Data App: -1. 点击右上角的 **...**,然后点击**通过 API 访问 Chat2Query**。 -2. 在显示的对话框中,执行以下操作之一: +1. 点击右上角的 **...**,然后点击 **Access Chat2Query via API**。 +2. 在弹出的对话框中,执行以下操作之一: - - 要创建新的 Chat2Query Data App,点击**新建 Chat2Query Data App**。 - - 要访问现有的 Chat2Query Data App,点击目标 Data App 的名称。 + - 创建新的 Chat2Query Data App,点击 **New Chat2Query Data App**。 + - 访问已有的 Chat2Query Data App,点击目标 Data App 的名称。 -更多信息,请参见[开始使用 Chat2Query API](/tidb-cloud/use-chat2query-api.md)。 +更多信息请参见 [Get started with Chat2Query API](/tidb-cloud/use-chat2query-api.md)。 -## 从 SQL 文件生成端点 +## 从 SQL 文件生成接口 -对于 TiDB 集群,TiDB Cloud 提供了 [Data Service (beta)](/tidb-cloud/data-service-overview.md) 功能,使你能够使用自定义 API 端点通过 HTTPS 请求访问 TiDB Cloud 数据。在 SQL 编辑器中,你可以通过以下步骤从 SQL 文件生成 Data Service (beta) 的端点: +对于 TiDB 集群,TiDB Cloud 提供了 [Data Service (beta)](/tidb-cloud/data-service-overview.md) 功能,使你可以通过自定义 API endpoint 以 HTTPS 请求访问 TiDB Cloud 数据。在 SQL 编辑器中,你可以通过以下步骤从 SQL 文件生成 Data Service (beta) 的接口: -1. 将光标移到文件名上,点击文件名旁边的 **...**,然后选择**生成端点**。 -2. 在**生成端点**对话框中,选择要为其生成端点的 Data App 并输入端点名称。 -3. 点击**生成**。端点生成后,将显示其详细信息页面。 +1. 将光标移到文件名上,点击文件名旁的 **...**,然后选择 **Generate endpoint**。 +2. 在 **Generate endpoint** 对话框中,选择你要为其生成接口的 Data App,并输入接口名称。 +3. 点击 **Generate**。接口生成后会显示其详情页。 -更多信息,请参见[管理端点](/tidb-cloud/data-service-manage-endpoint.md)。 +更多信息请参见 [Manage an endpoint](/tidb-cloud/data-service-manage-endpoint.md)。 ## 管理 SQL 编辑器设置 在 SQL 编辑器中,你可以更改以下设置: -- 查询结果中的最大行数 -- 是否在**架构**标签上显示系统数据库架构 +- 查询结果的最大行数 +- 是否在 **Schemas** 标签页显示系统数据库 schema -要更改设置,请执行以下步骤: +更改设置的步骤如下: -1. 在 **SQL 编辑器**右上角,点击 **...** 并选择**设置**。 +1. 在 **SQL Editor** 右上角点击 **...** 并选择 **Settings**。 2. 根据需要更改设置。 -3. 点击**保存**。 +3. 点击 **Save**。 \ No newline at end of file diff --git a/tidb-cloud/get-started-with-cli.md b/tidb-cloud/get-started-with-cli.md index f30c09ddb83d1..261b28fc84342 100644 --- a/tidb-cloud/get-started-with-cli.md +++ b/tidb-cloud/get-started-with-cli.md @@ -5,26 +5,26 @@ summary: 了解如何通过 TiDB Cloud CLI 管理 TiDB Cloud 资源。 # TiDB Cloud CLI 快速入门 -TiDB Cloud 提供命令行界面(CLI)[`ticloud`](https://github.com/tidbcloud/tidbcloud-cli),让你可以通过几行命令在终端中与 TiDB Cloud 交互。例如,你可以使用 `ticloud` 轻松执行以下操作: +TiDB Cloud 提供了一个命令行界面(CLI)[`ticloud`](https://github.com/tidbcloud/tidbcloud-cli),你可以通过在终端输入几行命令与 TiDB Cloud 进行交互。例如,你可以使用 `ticloud` 轻松完成以下操作: - 创建、删除和列出你的集群。 -- 向集群导入数据。 -- 从集群导出数据。 +- 向你的集群导入数据。 +- 从你的集群导出数据。 -> **注意:** +> **Note:** > > TiDB Cloud CLI 目前处于 beta 阶段。 ## 开始之前 -- 拥有 TiDB Cloud 账户。如果没有,请[注册免费试用](https://tidbcloud.com/free-trial)。 +- 拥有一个 TiDB Cloud 账号。如果你还没有账号,请[注册免费试用](https://tidbcloud.com/free-trial)。 ## 安装
-对于 macOS 或 Linux,你可以使用以下任一方法安装 `ticloud`: +对于 macOS 或 Linux,你可以通过以下任意一种方式安装 `ticloud`: - 通过脚本安装(推荐) @@ -40,13 +40,13 @@ TiDB Cloud 提供命令行界面(CLI)[`ticloud`](https://github.com/tidbclou - 手动安装 - 从[发布页面](https://github.com/tidbcloud/tidbcloud-cli/releases/latest)下载预编译的二进制文件,并将其复制到所需的安装位置。 + 从 [releases](https://github.com/tidbcloud/tidbcloud-cli/releases/latest) 页面下载预编译的二进制文件,并将其复制到你希望安装的位置。 - 在 GitHub Actions 中安装 - 要在 GitHub Action 中设置 `ticloud`,请使用 [`setup-tidbcloud-cli`](https://github.com/tidbcloud/setup-tidbcloud-cli)。 + 如果需要在 GitHub Action 中设置 `ticloud`,请使用 [`setup-tidbcloud-cli`](https://github.com/tidbcloud/setup-tidbcloud-cli)。 -如果你没有 MySQL 命令行客户端,请安装它。你可以通过包管理器安装: +如果你还没有安装 MySQL 命令行客户端,可以通过包管理器进行安装: - 基于 Debian 的发行版: @@ -70,54 +70,54 @@ TiDB Cloud 提供命令行界面(CLI)[`ticloud`](https://github.com/tidbclou
-对于 Windows,你可以使用以下任一方法安装 `ticloud`: +对于 Windows,你可以通过以下任意一种方式安装 `ticloud`: - 手动安装 - 从[发布页面](https://github.com/tidbcloud/tidbcloud-cli/releases/latest)下载预编译的二进制文件,并将其复制到所需的安装位置。 + 从 [releases](https://github.com/tidbcloud/tidbcloud-cli/releases/latest) 页面下载预编译的二进制文件,并将其复制到你希望安装的位置。 - 在 GitHub Actions 中安装 - 要在 GitHub Actions 中设置 `ticloud`,请使用 [`setup-tidbcloud-cli`](https://github.com/tidbcloud/setup-tidbcloud-cli)。 + 如果需要在 GitHub Actions 中设置 `ticloud`,请使用 [`setup-tidbcloud-cli`](https://github.com/tidbcloud/setup-tidbcloud-cli)。 -如果你没有 MySQL 命令行客户端,请安装它。你可以参考 [MySQL Installer for Windows](https://dev.mysql.com/doc/refman/8.0/en/mysql-installer.html) 中的安装说明。要在 Windows 上启动 `ticloud connect`,你需要将包含 `mysql.exe` 的目录添加到 PATH 环境变量中。 +如果你还没有安装 MySQL 命令行客户端,可以参考 [MySQL Installer for Windows](https://dev.mysql.com/doc/refman/8.0/en/mysql-installer.html) 中的安装说明。在 Windows 上启动 `ticloud connect` 时,你需要将包含 `mysql.exe` 的目录添加到 PATH 环境变量中。
## 快速入门 -[TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 是开始使用 TiDB Cloud 的最佳方式。在本节中,你将学习如何使用 TiDB Cloud CLI 创建 TiDB Cloud Serverless 集群。 +[TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 是体验 TiDB Cloud 的最佳方式。本节将介绍如何使用 TiDB Cloud CLI 创建一个 TiDB Cloud Serverless 集群。 ### 创建用户配置文件或登录 TiDB Cloud -在使用 TiDB Cloud CLI 创建集群之前,你需要创建用户配置文件或登录 TiDB Cloud。 +在使用 TiDB Cloud CLI 创建集群之前,你需要先创建用户配置文件或登录 TiDB Cloud。 -- 使用你的 [TiDB Cloud API 密钥](https://docs.pingcap.com/tidbcloud/api/v1beta#section/Authentication/API-Key-Management)创建用户配置文件: +- 使用你的 [TiDB Cloud API key](https://docs.pingcap.com/tidbcloud/api/v1beta#section/Authentication/API-Key-Management) 创建用户配置文件: ```shell ticloud config create ``` - > **警告:** + > **Warning:** > - > 配置文件名称**不能**包含 `.`。 + > 配置文件名 **MUST NOT** 包含 `.`。 -- 通过身份验证登录 TiDB Cloud: +- 通过认证登录 TiDB Cloud: ```shell ticloud auth login ``` - 登录成功后,OAuth 令牌将分配给当前配置文件。如果不存在配置文件,令牌将分配给名为 `default` 的配置文件。 + 登录成功后,OAuth token 会分配给当前配置文件。如果没有配置文件,token 会分配给名为 `default` 的配置文件。 -> **注意:** +> **Note:** > -> 在上述两种方法中,TiDB Cloud API 密钥优先于 OAuth 令牌。如果两者都可用,将使用 API 密钥。 +> 在上述两种方式中,TiDB Cloud API key 的优先级高于 OAuth token。如果两者都存在,将优先使用 API key。 ### 创建 TiDB Cloud Serverless 集群 -要创建 TiDB Cloud Serverless 集群,请输入以下命令,然后按照 CLI 提示提供所需信息: +要创建 TiDB Cloud Serverless 集群,输入以下命令,并根据 CLI 提示填写所需信息: ```shell ticloud serverless create @@ -131,13 +131,13 @@ ticloud serverless create ticloud --help ``` -验证你是否使用最新版本: +验证你当前使用的是否为最新版本: ```shell ticloud version ``` -如果不是,请更新到最新版本: +如果不是最新版本,请更新到最新版: ```shell ticloud update @@ -159,16 +159,16 @@ tiup cloud --help tiup cloud serverless create ``` -通过 TiUP 更新到最新版本: +通过 TiUP 更新到最新版: ```shell tiup update cloud ``` -## 下一步 +## 后续操作 -查看 [CLI 参考](/tidb-cloud/cli-reference.md)以探索 TiDB Cloud CLI 的更多功能。 +查阅 [CLI 参考](/tidb-cloud/cli-reference.md) 以探索 TiDB Cloud CLI 的更多功能。 ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建[议题](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时也欢迎任何贡献。 \ No newline at end of file diff --git a/tidb-cloud/import-csv-files-serverless.md b/tidb-cloud/import-csv-files-serverless.md index 20867ed405d91..1ca4c6df5c9fc 100644 --- a/tidb-cloud/import-csv-files-serverless.md +++ b/tidb-cloud/import-csv-files-serverless.md @@ -1,61 +1,61 @@ --- title: 从 Amazon S3、GCS、Azure Blob Storage 或阿里云 OSS 导入 CSV 文件到 TiDB Cloud Serverless -summary: 了解如何从 Amazon S3、GCS、Azure Blob Storage 或阿里云对象存储服务(OSS)导入 CSV 文件到 TiDB Cloud Serverless。 +summary: 了解如何将 CSV 文件从 Amazon S3、GCS、Azure Blob Storage 或阿里云对象存储服务(OSS)导入到 TiDB Cloud Serverless。 --- # 从 Amazon S3、GCS、Azure Blob Storage 或阿里云 OSS 导入 CSV 文件到 TiDB Cloud Serverless -本文档描述如何从 Amazon Simple Storage Service (Amazon S3)、Google Cloud Storage (GCS)、Azure Blob Storage 或阿里云对象存储服务(OSS)导入 CSV 文件到 TiDB Cloud Serverless。 +本文档介绍如何将 CSV 文件从 Amazon Simple Storage Service(Amazon S3)、Google Cloud Storage(GCS)、Azure Blob Storage 或阿里云对象存储服务(OSS)导入到 TiDB Cloud Serverless。 ## 限制 -- 为确保数据一致性,TiDB Cloud Serverless 仅允许将 CSV 文件导入到空表中。如果要将数据导入到已包含数据的现有表中,你可以按照本文档将数据导入到临时空表中,然后使用 `INSERT SELECT` 语句将数据复制到目标现有表中。 +- 为保证数据一致性,TiDB Cloud Serverless 仅允许将 CSV 文件导入到空表中。若需要将数据导入到已存在且包含数据的表中,你可以按照本文档的步骤,先将数据导入到一个临时空表中,然后使用 `INSERT SELECT` 语句将数据复制到目标表。 -## 步骤 1. 准备 CSV 文件 +## 第 1 步:准备 CSV 文件 -1. 如果 CSV 文件大于 256 MB,建议将其拆分为较小的文件,每个文件大小约为 256 MB。 +1. 如果单个 CSV 文件大于 256 MB,建议将其拆分为多个小文件,每个文件大小约为 256 MB。 - TiDB Cloud Serverless 支持导入非常大的 CSV 文件,但在处理大小约为 256 MB 的多个输入文件时性能最佳。这是因为 TiDB Cloud Serverless 可以并行处理多个文件,从而大大提高导入速度。 + TiDB Cloud Serverless 支持导入非常大的 CSV 文件,但在多个约 256 MB 的输入文件时性能最佳。这是因为 TiDB Cloud Serverless 可以并行处理多个文件,从而大幅提升导入速度。 -2. 按以下方式命名 CSV 文件: +2. 按如下方式命名 CSV 文件: - - 如果 CSV 文件包含整个表的所有数据,请按 `${db_name}.${table_name}.csv` 格式命名文件,导入数据时将映射到 `${db_name}.${table_name}` 表。 - - 如果一个表的数据分散在多个 CSV 文件中,请在这些 CSV 文件后附加数字后缀。例如,`${db_name}.${table_name}.000001.csv` 和 `${db_name}.${table_name}.000002.csv`。数字后缀可以不连续但必须按升序排列。你还需要在数字前添加额外的零以确保所有后缀长度相同。 - - TiDB Cloud Serverless 支持导入以下格式的压缩文件:`.gzip`、`.gz`、`.zstd`、`.zst` 和 `.snappy`。如果要导入压缩的 CSV 文件,请按 `${db_name}.${table_name}.${suffix}.csv.${compress}` 格式命名文件,其中 `${suffix}` 是可选的,可以是任何整数,如 '000001'。例如,如果要将 `trips.000001.csv.gz` 文件导入到 `bikeshare.trips` 表,你需要将文件重命名为 `bikeshare.trips.000001.csv.gz`。 + - 如果一个 CSV 文件包含了整个表的所有数据,文件名应采用 `${db_name}.${table_name}.csv` 格式,导入时会映射到 `${db_name}.${table_name}` 表。 + - 如果一个表的数据被拆分为多个 CSV 文件,应在这些文件名后添加数字后缀。例如,`${db_name}.${table_name}.000001.csv` 和 `${db_name}.${table_name}.000002.csv`。数字后缀可以不连续,但必须递增,并且需要在数字前补零以保证所有后缀长度一致。 + - TiDB Cloud Serverless 支持导入以下格式的压缩文件:`.gzip`、`.gz`、`.zstd`、`.zst` 和 `.snappy`。如果你需要导入压缩的 CSV 文件,文件名应采用 `${db_name}.${table_name}.${suffix}.csv.${compress}` 格式,其中 `${suffix}` 可选,可以是任意整数如 '000001'。例如,如果你想将 `trips.000001.csv.gz` 文件导入到 `bikeshare.trips` 表,需要将文件重命名为 `bikeshare.trips.000001.csv.gz`。 > **注意:** > - > - 为获得更好的性能,建议将每个压缩文件的大小限制在 100 MiB 以内。 - > - Snappy 压缩文件必须采用[官方 Snappy 格式](https://github.com/google/snappy)。不支持其他变体的 Snappy 压缩。 - > - 对于未压缩的文件,如果在某些情况下无法按照上述规则更新 CSV 文件名(例如,CSV 文件链接也被其他程序使用),你可以保持文件名不变,并在[步骤 4](#步骤-4-将-csv-文件导入到-tidb-cloud-serverless) 中使用**映射设置**将源数据导入到单个目标表。 + > - 为获得更好的性能,建议每个压缩文件大小限制在 100 MiB。 + > - Snappy 压缩文件必须为 [官方 Snappy 格式](https://github.com/google/snappy)。不支持其他 Snappy 压缩变体。 + > - 对于未压缩的文件,如果你在某些场景下无法按照上述规则修改 CSV 文件名(例如,CSV 文件链接也被其他程序使用),可以保持文件名不变,并在 [第 4 步](#step-4-import-csv-files) 的 **Mapping Settings** 中将源数据导入到单一目标表。 -## 步骤 2. 创建目标表架构 +## 第 2 步:创建目标表结构 -由于 CSV 文件不包含架构信息,在将数据从 CSV 文件导入到 TiDB Cloud Serverless 之前,你需要使用以下任一方法创建表架构: +由于 CSV 文件不包含表结构信息,在将 CSV 文件数据导入 TiDB Cloud Serverless 之前,你需要通过以下任一方式创建表结构: -- 方法 1:在 TiDB Cloud Serverless 中,为源数据创建目标数据库和表。 +- 方式一:在 TiDB Cloud Serverless 中,为你的源数据创建目标数据库和数据表。 -- 方法 2:在存放 CSV 文件的 Amazon S3、GCS、Azure Blob Storage 或阿里云对象存储服务目录中,按以下方式为源数据创建目标表架构文件: +- 方式二:在存放 CSV 文件的 Amazon S3、GCS、Azure Blob Storage 或阿里云对象存储服务目录下,为你的源数据创建目标表结构文件: - 1. 为源数据创建数据库架构文件。 + 1. 为你的源数据创建数据库结构文件。 - 如果你的 CSV 文件遵循[步骤 1](#步骤-1-准备-csv-文件) 中的命名规则,则数据库架构文件对数据导入是可选的。否则,数据库架构文件是必需的。 + 如果你的 CSV 文件遵循 [第 1 步](#step-1-prepare-the-csv-files) 的命名规则,则数据库结构文件在数据导入时为可选项。否则,数据库结构文件为必需项。 - 每个数据库架构文件必须采用 `${db_name}-schema-create.sql` 格式,并包含一个 `CREATE DATABASE` DDL 语句。通过此文件,TiDB Cloud Serverless 将在导入数据时创建 `${db_name}` 数据库来存储数据。 + 每个数据库结构文件必须采用 `${db_name}-schema-create.sql` 格式,并包含一个 `CREATE DATABASE` DDL 语句。通过该文件,TiDB Cloud Serverless 会在导入数据时创建 `${db_name}` 数据库以存储你的数据。 - 例如,如果你创建一个包含以下语句的 `mydb-scehma-create.sql` 文件,TiDB Cloud Serverless 将在导入数据时创建 `mydb` 数据库。 + 例如,如果你创建了一个包含如下语句的 `mydb-scehma-create.sql` 文件,TiDB Cloud Serverless 会在导入数据时创建 `mydb` 数据库。 ```sql CREATE DATABASE mydb; ``` - 2. 为源数据创建表架构文件。 + 2. 为你的源数据创建数据表结构文件。 - 如果你没有在存放 CSV 文件的 Amazon S3、GCS、Azure Blob Storage 或阿里云对象存储服务目录中包含表架构文件,TiDB Cloud Serverless 在导入数据时将不会为你创建相应的表。 + 如果你没有在存放 CSV 文件的 Amazon S3、GCS、Azure Blob Storage 或阿里云对象存储服务目录下包含表结构文件,TiDB Cloud Serverless 在导入数据时不会为你创建相应的数据表。 - 每个表架构文件必须采用 `${db_name}.${table_name}-schema.sql` 格式,并包含一个 `CREATE TABLE` DDL 语句。通过此文件,TiDB Cloud Serverless 将在导入数据时在 `${db_name}` 数据库中创建 `${db_table}` 表。 + 每个表结构文件必须采用 `${db_name}.${table_name}-schema.sql` 格式,并包含一个 `CREATE TABLE` DDL 语句。通过该文件,TiDB Cloud Serverless 会在导入数据时在 `${db_name}` 数据库中创建 `${db_table}` 表。 - 例如,如果你创建一个包含以下语句的 `mydb.mytable-schema.sql` 文件,TiDB Cloud Serverless 将在导入数据时在 `mydb` 数据库中创建 `mytable` 表。 + 例如,如果你创建了一个包含如下语句的 `mydb.mytable-schema.sql` 文件,TiDB Cloud Serverless 会在导入数据时在 `mydb` 数据库中创建 `mytable` 表。 ```sql CREATE TABLE mytable ( @@ -66,248 +66,252 @@ summary: 了解如何从 Amazon S3、GCS、Azure Blob Storage 或阿里云对象 > **注意:** > - > 每个 `${db_name}.${table_name}-schema.sql` 文件应该只包含一个 DDL 语句。如果文件包含多个 DDL 语句,只有第一个语句会生效。 + > 每个 `${db_name}.${table_name}-schema.sql` 文件只能包含一个 DDL 语句。如果文件中包含多个 DDL 语句,只有第一个会生效。 -## 步骤 3. 配置跨账户访问 +## 第 3 步:配置跨账号访问 -要允许 TiDB Cloud Serverless 访问 Amazon S3、GCS、Azure Blob Storage 或阿里云对象存储服务存储桶中的 CSV 文件,请执行以下操作之一: +为了让 TiDB Cloud Serverless 能够访问 Amazon S3、GCS、Azure Blob Storage 或阿里云对象存储服务桶中的 CSV 文件,请按以下方式操作: -- 如果你的 CSV 文件位于 Amazon S3 中,[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#配置-amazon-s3-访问)。 +- 如果你的 CSV 文件位于 Amazon S3,[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#configure-amazon-s3-access)。 - 你可以使用 AWS 访问密钥或 Role ARN 来访问存储桶。完成后,请记下访问密钥(包括访问密钥 ID 和密钥)或 Role ARN 值,因为你将在[步骤 4](#步骤-4-将-csv-文件导入到-tidb-cloud-serverless) 中需要它。 + 你可以使用 AWS 访问密钥或 Role ARN 访问你的桶。配置完成后,请记录访问密钥(包括访问密钥 ID 和密钥访问密钥)或 Role ARN 值,后续在 [第 4 步](#step-4-import-csv-files) 中会用到。 -- 如果你的 CSV 文件位于 GCS 中,[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#配置-gcs-访问)。 +- 如果你的 CSV 文件位于 GCS,[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#configure-gcs-access)。 -- 如果你的 CSV 文件位于 Azure Blob Storage 中,[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#配置-azure-blob-storage-访问)。 +- 如果你的 CSV 文件位于 Azure Blob Storage,[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#configure-azure-blob-storage-access)。 -- 如果你的 CSV 文件位于阿里云对象存储服务(OSS)中,[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#配置阿里云对象存储服务-oss-访问)。 +- 如果你的 CSV 文件位于阿里云对象存储服务(OSS),[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#configure-alibaba-cloud-object-storage-service-oss-access)。 -## 步骤 4. 将 CSV 文件导入到 TiDB Cloud Serverless +## 第 4 步:导入 CSV 文件 -要将 CSV 文件导入到 TiDB Cloud Serverless,请执行以下步骤: +要将 CSV 文件导入到 TiDB Cloud Serverless,请按照以下步骤操作:
-1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的 [**集群**](https://tidbcloud.com/project/clusters) 页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入你的项目 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 选择**从云存储导入数据**,然后点击 **Amazon S3**。 +2. 点击 **Import data from Cloud Storage**。 -3. 在**从 Amazon S3 导入数据**页面,为源 CSV 文件提供以下信息: +3. 在 **Import Data from Cloud Storage** 页面,填写以下信息: - - **导入文件数量**:根据需要选择**单个文件**或**多个文件**。 - - **包含架构文件**:此字段仅在导入多个文件时可见。如果源文件夹包含目标表架构,选择**是**。否则,选择**否**。 - - **数据格式**:选择 **CSV**。 - - **文件 URI** 或**文件夹 URI**: - - 导入单个文件时,按以下格式输入源文件 URI 和名称 `s3://[bucket_name]/[data_source_folder]/[file_name].csv`。例如,`s3://sampledata/ingest/TableName.01.csv`。 - - 导入多个文件时,按以下格式输入源文件 URI 和名称 `s3://[bucket_name]/[data_source_folder]/`。例如,`s3://sampledata/ingest/`。 - - **存储桶访问**:你可以使用 AWS Role ARN 或 AWS 访问密钥来访问存储桶。更多信息,请参见[配置 Amazon S3 访问](/tidb-cloud/serverless-external-storage.md#配置-amazon-s3-访问)。 + - **Storage Provider**:选择 **Amazon S3**。 + - **Source Files URI**: + - 导入单个文件时,输入源文件 URI,格式为 `s3://[bucket_name]/[data_source_folder]/[file_name].csv`。例如:`s3://sampledata/ingest/TableName.01.csv`。 + - 导入多个文件时,输入源文件夹 URI,格式为 `s3://[bucket_name]/[data_source_folder]/`。例如:`s3://sampledata/ingest/`。 + - **Credential**:你可以使用 AWS Role ARN 或 AWS 访问密钥访问你的桶。更多信息参见 [Configure Amazon S3 access](/tidb-cloud/serverless-external-storage.md#configure-amazon-s3-access)。 - **AWS Role ARN**:输入 AWS Role ARN 值。 - - **AWS 访问密钥**:输入 AWS 访问密钥 ID 和 AWS 密钥。 + - **AWS Access Key**:输入 AWS 访问密钥 ID 和 AWS 密钥访问密钥。 -4. 点击**连接**。 +4. 点击 **Next**。 -5. 在**目标**部分,选择目标数据库和表。 +5. 在 **Destination Mapping** 部分,指定源文件与目标表的映射方式。 - 导入多个文件时,你可以使用**高级设置** > **映射设置**为每个目标表及其对应的 CSV 文件定义自定义映射规则。之后,将使用提供的自定义映射规则重新扫描数据源文件。 + 当 **Source Files URI** 指定为目录时,默认勾选 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项。 - 在**源文件 URI 和名称**中输入源文件 URI 和名称时,确保其格式为 `s3://[bucket_name]/[data_source_folder]/[file_name].csv`。例如,`s3://sampledata/ingest/TableName.01.csv`。 + > **注意:** + > + > 当 **Source Files URI** 指定为单个文件时,不显示 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项,TiDB Cloud 会自动将 **Source** 字段填充为文件名。此时你只需选择目标数据库和表进行数据导入。 - 你还可以使用通配符来匹配源文件。例如: + - 若希望 TiDB Cloud 自动将所有遵循 [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) 的源文件映射到对应表,保持该选项勾选,并选择 **CSV** 作为数据格式。 - - `s3://[bucket_name]/[data_source_folder]/my-data?.csv`:该文件夹中以 `my-data` 开头后跟一个字符的所有 CSV 文件(如 `my-data1.csv` 和 `my-data2.csv`)将导入到同一个目标表中。 + - 若需手动配置映射规则,将你的源 CSV 文件与目标数据库和表关联,取消勾选该选项,然后填写以下字段: - - `s3://[bucket_name]/[data_source_folder]/my-data*.csv`:该文件夹中以 `my-data` 开头的所有 CSV 文件将导入到同一个目标表中。 + - **Source**:输入文件名模式,格式为 `[file_name].csv`。例如:`TableName.01.csv`。你也可以使用通配符匹配多个文件,仅支持 `*` 和 `?` 通配符。 - 注意,仅支持 `?` 和 `*`。 + - `my-data?.csv`:匹配所有以 `my-data` 开头,后跟单个字符的 CSV 文件,如 `my-data1.csv` 和 `my-data2.csv`。 + - `my-data*.csv`:匹配所有以 `my-data` 开头的 CSV 文件,如 `my-data-2023.csv` 和 `my-data-final.csv`。 - > **注意:** - > - > URI 必须包含数据源文件夹。 + - **Target Database** 和 **Target Table**:选择要导入数据的目标数据库和表。 + +6. 点击 **Next**。TiDB Cloud 会相应扫描源文件。 -6. 点击**开始导入**。 +7. 审查扫描结果,检查发现的数据文件及其对应的目标表,然后点击 **Start Import**。 -7. 当导入进度显示**已完成**时,检查导入的表。 +8. 当导入进度显示 **Completed** 时,检查已导入的数据表。
-1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的 [**集群**](https://tidbcloud.com/project/clusters) 页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入你的项目 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 选择**从云存储导入数据**,然后点击 **Google Cloud Storage**。 +2. 点击 **Import data from Cloud Storage**。 -3. 在**从 Google Cloud Storage 导入数据**页面,为源 CSV 文件提供以下信息: +3. 在 **Import Data from Cloud Storage** 页面,填写以下信息: - - **导入文件数量**:根据需要选择**单个文件**或**多个文件**。 - - **包含架构文件**:此字段仅在导入多个文件时可见。如果源文件夹包含目标表架构,选择**是**。否则,选择**否**。 - - **数据格式**:选择 **CSV**。 - - **文件 URI** 或**文件夹 URI**: - - 导入单个文件时,按以下格式输入源文件 URI 和名称 `[gcs|gs]://[bucket_name]/[data_source_folder]/[file_name].csv`。例如,`[gcs|gs]://sampledata/ingest/TableName.01.csv`。 - - 导入多个文件时,按以下格式输入源文件 URI 和名称 `[gcs|gs]://[bucket_name]/[data_source_folder]/`。例如,`[gcs|gs]://sampledata/ingest/`。 - - **存储桶访问**:你可以使用服务账号密钥来访问存储桶。更多信息,请参见[配置 GCS 访问](/tidb-cloud/serverless-external-storage.md#配置-gcs-访问)。 + - **Storage Provider**:选择 **Google Cloud Storage**。 + - **Source Files URI**: + - 导入单个文件时,输入源文件 URI,格式为 `[gcs|gs]://[bucket_name]/[data_source_folder]/[file_name].csv`。例如:`[gcs|gs]://sampledata/ingest/TableName.01.csv`。 + - 导入多个文件时,输入源文件夹 URI,格式为 `[gcs|gs]://[bucket_name]/[data_source_folder]/`。例如:`[gcs|gs]://sampledata/ingest/`。 + - **Credential**:你可以使用 GCS IAM Role Service Account key 访问你的桶。更多信息参见 [Configure GCS access](/tidb-cloud/serverless-external-storage.md#configure-gcs-access)。 -4. 点击**连接**。 +4. 点击 **Next**。 -5. 在**目标**部分,选择目标数据库和表。 +5. 在 **Destination Mapping** 部分,指定源文件与目标表的映射方式。 - 导入多个文件时,你可以使用**高级设置** > **映射设置**为每个目标表及其对应的 CSV 文件定义自定义映射规则。之后,将使用提供的自定义映射规则重新扫描数据源文件。 + 当 **Source Files URI** 指定为目录时,默认勾选 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项。 - 在**源文件 URI 和名称**中输入源文件 URI 和名称时,确保其格式为 `[gcs|gs]://[bucket_name]/[data_source_folder]/[file_name].csv`。例如,`[gcs|gs]://sampledata/ingest/TableName.01.csv`。 + > **注意:** + > + > 当 **Source Files URI** 指定为单个文件时,不显示 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项,TiDB Cloud 会自动将 **Source** 字段填充为文件名。此时你只需选择目标数据库和表进行数据导入。 - 你还可以使用通配符来匹配源文件。例如: + - 若希望 TiDB Cloud 自动将所有遵循 [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) 的源文件映射到对应表,保持该选项勾选,并选择 **CSV** 作为数据格式。 - - `[gcs|gs]://[bucket_name]/[data_source_folder]/my-data?.csv`:该文件夹中以 `my-data` 开头后跟一个字符的所有 CSV 文件(如 `my-data1.csv` 和 `my-data2.csv`)将导入到同一个目标表中。 + - 若需手动配置映射规则,将你的源 CSV 文件与目标数据库和表关联,取消勾选该选项,然后填写以下字段: - - `[gcs|gs]://[bucket_name]/[data_source_folder]/my-data*.csv`:该文件夹中以 `my-data` 开头的所有 CSV 文件将导入到同一个目标表中。 + - **Source**:输入文件名模式,格式为 `[file_name].csv`。例如:`TableName.01.csv`。你也可以使用通配符匹配多个文件,仅支持 `*` 和 `?` 通配符。 - 注意,仅支持 `?` 和 `*`。 + - `my-data?.csv`:匹配所有以 `my-data` 开头,后跟单个字符的 CSV 文件,如 `my-data1.csv` 和 `my-data2.csv`。 + - `my-data*.csv`:匹配所有以 `my-data` 开头的 CSV 文件,如 `my-data-2023.csv` 和 `my-data-final.csv`。 - > **注意:** - > - > URI 必须包含数据源文件夹。 + - **Target Database** 和 **Target Table**:选择要导入数据的目标数据库和表。 + +6. 点击 **Next**。TiDB Cloud 会相应扫描源文件。 -6. 点击**开始导入**。 +7. 审查扫描结果,检查发现的数据文件及其对应的目标表,然后点击 **Start Import**。 -7. 当导入进度显示**已完成**时,检查导入的表。 +8. 当导入进度显示 **Completed** 时,检查已导入的数据表。
-1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的 [**集群**](https://tidbcloud.com/project/clusters) 页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入你的项目 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 选择**从云存储导入数据**,然后点击 **Azure Blob Storage**。 +2. 点击 **Import data from Cloud Storage**。 -3. 在**从 Azure Blob Storage 导入数据**页面,为源 CSV 文件提供以下信息: +3. 在 **Import Data from Cloud Storage** 页面,填写以下信息: - - **导入文件数量**:根据需要选择**单个文件**或**多个文件**。 - - **包含架构文件**:此字段仅在导入多个文件时可见。如果源文件夹包含目标表架构,选择**是**。否则,选择**否**。 - - **数据格式**:选择 **CSV**。 - - **文件 URI** 或**文件夹 URI**: - - 导入单个文件时,按以下格式输入源文件 URI 和名称 `[azure|https]://[bucket_name]/[data_source_folder]/[file_name].csv`。例如,`[azure|https]://sampledata/ingest/TableName.01.csv`。 - - 导入多个文件时,按以下格式输入源文件 URI 和名称 `[azure|https]://[bucket_name]/[data_source_folder]/`。例如,`[azure|https]://sampledata/ingest/`。 - - **存储桶访问**:你可以使用共享访问签名(SAS)令牌来访问存储桶。更多信息,请参见[配置 Azure Blob Storage 访问](/tidb-cloud/serverless-external-storage.md#配置-azure-blob-storage-访问)。 + - **Storage Provider**:选择 **Azure Blob Storage**。 + - **Source Files URI**: + - 导入单个文件时,输入源文件 URI,格式为 `[azure|https]://[bucket_name]/[data_source_folder]/[file_name].csv`。例如:`[azure|https]://sampledata/ingest/TableName.01.csv`。 + - 导入多个文件时,输入源文件夹 URI,格式为 `[azure|https]://[bucket_name]/[data_source_folder]/`。例如:`[azure|https]://sampledata/ingest/`。 + - **Credential**:你可以使用共享访问签名(SAS)令牌访问你的桶。更多信息参见 [Configure Azure Blob Storage access](/tidb-cloud/serverless-external-storage.md#configure-azure-blob-storage-access)。 -4. 点击**连接**。 +4. 点击 **Next**。 -5. 在**目标**部分,选择目标数据库和表。 +5. 在 **Destination Mapping** 部分,指定源文件与目标表的映射方式。 - 导入多个文件时,你可以使用**高级设置** > **映射设置**为每个目标表及其对应的 CSV 文件定义自定义映射规则。之后,将使用提供的自定义映射规则重新扫描数据源文件。 + 当 **Source Files URI** 指定为目录时,默认勾选 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项。 - 在**源文件 URI 和名称**中输入源文件 URI 和名称时,确保其格式为 `[azure|https]://[bucket_name]/[data_source_folder]/[file_name].csv`。例如,`[azure|https]://sampledata/ingest/TableName.01.csv`。 + > **注意:** + > + > 当 **Source Files URI** 指定为单个文件时,不显示 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项,TiDB Cloud 会自动将 **Source** 字段填充为文件名。此时你只需选择目标数据库和表进行数据导入。 - 你还可以使用通配符来匹配源文件。例如: + - 若希望 TiDB Cloud 自动将所有遵循 [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) 的源文件映射到对应表,保持该选项勾选,并选择 **CSV** 作为数据格式。 - - `[azure|https]://[bucket_name]/[data_source_folder]/my-data?.csv`:该文件夹中以 `my-data` 开头后跟一个字符的所有 CSV 文件(如 `my-data1.csv` 和 `my-data2.csv`)将导入到同一个目标表中。 + - 若需手动配置映射规则,将你的源 CSV 文件与目标数据库和表关联,取消勾选该选项,然后填写以下字段: - - `[azure|https]://[bucket_name]/[data_source_folder]/my-data*.csv`:该文件夹中以 `my-data` 开头的所有 CSV 文件将导入到同一个目标表中。 + - **Source**:输入文件名模式,格式为 `[file_name].csv`。例如:`TableName.01.csv`。你也可以使用通配符匹配多个文件,仅支持 `*` 和 `?` 通配符。 - 注意,仅支持 `?` 和 `*`。 + - `my-data?.csv`:匹配所有以 `my-data` 开头,后跟单个字符的 CSV 文件,如 `my-data1.csv` 和 `my-data2.csv`。 + - `my-data*.csv`:匹配所有以 `my-data` 开头的 CSV 文件,如 `my-data-2023.csv` 和 `my-data-final.csv`。 - > **注意:** - > - > URI 必须包含数据源文件夹。 + - **Target Database** 和 **Target Table**:选择要导入数据的目标数据库和表。 + +6. 点击 **Next**。TiDB Cloud 会相应扫描源文件。 -6. 点击**开始导入**。 +7. 审查扫描结果,检查发现的数据文件及其对应的目标表,然后点击 **Start Import**。 -7. 当导入进度显示**已完成**时,检查导入的表。 +8. 当导入进度显示 **Completed** 时,检查已导入的数据表。
-
+
-1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的 [**集群**](https://tidbcloud.com/project/clusters) 页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入你的项目 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 选择**从云存储导入数据**,然后点击**阿里云 OSS**。 +2. 点击 **Import data from Cloud Storage**。 -3. 在**从阿里云 OSS 导入数据**页面,为源 CSV 文件提供以下信息: +3. 在 **Import Data from Cloud Storage** 页面,填写以下信息: - - **导入文件数量**:根据需要选择**单个文件**或**多个文件**。 - - **包含架构文件**:此字段仅在导入多个文件时可见。如果源文件夹包含目标表架构,选择**是**。否则,选择**否**。 - - **数据格式**:选择 **CSV**。 - - **文件 URI** 或**文件夹 URI**: - - 导入单个文件时,按以下格式输入源文件 URI 和名称 `oss://[bucket_name]/[data_source_folder]/[file_name].csv`。例如,`oss://sampledata/ingest/TableName.01.csv`。 - - 导入多个文件时,按以下格式输入源文件 URI 和名称 `oss://[bucket_name]/[data_source_folder]/`。例如,`oss://sampledata/ingest/`。 - - **存储桶访问**:你可以使用 AccessKey 对来访问存储桶。更多信息,请参见[配置阿里云对象存储服务(OSS)访问](/tidb-cloud/serverless-external-storage.md#配置阿里云对象存储服务-oss-访问)。 + - **Storage Provider**:选择 **Alibaba Cloud OSS**。 + - **Source Files URI**: + - 导入单个文件时,输入源文件 URI,格式为 `oss://[bucket_name]/[data_source_folder]/[file_name].csv`。例如:`oss://sampledata/ingest/TableName.01.csv`。 + - 导入多个文件时,输入源文件夹 URI,格式为 `oss://[bucket_name]/[data_source_folder]/`。例如:`oss://sampledata/ingest/`。 + - **Credential**:你可以使用 AccessKey 对访问你的桶。更多信息参见 [Configure Alibaba Cloud Object Storage Service (OSS) access](/tidb-cloud/serverless-external-storage.md#configure-alibaba-cloud-object-storage-service-oss-access)。 -4. 点击**连接**。 +4. 点击 **Next**。 -5. 在**目标**部分,选择目标数据库和表。 +5. 在 **Destination Mapping** 部分,指定源文件与目标表的映射方式。 - 导入多个文件时,你可以使用**高级设置** > **映射设置**为每个目标表及其对应的 CSV 文件定义自定义映射规则。之后,将使用提供的自定义映射规则重新扫描数据源文件。 + 当 **Source Files URI** 指定为目录时,默认勾选 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项。 - 在**源文件 URI 和名称**中输入源文件 URI 和名称时,确保其格式为 `oss://[bucket_name]/[data_source_folder]/[file_name].csv`。例如,`oss://sampledata/ingest/TableName.01.csv`。 + > **注意:** + > + > 当 **Source Files URI** 指定为单个文件时,不显示 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项,TiDB Cloud 会自动将 **Source** 字段填充为文件名。此时你只需选择目标数据库和表进行数据导入。 - 你还可以使用通配符来匹配源文件。例如: + - 若希望 TiDB Cloud 自动将所有遵循 [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) 的源文件映射到对应表,保持该选项勾选,并选择 **CSV** 作为数据格式。 - - `oss://[bucket_name]/[data_source_folder]/my-data?.csv`:该文件夹中以 `my-data` 开头后跟一个字符的所有 CSV 文件(如 `my-data1.csv` 和 `my-data2.csv`)将导入到同一个目标表中。 + - 若需手动配置映射规则,将你的源 CSV 文件与目标数据库和表关联,取消勾选该选项,然后填写以下字段: - - `oss://[bucket_name]/[data_source_folder]/my-data*.csv`:该文件夹中以 `my-data` 开头的所有 CSV 文件将导入到同一个目标表中。 + - **Source**:输入文件名模式,格式为 `[file_name].csv`。例如:`TableName.01.csv`。你也可以使用通配符匹配多个文件,仅支持 `*` 和 `?` 通配符。 - 注意,仅支持 `?` 和 `*`。 + - `my-data?.csv`:匹配所有以 `my-data` 开头,后跟单个字符的 CSV 文件,如 `my-data1.csv` 和 `my-data2.csv`。 + - `my-data*.csv`:匹配所有以 `my-data` 开头的 CSV 文件,如 `my-data-2023.csv` 和 `my-data-final.csv`。 - > **注意:** - > - > URI 必须包含数据源文件夹。 + - **Target Database** 和 **Target Table**:选择要导入数据的目标数据库和表。 + +6. 点击 **Next**。TiDB Cloud 会相应扫描源文件。 -6. 点击**开始导入**。 +7. 审查扫描结果,检查发现的数据文件及其对应的目标表,然后点击 **Start Import**。 -7. 当导入进度显示**已完成**时,检查导入的表。 +8. 当导入进度显示 **Completed** 时,检查已导入的数据表。
-运行导入任务时,如果检测到任何不支持或无效的转换,TiDB Cloud Serverless 会自动终止导入作业并报告导入错误。 +当你运行导入任务时,如果检测到任何不支持或无效的转换,TiDB Cloud Serverless 会自动终止导入任务并报告导入错误。 -如果遇到导入错误,请执行以下操作: +如果你遇到导入错误,请按以下步骤操作: 1. 删除部分导入的表。 -2. 检查表架构文件。如果有任何错误,请更正表架构文件。 +2. 检查表结构文件,如有错误请修正。 3. 检查 CSV 文件中的数据类型。 4. 重新尝试导入任务。 -## 故障排除 +## 故障排查 ### 解决数据导入过程中的警告 -点击**开始导入**后,如果看到类似 `can't find the corresponding source files` 的警告消息,请通过提供正确的源文件、根据[数据导入命名约定](/tidb-cloud/naming-conventions-for-data-import.md)重命名现有文件或使用**高级设置**进行更改来解决此问题。 +点击 **Start Import** 后,如果你看到类似 `can't find the corresponding source files` 的警告信息,请通过提供正确的源文件、根据 [Naming Conventions for Data Import](/tidb-cloud/naming-conventions-for-data-import.md) 重命名现有文件,或使用 **Advanced Settings** 进行调整来解决。 解决这些问题后,你需要重新导入数据。 -### 导入的表中行数为零 +### 导入表中行数为零 -导入进度显示**已完成**后,检查导入的表。如果行数为零,表示没有数据文件与你输入的存储桶 URI 匹配。在这种情况下,请通过提供正确的源文件、根据[数据导入命名约定](/tidb-cloud/naming-conventions-for-data-import.md)重命名现有文件或使用**高级设置**进行更改来解决此问题。之后,重新导入这些表。 +当导入进度显示 **Completed** 后,检查已导入的数据表。如果行数为零,说明没有数据文件匹配你输入的 Bucket URI。此时,请通过提供正确的源文件、根据 [Naming Conventions for Data Import](/tidb-cloud/naming-conventions-for-data-import.md) 重命名现有文件,或使用 **Advanced Settings** 进行调整来解决。之后,重新导入这些表。 \ No newline at end of file diff --git a/tidb-cloud/import-csv-files.md b/tidb-cloud/import-csv-files.md index 65eff146427f0..225e123aee3a3 100644 --- a/tidb-cloud/import-csv-files.md +++ b/tidb-cloud/import-csv-files.md @@ -1,70 +1,68 @@ --- -title: 从云存储将 CSV 文件导入到 TiDB Cloud Dedicated -summary: 了解如何从 Amazon S3、GCS 或 Azure Blob Storage 将 CSV 文件导入到 TiDB Cloud Dedicated。 +title: 从云存储导入 CSV 文件到 TiDB Cloud 专属集群 +summary: 了解如何将 CSV 文件从 Amazon S3、GCS 或 Azure Blob Storage 导入到 TiDB Cloud 专属集群。 aliases: ['/tidbcloud/migrate-from-amazon-s3-or-gcs','/tidbcloud/migrate-from-aurora-bulk-import'] --- -# 从云存储将 CSV 文件导入到 TiDB Cloud Dedicated +# 从云存储导入 CSV 文件到 TiDB Cloud 专属集群 -本文档介绍如何从 Amazon Simple Storage Service (Amazon S3)、Google Cloud Storage (GCS) 或 Azure Blob Storage 将 CSV 文件导入到 TiDB Cloud Dedicated。 +本文档介绍如何将 CSV 文件从 Amazon Simple Storage Service(Amazon S3)、Google Cloud Storage(GCS)或 Azure Blob Storage 导入到 TiDB Cloud 专属集群。 ## 限制 -- 为确保数据一致性,TiDB Cloud 仅允许将 CSV 文件导入到空表中。如果要将数据导入到已包含数据的现有表中,你可以按照本文档将数据导入到临时空表中,然后使用 `INSERT SELECT` 语句将数据复制到目标现有表中。 +- 为确保数据一致性,TiDB Cloud 仅允许将 CSV 文件导入到空表中。若需将数据导入已存在且包含数据的表,可以按照本文档将数据导入到一个临时空表中,然后使用 `INSERT SELECT` 语句将数据复制到目标已存在的表中。 -- 如果 TiDB Cloud Dedicated 集群有[变更数据捕获](/tidb-cloud/changefeed-overview.md)或启用了[时间点恢复](/tidb-cloud/backup-and-restore.md#turn-on-point-in-time-restore),则无法向该集群导入数据(**导入数据**按钮将被禁用),因为当前的数据导入功能使用[物理导入模式](https://docs.pingcap.com/tidb/stable/tidb-lightning-physical-import-mode)。在此模式下,导入的数据不会生成变更日志,因此变更数据捕获和时间点恢复无法检测到导入的数据。 +- 如果 TiDB Cloud 专属集群已开启 [changefeed](/tidb-cloud/changefeed-overview.md) 或已启用 [Point-in-time Restore](/tidb-cloud/backup-and-restore.md#turn-on-point-in-time-restore),则无法向该集群导入数据(**Import Data** 按钮会被禁用),因为当前数据导入功能使用的是 [物理导入模式](https://docs.pingcap.com/tidb/stable/tidb-lightning-physical-import-mode)。在该模式下,导入的数据不会生成变更日志,因此 changefeed 和 Point-in-time Restore 无法检测到导入的数据。 -## 步骤 1. 准备 CSV 文件 +## 第 1 步:准备 CSV 文件 -1. 如果 CSV 文件大于 256 MB,建议将其拆分为较小的文件,每个文件大小约为 256 MB。 +1. 如果单个 CSV 文件大于 256 MB,建议将其拆分为更小的文件,每个文件大小约为 256 MB。 - TiDB Cloud 支持导入非常大的 CSV 文件,但对于大小约为 256 MB 的多个输入文件性能最佳。这是因为 TiDB Cloud 可以并行处理多个文件,这可以大大提高导入速度。 + TiDB Cloud 支持导入非常大的 CSV 文件,但在多个约 256 MB 的输入文件下性能最佳。这是因为 TiDB Cloud 可以并行处理多个文件,从而大幅提升导入速度。 -2. 按以下方式命名 CSV 文件: +2. 按如下方式命名 CSV 文件: - - 如果 CSV 文件包含整个表的所有数据,请按 `${db_name}.${table_name}.csv` 格式命名文件,该文件在导入数据时会映射到 `${db_name}.${table_name}` 表。 - - 如果一个表的数据分散在多个 CSV 文件中,请在这些 CSV 文件后面添加数字后缀。例如,`${db_name}.${table_name}.000001.csv` 和 `${db_name}.${table_name}.000002.csv`。数字后缀可以不连续,但必须按升序排列。你还需要在数字前添加额外的零,以确保所有后缀的长度相同。 - - TiDB Cloud 支持导入以下格式的压缩文件:`.gzip`、`.gz`、`.zstd`、`.zst` 和 `.snappy`。如果你想导入压缩的 CSV 文件,请按 `${db_name}.${table_name}.${suffix}.csv.${compress}` 格式命名文件,其中 `${suffix}` 是可选的,可以是任何整数,如 '000001'。例如,如果你想将 `trips.000001.csv.gz` 文件导入到 `bikeshare.trips` 表,你需要将文件重命名为 `bikeshare.trips.000001.csv.gz`。 + - 如果一个 CSV 文件包含整个表的所有数据,文件名应采用 `${db_name}.${table_name}.csv` 格式,导入时会映射到 `${db_name}.${table_name}` 表。 + - 如果一个表的数据被拆分到多个 CSV 文件中,应为这些文件添加数字后缀。例如,`${db_name}.${table_name}.000001.csv` 和 `${db_name}.${table_name}.000002.csv`。数字后缀可以不连续,但必须递增,并且需要在数字前补零以保证所有后缀长度一致。 + - TiDB Cloud 支持导入以下格式的压缩文件:`.gzip`、`.gz`、`.zstd`、`.zst` 和 `.snappy`。如果需要导入压缩的 CSV 文件,文件名应采用 `${db_name}.${table_name}.${suffix}.csv.${compress}` 格式,其中 `${suffix}` 可选,可以是任意整数如 '000001'。例如,若要将 `trips.000001.csv.gz` 文件导入到 `bikeshare.trips` 表,需要将文件重命名为 `bikeshare.trips.000001.csv.gz`。 > **注意:** > - > - 你只需要压缩数据文件,不需要压缩数据库或表结构文件。 - > - 为了获得更好的性能,建议将每个压缩文件的大小限制在 100 MiB。 - > - Snappy 压缩文件必须采用[官方 Snappy 格式](https://github.com/google/snappy)。不支持其他变体的 Snappy 压缩。 - > - 对于未压缩的文件,如果在某些情况下无法按照上述规则更新 CSV 文件名(例如,CSV 文件链接也被你的其他程序使用),你可以保持文件名不变,并使用[步骤 4](#步骤-4-将-csv-文件导入到-tidb-cloud) 中的**映射设置**将源数据导入到单个目标表。 + > - 只需压缩数据文件,无需压缩数据库或表结构文件。 + > - 为获得更好的性能,建议每个压缩文件大小限制在 100 MiB。 + > - Snappy 压缩文件必须为 [官方 Snappy 格式](https://github.com/google/snappy),不支持其他变体的 Snappy 压缩格式。 + > - 对于未压缩的文件,如果在某些情况下无法按照上述规则修改 CSV 文件名(例如,CSV 文件链接也被其他程序使用),可以保持文件名不变,并在 [第 4 步](#step-4-import-csv-files-to-tidb-cloud) 的 **Mapping Settings** 中将源数据导入到单个目标表。 -## 步骤 2. 创建目标表结构 +## 第 2 步:创建目标表结构 -由于 CSV 文件不包含结构信息,在将数据从 CSV 文件导入到 TiDB Cloud 之前,你需要使用以下任一方法创建表结构: +由于 CSV 文件不包含表结构信息,在将 CSV 文件中的数据导入 TiDB Cloud 之前,需要通过以下任一方式创建表结构: -- 方法 1:在 TiDB Cloud 中,为你的源数据创建目标数据库和表。 +- 方法一:在 TiDB Cloud 中为源数据创建目标数据库和数据表。 -- 方法 2:在存放 CSV 文件的 Amazon S3、GCS 或 Azure Blob Storage 目录中,为你的源数据创建目标表结构文件,如下所示: +- 方法二:在存放 CSV 文件的 Amazon S3、GCS 或 Azure Blob Storage 目录下,为源数据创建目标表结构文件,具体如下: - 1. 为你的源数据创建数据库结构文件。 + 1. 为源数据创建数据库结构文件。 - 如果你的 CSV 文件遵循[步骤 1](#步骤-1-准备-csv-文件) 中的命名规则,则数据库结构文件对于数据导入是可选的。否则,数据库结构文件是必需的。 + 如果你的 CSV 文件遵循 [第 1 步](#step-1-prepare-the-csv-files) 的命名规则,则数据库结构文件为可选项,否则为必需项。 - 每个数据库结构文件必须采用 `${db_name}-schema-create.sql` 格式,并包含一个 `CREATE DATABASE` DDL 语句。通过此文件,TiDB Cloud 将在导入数据时创建 `${db_name}` 数据库来存储你的数据。 + 每个数据库结构文件必须采用 `${db_name}-schema-create.sql` 格式,并包含一个 `CREATE DATABASE` DDL 语句。通过该文件,TiDB Cloud 会在导入数据时创建 `${db_name}` 数据库以存储你的数据。 - 例如,如果你创建一个包含以下语句的 `mydb-scehma-create.sql` 文件,TiDB Cloud 将在导入数据时创建 `mydb` 数据库。 - - {{< copyable "sql" >}} + 例如,若你创建了一个包含如下语句的 `mydb-scehma-create.sql` 文件,TiDB Cloud 会在导入数据时创建 `mydb` 数据库。 + ```sql CREATE DATABASE mydb; ``` - 2. 为你的源数据创建表结构文件。 - - 如果你没有在存放 CSV 文件的 Amazon S3、GCS 或 Azure Blob Storage 目录中包含表结构文件,TiDB Cloud 在导入数据时将不会为你创建相应的表。 + 2. 为源数据创建表结构文件。 - 每个表结构文件必须采用 `${db_name}.${table_name}-schema.sql` 格式,并包含一个 `CREATE TABLE` DDL 语句。通过此文件,TiDB Cloud 将在导入数据时在 `${db_name}` 数据库中创建 `${db_table}` 表。 + 如果你未在存放 CSV 文件的 Amazon S3、GCS 或 Azure Blob Storage 目录下包含表结构文件,TiDB Cloud 在导入数据时不会为你创建相应的数据表。 - 例如,如果你创建一个包含以下语句的 `mydb.mytable-schema.sql` 文件,TiDB Cloud 将在 `mydb` 数据库中创建 `mytable` 表。 + 每个表结构文件必须采用 `${db_name}.${table_name}-schema.sql` 格式,并包含一个 `CREATE TABLE` DDL 语句。通过该文件,TiDB Cloud 会在导入数据时于 `${db_name}` 数据库中创建 `${db_table}` 表。 - {{< copyable "sql" >}} + 例如,若你创建了一个包含如下语句的 `mydb.mytable-schema.sql` 文件,TiDB Cloud 会在导入数据时于 `mydb` 数据库中创建 `mytable` 表。 + ```sql CREATE TABLE mytable ( ID INT, @@ -74,170 +72,170 @@ aliases: ['/tidbcloud/migrate-from-amazon-s3-or-gcs','/tidbcloud/migrate-from-au > **注意:** > - > 每个 `${db_name}.${table_name}-schema.sql` 文件应该只包含一个 DDL 语句。如果文件包含多个 DDL 语句,只有第一个语句生效。 + > 每个 `${db_name}.${table_name}-schema.sql` 文件只能包含一个 DDL 语句。如果文件中包含多个 DDL 语句,仅第一个生效。 -## 步骤 3. 配置跨账户访问 +## 第 3 步:配置跨账号访问 -要允许 TiDB Cloud 访问 Amazon S3 存储桶、GCS 存储桶或 Azure Blob Storage 容器中的 CSV 文件,请执行以下操作之一: +为了让 TiDB Cloud 能够访问 Amazon S3、GCS 或 Azure Blob Storage 容器中的 CSV 文件,请按以下方式操作: -- 如果你的 CSV 文件位于 Amazon S3 中,[配置 Amazon S3 访问](/tidb-cloud/dedicated-external-storage.md#configure-amazon-s3-access)。 +- 如果你的 CSV 文件位于 Amazon S3,请[配置 Amazon S3 访问权限](/tidb-cloud/dedicated-external-storage.md#configure-amazon-s3-access)。 - 你可以使用 AWS 访问密钥或角色 ARN 来访问你的存储桶。完成后,请记下访问密钥(包括访问密钥 ID 和密钥)或角色 ARN 值,因为你将在[步骤 4](#步骤-4-将-csv-文件导入到-tidb-cloud) 中需要它。 + 你可以使用 AWS 访问密钥或 Role ARN 访问你的存储桶。完成后,请记录访问密钥(包括访问密钥 ID 和密钥)或 Role ARN 值,后续在 [第 4 步](#step-4-import-csv-files-to-tidb-cloud) 中会用到。 -- 如果你的 CSV 文件位于 GCS 中,[配置 GCS 访问](/tidb-cloud/dedicated-external-storage.md#configure-gcs-access)。 +- 如果你的 CSV 文件位于 GCS,请[配置 GCS 访问权限](/tidb-cloud/dedicated-external-storage.md#configure-gcs-access)。 -- 如果你的 CSV 文件位于 Azure Blob Storage 中,[配置 Azure Blob Storage 访问](/tidb-cloud/dedicated-external-storage.md#configure-azure-blob-storage-access)。 +- 如果你的 CSV 文件位于 Azure Blob Storage,请[配置 Azure Blob Storage 访问权限](/tidb-cloud/dedicated-external-storage.md#configure-azure-blob-storage-access)。 -## 步骤 4. 将 CSV 文件导入到 TiDB Cloud +## 第 4 步:将 CSV 文件导入 TiDB Cloud -要将 CSV 文件导入到 TiDB Cloud,请执行以下步骤: +要将 CSV 文件导入 TiDB Cloud,请按照以下步骤操作:
-1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 选择**从云存储导入数据**。 +2. 选择 **Import data from Cloud Storage**。 -3. 在**从 Amazon S3 导入数据**页面,提供以下信息: +3. 在 **Import Data from Amazon S3** 页面,填写以下信息: - - **包含结构文件**:如果源文件夹包含目标表结构文件(如 `${db_name}-schema-create.sql`),选择**是**。否则,选择**否**。 - - **数据格式**:选择 **CSV**。 - - **编辑 CSV 配置**:如有必要,根据你的 CSV 文件配置选项。你可以设置分隔符和定界符字符,指定是否使用反斜杠作为转义字符,以及指定你的文件是否包含标题行。 - - **文件夹 URI**:以 `s3://[bucket_name]/[data_source_folder]/` 格式输入源文件夹 URI。路径必须以 `/` 结尾。例如,`s3://mybucket/myfolder/`。 - - **存储桶访问**:你可以使用 AWS IAM 角色 ARN 或 AWS 访问密钥来访问你的存储桶。 - - **AWS 角色 ARN**(推荐):输入 AWS IAM 角色 ARN 值。如果你还没有存储桶的 IAM 角色,可以通过点击**点击此处使用 AWS CloudFormation 创建新角色**并按照屏幕上的说明使用提供的 AWS CloudFormation 模板创建。或者,你可以手动为存储桶创建 IAM 角色 ARN。 - - **AWS 访问密钥**:输入 AWS 访问密钥 ID 和 AWS 密钥。 - - 有关两种方法的详细说明,请参见[配置 Amazon S3 访问](/tidb-cloud/dedicated-external-storage.md#configure-amazon-s3-access)。 + - **Included Schema Files**:如果源文件夹包含目标表结构文件(如 `${db_name}-schema-create.sql`),请选择 **Yes**,否则选择 **No**。 + - **Data Format**:选择 **CSV**。 + - **Edit CSV Configuration**:如有需要,根据你的 CSV 文件配置选项。你可以设置分隔符和定界符字符,指定是否使用反斜杠转义字符,以及文件是否包含表头行。 + - **Folder URI**:以 `s3://[bucket_name]/[data_source_folder]/` 格式输入源文件夹 URI,路径必须以 `/` 结尾。例如,`s3://mybucket/myfolder/`。 + - **Bucket Access**:你可以使用 AWS IAM role ARN 或 AWS 访问密钥访问存储桶。 + - **AWS Role ARN**(推荐):输入 AWS IAM role ARN。如果还没有为存储桶创建 IAM role,可以点击 **Click here to create new one with AWS CloudFormation**,按照屏幕提示使用提供的 AWS CloudFormation 模板创建。也可以手动为存储桶创建 IAM role ARN。 + - **AWS Access Key**:输入 AWS 访问密钥 ID 和 AWS 密钥。 + - 两种方式的详细说明请参见 [配置 Amazon S3 访问权限](/tidb-cloud/dedicated-external-storage.md#configure-amazon-s3-access)。 -4. 点击**连接**。 +4. 点击 **Connect**。 -5. 在**目标**部分,选择目标数据库和表。 +5. 在 **Destination** 部分,选择目标数据库和数据表。 - 导入多个文件时,你可以使用**高级设置** > **映射设置**来自定义各个目标表与其对应 CSV 文件的映射。对于每个目标数据库和表: + 当导入多个文件时,可以通过 **Advanced Settings** > **Mapping Settings** 自定义各目标表与其对应 CSV 文件的映射。对于每个目标数据库和表: - - **目标数据库**:从列表中选择相应的数据库名称。 - - **目标表**:从列表中选择相应的表名称。 - - **源文件 URI 和名称**:输入源文件的完整 URI,包括文件夹和文件名,确保其格式为 `s3://[bucket_name]/[data_source_folder]/[file_name].csv`。你也可以使用通配符(`?` 和 `*`)来匹配多个文件。例如: - - `s3://mybucket/myfolder/my-data1.csv`:`myfolder` 中名为 `my-data1.csv` 的单个 CSV 文件将导入到目标表中。 - - `s3://mybucket/myfolder/my-data?.csv`:`myfolder` 中以 `my-data` 开头后跟一个字符的所有 CSV 文件(如 `my-data1.csv` 和 `my-data2.csv`)将导入到同一个目标表中。 - - `s3://mybucket/myfolder/my-data*.csv`:`myfolder` 中以 `my-data` 开头的所有 CSV 文件(如 `my-data10.csv` 和 `my-data100.csv`)将导入到同一个目标表中。 + - **Target Database**:从列表中选择对应的数据库名。 + - **Target Table**:从列表中选择对应的表名。 + - **Source File URIs and Names**:输入源文件的完整 URI,包括文件夹和文件名,确保格式为 `s3://[bucket_name]/[data_source_folder]/[file_name].csv`。也可以使用通配符(`?` 和 `*`)匹配多个文件。例如: + - `s3://mybucket/myfolder/my-data1.csv`:`myfolder` 下名为 `my-data1.csv` 的单个 CSV 文件将被导入到目标表。 + - `s3://mybucket/myfolder/my-data?.csv`:`myfolder` 下所有以 `my-data` 开头、后跟一个字符(如 `my-data1.csv` 和 `my-data2.csv`)的 CSV 文件将被导入到同一个目标表。 + - `s3://mybucket/myfolder/my-data*.csv`:`myfolder` 下所有以 `my-data` 开头(如 `my-data10.csv` 和 `my-data100.csv`)的 CSV 文件将被导入到同一个目标表。 -6. 点击**开始导入**。 +6. 点击 **Start Import**。 -7. 当导入进度显示**已完成**时,检查导入的表。 +7. 当导入进度显示 **Completed** 时,检查已导入的数据表。
-1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 选择**从云存储导入数据**。 +2. 选择 **Import data from Cloud Storage**。 -3. 在**从 Google Cloud Storage 导入数据**页面,为源 CSV 文件提供以下信息: +3. 在 **Import Data from Cloud Storage** 页面,为源 CSV 文件填写以下信息: - - **包含结构文件**:如果源文件夹包含目标表结构文件(如 `${db_name}-schema-create.sql`),选择**是**。否则,选择**否**。 - - **数据格式**:选择 **CSV**。 - - **编辑 CSV 配置**:如有必要,根据你的 CSV 文件配置选项。你可以设置分隔符和定界符字符,指定是否使用反斜杠作为转义字符,以及指定你的文件是否包含标题行。 - - **文件夹 URI**:以 `gs://[bucket_name]/[data_source_folder]/` 格式输入源文件夹 URI。路径必须以 `/` 结尾。例如,`gs://sampledata/ingest/`。 - - **Google Cloud 服务账号 ID**:TiDB Cloud 在此页面上提供了一个唯一的服务账号 ID(如 `example-service-account@your-project.iam.gserviceaccount.com`)。你必须在 Google Cloud 项目中为你的 GCS 存储桶授予此服务账号 ID 必要的 IAM 权限(如"Storage Object Viewer")。更多信息,请参见[配置 GCS 访问](/tidb-cloud/dedicated-external-storage.md#configure-gcs-access)。 + - **Included Schema Files**:如果源文件夹包含目标表结构文件(如 `${db_name}-schema-create.sql`),请选择 **Yes**,否则选择 **No**。 + - **Data Format**:选择 **CSV**。 + - **Edit CSV Configuration**:如有需要,根据你的 CSV 文件配置选项。你可以设置分隔符和定界符字符,指定是否使用反斜杠转义字符,以及文件是否包含表头行。 + - **Folder URI**:以 `gs://[bucket_name]/[data_source_folder]/` 格式输入源文件夹 URI,路径必须以 `/` 结尾。例如,`gs://sampledata/ingest/`。 + - **Google Cloud Service Account ID**:TiDB Cloud 会在此页面提供一个唯一的 Service Account ID(如 `example-service-account@your-project.iam.gserviceaccount.com`)。你必须在 Google Cloud 项目中为该 Service Account ID 授予所需的 IAM 权限(如 "Storage Object Viewer")以访问你的 GCS 存储桶。更多信息请参见 [配置 GCS 访问权限](/tidb-cloud/dedicated-external-storage.md#configure-gcs-access)。 -4. 点击**连接**。 +4. 点击 **Connect**。 -5. 在**目标**部分,选择目标数据库和表。 +5. 在 **Destination** 部分,选择目标数据库和数据表。 - 导入多个文件时,你可以使用**高级设置** > **映射设置**来自定义各个目标表与其对应 CSV 文件的映射。对于每个目标数据库和表: + 当导入多个文件时,可以通过 **Advanced Settings** > **Mapping Settings** 自定义各目标表与其对应 CSV 文件的映射。对于每个目标数据库和表: - - **目标数据库**:从列表中选择相应的数据库名称。 - - **目标表**:从列表中选择相应的表名称。 - - **源文件 URI 和名称**:输入源文件的完整 URI,包括文件夹和文件名,确保其格式为 `gs://[bucket_name]/[data_source_folder]/[file_name].csv`。你也可以使用通配符(`?` 和 `*`)来匹配多个文件。例如: - - `gs://mybucket/myfolder/my-data1.csv`:`myfolder` 中名为 `my-data1.csv` 的单个 CSV 文件将导入到目标表中。 - - `gs://mybucket/myfolder/my-data?.csv`:`myfolder` 中以 `my-data` 开头后跟一个字符的所有 CSV 文件(如 `my-data1.csv` 和 `my-data2.csv`)将导入到同一个目标表中。 - - `gs://mybucket/myfolder/my-data*.csv`:`myfolder` 中以 `my-data` 开头的所有 CSV 文件(如 `my-data10.csv` 和 `my-data100.csv`)将导入到同一个目标表中。 + - **Target Database**:从列表中选择对应的数据库名。 + - **Target Table**:从列表中选择对应的表名。 + - **Source File URIs and Names**:输入源文件的完整 URI,包括文件夹和文件名,确保格式为 `gs://[bucket_name]/[data_source_folder]/[file_name].csv`。也可以使用通配符(`?` 和 `*`)匹配多个文件。例如: + - `gs://mybucket/myfolder/my-data1.csv`:`myfolder` 下名为 `my-data1.csv` 的单个 CSV 文件将被导入到目标表。 + - `gs://mybucket/myfolder/my-data?.csv`:`myfolder` 下所有以 `my-data` 开头、后跟一个字符(如 `my-data1.csv` 和 `my-data2.csv`)的 CSV 文件将被导入到同一个目标表。 + - `gs://mybucket/myfolder/my-data*.csv`:`myfolder` 下所有以 `my-data` 开头(如 `my-data10.csv` 和 `my-data100.csv`)的 CSV 文件将被导入到同一个目标表。 -6. 点击**开始导入**。 +6. 点击 **Start Import**。 -7. 当导入进度显示**已完成**时,检查导入的表。 +7. 当导入进度显示 **Completed** 时,检查已导入的数据表。
-1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 选择**从云存储导入数据**。 +2. 选择 **Import data from Cloud Storage**。 -3. 在**从 Azure Blob Storage 导入数据**页面,提供以下信息: +3. 在 **Import Data from Azure Blob Storage** 页面,填写以下信息: - - **包含结构文件**:如果源文件夹包含目标表结构文件(如 `${db_name}-schema-create.sql`),选择**是**。否则,选择**否**。 - - **数据格式**:选择 **CSV**。 - - **编辑 CSV 配置**:如有必要,根据你的 CSV 文件配置选项。你可以设置分隔符和定界符字符,指定是否使用反斜杠作为转义字符,以及指定你的文件是否包含标题行。 - - **文件夹 URI**:使用格式 `https://[account_name].blob.core.windows.net/[container_name]/[data_source_folder]/` 输入源文件所在的 Azure Blob Storage URI。路径必须以 `/` 结尾。例如,`https://myaccount.blob.core.windows.net/mycontainer/myfolder/`。 - - **SAS 令牌**:输入账户 SAS 令牌,以允许 TiDB Cloud 访问你的 Azure Blob Storage 容器中的源文件。如果你还没有,可以通过点击**点击此处使用 Azure ARM 模板创建新令牌**并按照屏幕上的说明使用提供的 Azure ARM 模板创建。或者,你可以手动创建账户 SAS 令牌。更多信息,请参见[配置 Azure Blob Storage 访问](/tidb-cloud/dedicated-external-storage.md#configure-azure-blob-storage-access)。 + - **Included Schema Files**:如果源文件夹包含目标表结构文件(如 `${db_name}-schema-create.sql`),请选择 **Yes**,否则选择 **No**。 + - **Data Format**:选择 **CSV**。 + - **Edit CSV Configuration**:如有需要,根据你的 CSV 文件配置选项。你可以设置分隔符和定界符字符,指定是否使用反斜杠转义字符,以及文件是否包含表头行。 + - **Folder URI**:以 `https://[account_name].blob.core.windows.net/[container_name]/[data_source_folder]/` 格式输入存放源文件的 Azure Blob Storage URI,路径必须以 `/` 结尾。例如,`https://myaccount.blob.core.windows.net/mycontainer/myfolder/`。 + - **SAS Token**:输入账户 SAS token,以允许 TiDB Cloud 访问 Azure Blob Storage 容器中的源文件。如果还没有 SAS token,可以点击 **Click here to create a new one with Azure ARM template**,按照屏幕提示使用提供的 Azure ARM 模板创建。也可以手动创建账户 SAS token。更多信息请参见 [配置 Azure Blob Storage 访问权限](/tidb-cloud/dedicated-external-storage.md#configure-azure-blob-storage-access)。 -4. 点击**连接**。 +4. 点击 **Connect**。 -5. 在**目标**部分,选择目标数据库和表。 +5. 在 **Destination** 部分,选择目标数据库和数据表。 - 导入多个文件时,你可以使用**高级设置** > **映射设置**来自定义各个目标表与其对应 CSV 文件的映射。对于每个目标数据库和表: + 当导入多个文件时,可以通过 **Advanced Settings** > **Mapping Settings** 自定义各目标表与其对应 CSV 文件的映射。对于每个目标数据库和表: - - **目标数据库**:从列表中选择相应的数据库名称。 - - **目标表**:从列表中选择相应的表名称。 - - **源文件 URI 和名称**:输入源文件的完整 URI,包括文件夹和文件名,确保其格式为 `https://[account_name].blob.core.windows.net/[container_name]/[data_source_folder]/[file_name].csv`。你也可以使用通配符(`?` 和 `*`)来匹配多个文件。例如: - - `https://myaccount.blob.core.windows.net/mycontainer/myfolder/my-data1.csv`:`myfolder` 中名为 `my-data1.csv` 的单个 CSV 文件将导入到目标表中。 - - `https://myaccount.blob.core.windows.net/mycontainer/myfolder/my-data?.csv`:`myfolder` 中以 `my-data` 开头后跟一个字符的所有 CSV 文件(如 `my-data1.csv` 和 `my-data2.csv`)将导入到同一个目标表中。 - - `https://myaccount.blob.core.windows.net/mycontainer/myfolder/my-data*.csv`:`myfolder` 中以 `my-data` 开头的所有 CSV 文件(如 `my-data10.csv` 和 `my-data100.csv`)将导入到同一个目标表中。 + - **Target Database**:从列表中选择对应的数据库名。 + - **Target Table**:从列表中选择对应的表名。 + - **Source File URIs and Names**:输入源文件的完整 URI,包括文件夹和文件名,确保格式为 `https://[account_name].blob.core.windows.net/[container_name]/[data_source_folder]/[file_name].csv`。也可以使用通配符(`?` 和 `*`)匹配多个文件。例如: + - `https://myaccount.blob.core.windows.net/mycontainer/myfolder/my-data1.csv`:`myfolder` 下名为 `my-data1.csv` 的单个 CSV 文件将被导入到目标表。 + - `https://myaccount.blob.core.windows.net/mycontainer/myfolder/my-data?.csv`:`myfolder` 下所有以 `my-data` 开头、后跟一个字符(如 `my-data1.csv` 和 `my-data2.csv`)的 CSV 文件将被导入到同一个目标表。 + - `https://myaccount.blob.core.windows.net/mycontainer/myfolder/my-data*.csv`:`myfolder` 下所有以 `my-data` 开头(如 `my-data10.csv` 和 `my-data100.csv`)的 CSV 文件将被导入到同一个目标表。 -6. 点击**开始导入**。 +6. 点击 **Start Import**。 -7. 当导入进度显示**已完成**时,检查导入的表。 +7. 当导入进度显示 **Completed** 时,检查已导入的数据表。
-当你运行导入任务时,如果检测到任何不支持或无效的转换,TiDB Cloud 会自动终止导入作业并报告导入错误。你可以在**状态**字段中查看详细信息。 +当你运行导入任务时,如果检测到任何不支持或无效的类型转换,TiDB Cloud 会自动终止导入作业并报告导入错误。你可以在 **Status** 字段查看详细信息。 -如果遇到导入错误,请执行以下操作: +如果遇到导入错误,请按以下步骤操作: 1. 删除部分导入的表。 -2. 检查表结构文件。如果有任何错误,请更正表结构文件。 +2. 检查表结构文件,如有错误请修正。 3. 检查 CSV 文件中的数据类型。 -4. 重试导入任务。 +4. 重新尝试导入任务。 -## 故障排除 +## 故障排查 ### 解决数据导入过程中的警告 -点击**开始导入**后,如果看到类似 `can't find the corresponding source files` 的警告消息,请通过提供正确的源文件、根据[数据导入的命名规范](/tidb-cloud/naming-conventions-for-data-import.md)重命名现有文件,或使用**高级设置**进行更改来解决此问题。 +点击 **Start Import** 后,如果看到如 `can't find the corresponding source files` 的警告信息,请通过提供正确的源文件、根据 [数据导入命名规范](/tidb-cloud/naming-conventions-for-data-import.md) 重命名现有文件,或使用 **Advanced Settings** 进行调整来解决。 -解决这些问题后,你需要重新导入数据。 +解决后需要重新导入数据。 -### 导入的表中行数为零 +### 导入表中行数为零 -当导入进度显示**已完成**后,检查导入的表。如果行数为零,这意味着没有数据文件与你输入的存储桶 URI 匹配。在这种情况下,请通过提供正确的源文件、根据[数据导入的命名规范](/tidb-cloud/naming-conventions-for-data-import.md)重命名现有文件,或使用**高级设置**进行更改来解决此问题。之后,重新导入这些表。 +当导入进度显示 **Completed** 后,检查已导入的数据表。如果行数为零,说明没有数据文件匹配你输入的 Bucket URI。此时,请通过提供正确的源文件、根据 [数据导入命名规范](/tidb-cloud/naming-conventions-for-data-import.md) 重命名现有文件,或使用 **Advanced Settings** 进行调整来解决。之后请重新导入这些表。 \ No newline at end of file diff --git a/tidb-cloud/import-parquet-files-serverless.md b/tidb-cloud/import-parquet-files-serverless.md index bf4a8f21f0129..cca45f06e12b7 100644 --- a/tidb-cloud/import-parquet-files-serverless.md +++ b/tidb-cloud/import-parquet-files-serverless.md @@ -1,22 +1,22 @@ --- title: 从 Amazon S3、GCS、Azure Blob Storage 或阿里云 OSS 导入 Apache Parquet 文件到 TiDB Cloud Serverless -summary: 了解如何从 Amazon S3、GCS、Azure Blob Storage 或阿里云对象存储服务(OSS)导入 Apache Parquet 文件到 TiDB Cloud Serverless。 +summary: 了解如何将 Apache Parquet 文件从 Amazon S3、GCS、Azure Blob Storage 或阿里云对象存储服务(OSS)导入到 TiDB Cloud Serverless。 --- # 从 Amazon S3、GCS、Azure Blob Storage 或阿里云 OSS 导入 Apache Parquet 文件到 TiDB Cloud Serverless -你可以将未压缩和 Snappy 压缩的 [Apache Parquet](https://parquet.apache.org/) 格式数据文件导入到 TiDB Cloud Serverless。本文档描述了如何从 Amazon Simple Storage Service (Amazon S3)、Google Cloud Storage (GCS)、Azure Blob Storage 或阿里云对象存储服务(OSS)将 Parquet 文件导入到 TiDB Cloud Serverless。 +你可以将未压缩和 Snappy 压缩的 [Apache Parquet](https://parquet.apache.org/) 格式数据文件导入到 TiDB Cloud Serverless。本文档介绍如何将 Parquet 文件从 Amazon Simple Storage Service(Amazon S3)、Google Cloud Storage(GCS)、Azure Blob Storage 或阿里云对象存储服务(OSS)导入到 TiDB Cloud Serverless。 -> **注意:** +> **Note:** > -> - TiDB Cloud Serverless 仅支持将 Parquet 文件导入到空表中。要将数据导入到已包含数据的现有表中,你可以按照本文档将数据导入到临时空表中,然后使用 `INSERT SELECT` 语句将数据复制到目标现有表中。 -> - Snappy 压缩文件必须采用[官方 Snappy 格式](https://github.com/google/snappy)。不支持其他变体的 Snappy 压缩。 +> - TiDB Cloud Serverless 仅支持将 Parquet 文件导入到空表中。如果需要将数据导入到已存在且包含数据的表中,你可以按照本文档的步骤,先将数据导入到一个临时空表中,然后使用 `INSERT SELECT` 语句将数据复制到目标表。 +> - Snappy 压缩文件必须采用 [官方 Snappy 格式](https://github.com/google/snappy)。不支持其他变体的 Snappy 压缩格式。 -## 步骤 1. 准备 Parquet 文件 +## 第 1 步:准备 Parquet 文件 -> **注意:** +> **Note:** > -> 目前,TiDB Cloud Serverless 不支持导入包含以下任何数据类型的 Parquet 文件。如果要导入的 Parquet 文件包含此类数据类型,你需要首先使用[支持的数据类型](#支持的数据类型)(例如 `STRING`)重新生成 Parquet 文件。或者,你可以使用 AWS Glue 等服务轻松转换数据类型。 +> 目前,TiDB Cloud Serverless 不支持导入包含以下任意数据类型的 Parquet 文件。如果待导入的 Parquet 文件包含这些数据类型,你需要先使用 [支持的数据类型](#supported-data-types)(例如 `STRING`)重新生成 Parquet 文件。或者,你也可以使用如 AWS Glue 等服务轻松转换数据类型。 > > - `LIST` > - `NEST STRUCT` @@ -24,46 +24,46 @@ summary: 了解如何从 Amazon S3、GCS、Azure Blob Storage 或阿里云对象 > - `ARRAY` > - `MAP` -1. 如果 Parquet 文件大于 256 MB,建议将其拆分为较小的文件,每个文件大小约为 256 MB。 +1. 如果单个 Parquet 文件大于 256 MB,建议将其拆分为多个较小的文件,每个文件大小约为 256 MB。 - TiDB Cloud Serverless 支持导入非常大的 Parquet 文件,但对于大小约为 256 MB 的多个输入文件性能最佳。这是因为 TiDB Cloud Serverless 可以并行处理多个文件,从而大大提高导入速度。 + TiDB Cloud Serverless 支持导入非常大的 Parquet 文件,但在多个约 256 MB 的输入文件并行导入时性能最佳。这是因为 TiDB Cloud Serverless 可以并行处理多个文件,从而大幅提升导入速度。 -2. 按照以下方式命名 Parquet 文件: +2. 按如下方式命名 Parquet 文件: - - 如果 Parquet 文件包含整个表的所有数据,请按 `${db_name}.${table_name}.parquet` 格式命名文件,导入数据时将映射到 `${db_name}.${table_name}` 表。 - - 如果一个表的数据分散在多个 Parquet 文件中,请在这些 Parquet 文件后面添加数字后缀。例如,`${db_name}.${table_name}.000001.parquet` 和 `${db_name}.${table_name}.000002.parquet`。数字后缀可以不连续,但必须按升序排列。你还需要在数字前添加额外的零,以确保所有后缀长度相同。 + - 如果一个 Parquet 文件包含整个表的所有数据,文件名应采用 `${db_name}.${table_name}.parquet` 格式,导入时会映射到 `${db_name}.${table_name}` 表。 + - 如果一个表的数据被拆分为多个 Parquet 文件,应在这些文件名后添加数字后缀。例如,`${db_name}.${table_name}.000001.parquet` 和 `${db_name}.${table_name}.000002.parquet`。数字后缀可以不连续,但必须递增,并且需要在数字前补零以保证所有后缀长度一致。 - > **注意:** + > **Note:** > - > 如果在某些情况下无法按照上述规则更新 Parquet 文件名(例如,Parquet 文件链接也被其他程序使用),你可以保持文件名不变,并在[步骤 4](#步骤-4-将-parquet-文件导入到-tidb-cloud-serverless) 中使用**映射设置**将源数据导入到单个目标表。 + > 如果在某些情况下无法按照上述规则修改 Parquet 文件名(例如,这些 Parquet 文件链接也被其他程序使用),你可以保持文件名不变,并在 [第 4 步](#step-4-import-parquet-files) 的 **Mapping Settings** 中将源数据导入到单一目标表。 -## 步骤 2. 创建目标表架构 +## 第 2 步:创建目标表结构 -由于 Parquet 文件不包含架构信息,在将数据从 Parquet 文件导入到 TiDB Cloud Serverless 之前,你需要使用以下任一方法创建表架构: +由于 Parquet 文件不包含表结构信息,在将 Parquet 文件中的数据导入 TiDB Cloud Serverless 之前,你需要通过以下任一方式创建表结构: -- 方法 1:在 TiDB Cloud Serverless 中,为源数据创建目标数据库和表。 +- 方法 1:在 TiDB Cloud Serverless 中,为你的源数据创建目标数据库和数据表。 -- 方法 2:在存放 Parquet 文件的 Amazon S3、GCS、Azure Blob Storage 或阿里云对象存储服务目录中,按以下方式为源数据创建目标表架构文件: +- 方法 2:在存放 Parquet 文件的 Amazon S3、GCS、Azure Blob Storage 或阿里云对象存储服务目录下,为你的源数据创建目标表结构文件: - 1. 为源数据创建数据库架构文件。 + 1. 为你的源数据创建数据库结构文件。 - 如果你的 Parquet 文件遵循[步骤 1](#步骤-1-准备-parquet-文件) 中的命名规则,则数据库架构文件对于数据导入是可选的。否则,数据库架构文件是必需的。 + 如果你的 Parquet 文件遵循 [第 1 步](#step-1-prepare-the-parquet-files) 的命名规则,则数据库结构文件在数据导入时为可选项。否则,数据库结构文件为必需项。 - 每个数据库架构文件必须采用 `${db_name}-schema-create.sql` 格式,并包含一个 `CREATE DATABASE` DDL 语句。使用此文件,TiDB Cloud Serverless 将在导入数据时创建 `${db_name}` 数据库来存储你的数据。 + 每个数据库结构文件必须采用 `${db_name}-schema-create.sql` 格式,并包含一个 `CREATE DATABASE` DDL 语句。通过该文件,TiDB Cloud Serverless 会在导入数据时创建 `${db_name}` 数据库以存储你的数据。 - 例如,如果你创建一个包含以下语句的 `mydb-scehma-create.sql` 文件,TiDB Cloud Serverless 将在导入数据时创建 `mydb` 数据库。 + 例如,如果你创建了一个包含如下语句的 `mydb-scehma-create.sql` 文件,TiDB Cloud Serverless 会在导入数据时创建 `mydb` 数据库。 ```sql CREATE DATABASE mydb; ``` - 2. 为源数据创建表架构文件。 + 2. 为你的源数据创建数据表结构文件。 - 如果你没有在存放 Parquet 文件的 Amazon S3、GCS、Azure Blob Storage 或阿里云对象存储服务目录中包含表架构文件,TiDB Cloud Serverless 在导入数据时将不会为你创建相应的表。 + 如果你没有在存放 Parquet 文件的 Amazon S3、GCS、Azure Blob Storage 或阿里云对象存储服务目录下包含表结构文件,TiDB Cloud Serverless 在导入数据时不会为你创建相应的数据表。 - 每个表架构文件必须采用 `${db_name}.${table_name}-schema.sql` 格式,并包含一个 `CREATE TABLE` DDL 语句。使用此文件,TiDB Cloud Serverless 将在导入数据时在 `${db_name}` 数据库中创建 `${db_table}` 表。 + 每个表结构文件必须采用 `${db_name}.${table_name}-schema.sql` 格式,并包含一个 `CREATE TABLE` DDL 语句。通过该文件,TiDB Cloud Serverless 会在导入数据时在 `${db_name}` 数据库中创建 `${db_table}` 表。 - 例如,如果你创建一个包含以下语句的 `mydb.mytable-schema.sql` 文件,TiDB Cloud Serverless 将在导入数据时在 `mydb` 数据库中创建 `mytable` 表。 + 例如,如果你创建了一个包含如下语句的 `mydb.mytable-schema.sql` 文件,TiDB Cloud Serverless 会在 `mydb` 数据库中创建 `mytable` 表。 ```sql CREATE TABLE mytable ( @@ -72,250 +72,254 @@ summary: 了解如何从 Amazon S3、GCS、Azure Blob Storage 或阿里云对象 COUNT INT ); ``` - > **注意:** + > **Note:** > - > 每个 `${db_name}.${table_name}-schema.sql` 文件应该只包含一个 DDL 语句。如果文件包含多个 DDL 语句,只有第一个语句生效。 + > 每个 `${db_name}.${table_name}-schema.sql` 文件只能包含一个 DDL 语句。如果文件中包含多个 DDL 语句,只有第一个会生效。 -## 步骤 3. 配置跨账户访问 +## 第 3 步:配置跨账号访问 -要允许 TiDB Cloud Serverless 访问 Amazon S3、GCS、Azure Blob Storage 或阿里云对象存储服务存储桶中的 Parquet 文件,请执行以下操作之一: +为了让 TiDB Cloud Serverless 能够访问 Amazon S3、GCS、Azure Blob Storage 或阿里云对象存储服务桶中的 Parquet 文件,请按以下方式操作: -- 如果你的 Parquet 文件位于 Amazon S3 中,[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#configure-amazon-s3-access)。 +- 如果你的 Parquet 文件位于 Amazon S3,[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#configure-amazon-s3-access)。 - 你可以使用 AWS 访问密钥或 Role ARN 访问存储桶。完成后,请记下访问密钥(包括访问密钥 ID 和密钥)或 Role ARN 值,因为你将在[步骤 4](#步骤-4-将-parquet-文件导入到-tidb-cloud-serverless) 中需要它。 + 你可以使用 AWS 访问密钥或 Role ARN 访问你的桶。配置完成后,请记录访问密钥(包括访问密钥 ID 和密钥)或 Role ARN 值,在 [第 4 步](#step-4-import-parquet-files) 中会用到。 -- 如果你的 Parquet 文件位于 GCS 中,[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#configure-gcs-access)。 +- 如果你的 Parquet 文件位于 GCS,[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#configure-gcs-access)。 -- 如果你的 Parquet 文件位于 Azure Blob Storage 中,[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#configure-azure-blob-storage-access)。 +- 如果你的 Parquet 文件位于 Azure Blob Storage,[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#configure-azure-blob-storage-access)。 -- 如果你的 Parquet 文件位于阿里云对象存储服务(OSS)中,[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#configure-alibaba-cloud-object-storage-service-oss-access)。 +- 如果你的 Parquet 文件位于阿里云对象存储服务(OSS),[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#configure-alibaba-cloud-object-storage-service-oss-access)。 -## 步骤 4. 将 Parquet 文件导入到 TiDB Cloud Serverless +## 第 4 步:导入 Parquet 文件 -要将 Parquet 文件导入到 TiDB Cloud Serverless,请执行以下步骤: +要将 Parquet 文件导入到 TiDB Cloud Serverless,请按照以下步骤操作:
-1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入你的项目 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 选择**从云存储导入数据**,然后点击 **Amazon S3**。 +2. 点击 **Import data from Cloud Storage**。 -3. 在**从 Amazon S3 导入数据**页面,为源 Parquet 文件提供以下信息: +3. 在 **Import Data from Cloud Storage** 页面,填写以下信息: - - **导入文件数量**:根据需要选择**单个文件**或**多个文件**。 - - **包含架构文件**:此字段仅在导入多个文件时可见。如果源文件夹包含目标表架构,选择**是**。否则,选择**否**。 - - **数据格式**:选择 **Parquet**。 - - **文件 URI** 或**文件夹 URI**: - - 导入单个文件时,按以下格式输入源文件 URI 和名称 `s3://[bucket_name]/[data_source_folder]/[file_name].parquet`。例如,`s3://sampledata/ingest/TableName.01.parquet`。 - - 导入多个文件时,按以下格式输入源文件 URI 和名称 `s3://[bucket_name]/[data_source_folder]/`。例如,`s3://sampledata/ingest/`。 - - **存储桶访问**:你可以使用 AWS Role ARN 或 AWS 访问密钥访问存储桶。更多信息,请参阅[配置 Amazon S3 访问](/tidb-cloud/serverless-external-storage.md#configure-amazon-s3-access)。 + - **Storage Provider**:选择 **Amazon S3**。 + - **Source Files URI**: + - 导入单个文件时,输入源文件 URI,格式为 `s3://[bucket_name]/[data_source_folder]/[file_name].parquet`。例如,`s3://sampledata/ingest/TableName.01.parquet`。 + - 导入多个文件时,输入源文件夹 URI,格式为 `s3://[bucket_name]/[data_source_folder]/`。例如,`s3://sampledata/ingest/`。 + - **Credential**:你可以使用 AWS Role ARN 或 AWS 访问密钥访问你的桶。更多信息参见 [Configure Amazon S3 access](/tidb-cloud/serverless-external-storage.md#configure-amazon-s3-access)。 - **AWS Role ARN**:输入 AWS Role ARN 值。 - - **AWS 访问密钥**:输入 AWS 访问密钥 ID 和 AWS 密钥。 + - **AWS Access Key**:输入 AWS 访问密钥 ID 和 AWS 密钥。 -4. 点击**连接**。 +4. 点击 **Next**。 -5. 在**目标**部分,选择目标数据库和表。 +5. 在 **Destination Mapping** 部分,指定源文件与目标表的映射方式。 - 导入多个文件时,你可以使用**高级设置** > **映射设置**为每个目标表及其对应的 Parquet 文件定义自定义映射规则。之后,将使用提供的自定义映射规则重新扫描数据源文件。 + 当 **Source Files URI** 指定为目录时,默认选中 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项。 - 在**源文件 URI 和名称**中输入源文件 URI 和名称时,确保使用以下格式 `s3://[bucket_name]/[data_source_folder]/[file_name].parquet`。例如,`s3://sampledata/ingest/TableName.01.parquet`。 + > **Note:** + > + > 当 **Source Files URI** 指定为单个文件时,不显示 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项,TiDB Cloud 会自动将 **Source** 字段填充为文件名。此时你只需选择目标数据库和表进行数据导入。 - 你还可以使用通配符匹配源文件。例如: + - 若希望 TiDB Cloud 自动将所有遵循 [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) 的源文件映射到对应表,保持该选项选中,并选择 **Parquet** 作为数据格式。 - - `s3://[bucket_name]/[data_source_folder]/my-data?.parquet`:该文件夹中以 `my-data` 开头后跟一个字符的所有 Parquet 文件(如 `my-data1.parquet` 和 `my-data2.parquet`)将导入到同一个目标表中。 + - 若需手动配置映射规则,将你的源 Parquet 文件与目标数据库和表关联,取消选中该选项,然后填写以下字段: - - `s3://[bucket_name]/[data_source_folder]/my-data*.parquet`:该文件夹中以 `my-data` 开头的所有 Parquet 文件将导入到同一个目标表中。 + - **Source**:输入文件名模式,格式为 `[file_name].parquet`。例如:`TableName.01.parquet`。你也可以使用通配符匹配多个文件,仅支持 `*` 和 `?` 通配符。 - 注意,仅支持 `?` 和 `*`。 + - `my-data?.parquet`:匹配所有以 `my-data` 开头,后跟单个字符的 Parquet 文件,如 `my-data1.parquet` 和 `my-data2.parquet`。 + - `my-data*.parquet`:匹配所有以 `my-data` 开头的 Parquet 文件,如 `my-data-2023.parquet` 和 `my-data-final.parquet`。 - > **注意:** - > - > URI 必须包含数据源文件夹。 + - **Target Database** 和 **Target Table**:选择要导入数据的目标数据库和表。 + +6. 点击 **Next**。TiDB Cloud 会相应扫描源文件。 -6. 点击**开始导入**。 +7. 审查扫描结果,检查找到的数据文件及其对应的目标表,然后点击 **Start Import**。 -7. 当导入进度显示**已完成**时,检查导入的表。 +8. 当导入进度显示 **Completed** 时,检查已导入的数据表。
-1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入你的项目 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 选择**从云存储导入数据**,然后点击 **Google Cloud Storage**。 +2. 点击 **Import data from Cloud Storage**。 -3. 在**从 Google Cloud Storage 导入数据**页面,为源 Parquet 文件提供以下信息: +3. 在 **Import Data from Cloud Storage** 页面,填写以下信息: - - **导入文件数量**:根据需要选择**单个文件**或**多个文件**。 - - **包含架构文件**:此字段仅在导入多个文件时可见。如果源文件夹包含目标表架构,选择**是**。否则,选择**否**。 - - **数据格式**:选择 **Parquet**。 - - **文件 URI** 或**文件夹 URI**: - - 导入单个文件时,按以下格式输入源文件 URI 和名称 `[gcs|gs]://[bucket_name]/[data_source_folder]/[file_name].parquet`。例如,`[gcs|gs]://sampledata/ingest/TableName.01.parquet`。 - - 导入多个文件时,按以下格式输入源文件 URI 和名称 `[gcs|gs]://[bucket_name]/[data_source_folder]/`。例如,`[gcs|gs]://sampledata/ingest/`。 - - **存储桶访问**:你可以使用 GCS IAM 角色访问存储桶。更多信息,请参阅[配置 GCS 访问](/tidb-cloud/serverless-external-storage.md#configure-gcs-access)。 + - **Storage Provider**:选择 **Google Cloud Storage**。 + - **Source Files URI**: + - 导入单个文件时,输入源文件 URI,格式为 `[gcs|gs]://[bucket_name]/[data_source_folder]/[file_name].parquet`。例如,`[gcs|gs]://sampledata/ingest/TableName.01.parquet`。 + - 导入多个文件时,输入源文件夹 URI,格式为 `[gcs|gs]://[bucket_name]/[data_source_folder]/`。例如,`[gcs|gs]://sampledata/ingest/`。 + - **Credential**:你可以使用 GCS IAM Role Service Account key 访问你的桶。更多信息参见 [Configure GCS access](/tidb-cloud/serverless-external-storage.md#configure-gcs-access)。 -4. 点击**连接**。 +4. 点击 **Next**。 -5. 在**目标**部分,选择目标数据库和表。 +5. 在 **Destination Mapping** 部分,指定源文件与目标表的映射方式。 - 导入多个文件时,你可以使用**高级设置** > **映射设置**为每个目标表及其对应的 Parquet 文件定义自定义映射规则。之后,将使用提供的自定义映射规则重新扫描数据源文件。 + 当 **Source Files URI** 指定为目录时,默认选中 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项。 - 在**源文件 URI 和名称**中输入源文件 URI 和名称时,确保使用以下格式 `[gcs|gs]://[bucket_name]/[data_source_folder]/[file_name].parquet`。例如,`[gcs|gs]://sampledata/ingest/TableName.01.parquet`。 + > **Note:** + > + > 当 **Source Files URI** 指定为单个文件时,不显示 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项,TiDB Cloud 会自动将 **Source** 字段填充为文件名。此时你只需选择目标数据库和表进行数据导入。 - 你还可以使用通配符匹配源文件。例如: + - 若希望 TiDB Cloud 自动将所有遵循 [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) 的源文件映射到对应表,保持该选项选中,并选择 **Parquet** 作为数据格式。 - - `[gcs|gs]://[bucket_name]/[data_source_folder]/my-data?.parquet`:该文件夹中以 `my-data` 开头后跟一个字符的所有 Parquet 文件(如 `my-data1.parquet` 和 `my-data2.parquet`)将导入到同一个目标表中。 + - 若需手动配置映射规则,将你的源 Parquet 文件与目标数据库和表关联,取消选中该选项,然后填写以下字段: - - `[gcs|gs]://[bucket_name]/[data_source_folder]/my-data*.parquet`:该文件夹中以 `my-data` 开头的所有 Parquet 文件将导入到同一个目标表中。 + - **Source**:输入文件名模式,格式为 `[file_name].parquet`。例如:`TableName.01.parquet`。你也可以使用通配符匹配多个文件,仅支持 `*` 和 `?` 通配符。 - 注意,仅支持 `?` 和 `*`。 + - `my-data?.parquet`:匹配所有以 `my-data` 开头,后跟单个字符的 Parquet 文件,如 `my-data1.parquet` 和 `my-data2.parquet`。 + - `my-data*.parquet`:匹配所有以 `my-data` 开头的 Parquet 文件,如 `my-data-2023.parquet` 和 `my-data-final.parquet`。 - > **注意:** - > - > URI 必须包含数据源文件夹。 + - **Target Database** 和 **Target Table**:选择要导入数据的目标数据库和表。 + +6. 点击 **Next**。TiDB Cloud 会相应扫描源文件。 -6. 点击**开始导入**。 +7. 审查扫描结果,检查找到的数据文件及其对应的目标表,然后点击 **Start Import**。 -7. 当导入进度显示**已完成**时,检查导入的表。 +8. 当导入进度显示 **Completed** 时,检查已导入的数据表。
-1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入你的项目 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 选择**从云存储导入数据**,然后点击 **Azure Blob Storage**。 +2. 点击 **Import data from Cloud Storage**。 -3. 在**从 Azure Blob Storage 导入数据**页面,为源 Parquet 文件提供以下信息: +3. 在 **Import Data from Cloud Storage** 页面,填写以下信息: - - **导入文件数量**:根据需要选择**单个文件**或**多个文件**。 - - **包含架构文件**:此字段仅在导入多个文件时可见。如果源文件夹包含目标表架构,选择**是**。否则,选择**否**。 - - **数据格式**:选择 **Parquet**。 - - **文件 URI** 或**文件夹 URI**: - - 导入单个文件时,按以下格式输入源文件 URI 和名称 `[azure|https]://[bucket_name]/[data_source_folder]/[file_name].parquet`。例如,`[azure|https]://sampledata/ingest/TableName.01.parquet`。 - - 导入多个文件时,按以下格式输入源文件 URI 和名称 `[azure|https]://[bucket_name]/[data_source_folder]/`。例如,`[azure|https]://sampledata/ingest/`。 - - **存储桶访问**:你可以使用共享访问签名(SAS)令牌访问存储桶。更多信息,请参阅[配置 Azure Blob Storage 访问](/tidb-cloud/serverless-external-storage.md#configure-azure-blob-storage-access)。 + - **Storage Provider**:选择 **Azure Blob Storage**。 + - **Source Files URI**: + - 导入单个文件时,输入源文件 URI,格式为 `[azure|https]://[bucket_name]/[data_source_folder]/[file_name].parquet`。例如,`[azure|https]://sampledata/ingest/TableName.01.parquet`。 + - 导入多个文件时,输入源文件夹 URI,格式为 `[azure|https]://[bucket_name]/[data_source_folder]/`。例如,`[azure|https]://sampledata/ingest/`。 + - **Credential**:你可以使用共享访问签名(SAS)令牌访问你的桶。更多信息参见 [Configure Azure Blob Storage access](/tidb-cloud/serverless-external-storage.md#configure-azure-blob-storage-access)。 -4. 点击**连接**。 +4. 点击 **Next**。 -5. 在**目标**部分,选择目标数据库和表。 +5. 在 **Destination Mapping** 部分,指定源文件与目标表的映射方式。 - 导入多个文件时,你可以使用**高级设置** > **映射设置**为每个目标表及其对应的 Parquet 文件定义自定义映射规则。之后,将使用提供的自定义映射规则重新扫描数据源文件。 + 当 **Source Files URI** 指定为目录时,默认选中 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项。 - 在**源文件 URI 和名称**中输入源文件 URI 和名称时,确保使用以下格式 `[azure|https]://[bucket_name]/[data_source_folder]/[file_name].parquet`。例如,`[azure|https]://sampledata/ingest/TableName.01.parquet`。 + > **Note:** + > + > 当 **Source Files URI** 指定为单个文件时,不显示 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项,TiDB Cloud 会自动将 **Source** 字段填充为文件名。此时你只需选择目标数据库和表进行数据导入。 - 你还可以使用通配符匹配源文件。例如: + - 若希望 TiDB Cloud 自动将所有遵循 [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) 的源文件映射到对应表,保持该选项选中,并选择 **Parquet** 作为数据格式。 - - `[azure|https]://[bucket_name]/[data_source_folder]/my-data?.parquet`:该文件夹中以 `my-data` 开头后跟一个字符的所有 Parquet 文件(如 `my-data1.parquet` 和 `my-data2.parquet`)将导入到同一个目标表中。 + - 若需手动配置映射规则,将你的源 Parquet 文件与目标数据库和表关联,取消选中该选项,然后填写以下字段: - - `[azure|https]://[bucket_name]/[data_source_folder]/my-data*.parquet`:该文件夹中以 `my-data` 开头的所有 Parquet 文件将导入到同一个目标表中。 + - **Source**:输入文件名模式,格式为 `[file_name].parquet`。例如:`TableName.01.parquet`。你也可以使用通配符匹配多个文件,仅支持 `*` 和 `?` 通配符。 - 注意,仅支持 `?` 和 `*`。 + - `my-data?.parquet`:匹配所有以 `my-data` 开头,后跟单个字符的 Parquet 文件,如 `my-data1.parquet` 和 `my-data2.parquet`。 + - `my-data*.parquet`:匹配所有以 `my-data` 开头的 Parquet 文件,如 `my-data-2023.parquet` 和 `my-data-final.parquet`。 - > **注意:** - > - > URI 必须包含数据源文件夹。 + - **Target Database** 和 **Target Table**:选择要导入数据的目标数据库和表。 + +6. 点击 **Next**。TiDB Cloud 会相应扫描源文件。 -6. 点击**开始导入**。 +7. 审查扫描结果,检查找到的数据文件及其对应的目标表,然后点击 **Start Import**。 -7. 当导入进度显示**已完成**时,检查导入的表。 +8. 当导入进度显示 **Completed** 时,检查已导入的数据表。
-
+
-1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入你的项目 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 选择**从云存储导入数据**,然后点击**阿里云 OSS**。 +2. 点击 **Import data from Cloud Storage**。 -3. 在**从阿里云 OSS 导入数据**页面,为源 Parquet 文件提供以下信息: +3. 在 **Import Data from Cloud Storage** 页面,填写以下信息: - - **导入文件数量**:根据需要选择**单个文件**或**多个文件**。 - - **包含架构文件**:此字段仅在导入多个文件时可见。如果源文件夹包含目标表架构,选择**是**。否则,选择**否**。 - - **数据格式**:选择 **Parquet**。 - - **文件 URI** 或**文件夹 URI**: - - 导入单个文件时,按以下格式输入源文件 URI 和名称 `oss://[bucket_name]/[data_source_folder]/[file_name].parquet`。例如,`oss://sampledata/ingest/TableName.01.parquet`。 - - 导入多个文件时,按以下格式输入源文件 URI 和名称 `oss://[bucket_name]/[data_source_folder]/`。例如,`oss://sampledata/ingest/`。 - - **存储桶访问**:你可以使用 AccessKey 对访问存储桶。更多信息,请参阅[配置阿里云对象存储服务(OSS)访问](/tidb-cloud/serverless-external-storage.md#configure-alibaba-cloud-object-storage-service-oss-access)。 + - **Storage Provider**:选择 **Alibaba Cloud OSS**。 + - **Source Files URI**: + - 导入单个文件时,输入源文件 URI,格式为 `oss://[bucket_name]/[data_source_folder]/[file_name].parquet`。例如,`oss://sampledata/ingest/TableName.01.parquet`。 + - 导入多个文件时,输入源文件夹 URI,格式为 `oss://[bucket_name]/[data_source_folder]/`。例如,`oss://sampledata/ingest/`。 + - **Credential**:你可以使用 AccessKey 对访问你的桶。更多信息参见 [Configure Alibaba Cloud Object Storage Service (OSS) access](/tidb-cloud/serverless-external-storage.md#configure-alibaba-cloud-object-storage-service-oss-access)。 -4. 点击**连接**。 +4. 点击 **Next**。 -5. 在**目标**部分,选择目标数据库和表。 +5. 在 **Destination Mapping** 部分,指定源文件与目标表的映射方式。 - 导入多个文件时,你可以使用**高级设置** > **映射设置**为每个目标表及其对应的 Parquet 文件定义自定义映射规则。之后,将使用提供的自定义映射规则重新扫描数据源文件。 + 当 **Source Files URI** 指定为目录时,默认选中 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项。 - 在**源文件 URI 和名称**中输入源文件 URI 和名称时,确保使用以下格式 `oss://[bucket_name]/[data_source_folder]/[file_name].parquet`。例如,`oss://sampledata/ingest/TableName.01.parquet`。 + > **Note:** + > + > 当 **Source Files URI** 指定为单个文件时,不显示 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项,TiDB Cloud 会自动将 **Source** 字段填充为文件名。此时你只需选择目标数据库和表进行数据导入。 - 你还可以使用通配符匹配源文件。例如: + - 若希望 TiDB Cloud 自动将所有遵循 [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) 的源文件映射到对应表,保持该选项选中,并选择 **Parquet** 作为数据格式。 - - `oss://[bucket_name]/[data_source_folder]/my-data?.parquet`:该文件夹中以 `my-data` 开头后跟一个字符的所有 Parquet 文件(如 `my-data1.parquet` 和 `my-data2.parquet`)将导入到同一个目标表中。 + - 若需手动配置映射规则,将你的源 Parquet 文件与目标数据库和表关联,取消选中该选项,然后填写以下字段: - - `oss://[bucket_name]/[data_source_folder]/my-data*.parquet`:该文件夹中以 `my-data` 开头的所有 Parquet 文件将导入到同一个目标表中。 + - **Source**:输入文件名模式,格式为 `[file_name].parquet`。例如:`TableName.01.parquet`。你也可以使用通配符匹配多个文件,仅支持 `*` 和 `?` 通配符。 - 注意,仅支持 `?` 和 `*`。 + - `my-data?.parquet`:匹配所有以 `my-data` 开头,后跟单个字符的 Parquet 文件,如 `my-data1.parquet` 和 `my-data2.parquet`。 + - `my-data*.parquet`:匹配所有以 `my-data` 开头的 Parquet 文件,如 `my-data-2023.parquet` 和 `my-data-final.parquet`。 - > **注意:** - > - > URI 必须包含数据源文件夹。 + - **Target Database** 和 **Target Table**:选择要导入数据的目标数据库和表。 + +6. 点击 **Next**。TiDB Cloud 会相应扫描源文件。 -6. 点击**开始导入**。 +7. 审查扫描结果,检查找到的数据文件及其对应的目标表,然后点击 **Start Import**。 -7. 当导入进度显示**已完成**时,检查导入的表。 +8. 当导入进度显示 **Completed** 时,检查已导入的数据表。
-运行导入任务时,如果检测到任何不支持或无效的转换,TiDB Cloud Serverless 会自动终止导入作业并报告导入错误。 +当你运行导入任务时,如果检测到任何不支持或无效的类型转换,TiDB Cloud Serverless 会自动终止导入任务并报告导入错误。 -如果遇到导入错误,请执行以下操作: +如果你遇到导入错误,请按以下步骤操作: 1. 删除部分导入的表。 -2. 检查表架构文件。如果有任何错误,请更正表架构文件。 +2. 检查表结构文件,如有错误请修正表结构文件。 3. 检查 Parquet 文件中的数据类型。 - 如果 Parquet 文件包含任何不支持的数据类型(例如 `NEST STRUCT`、`ARRAY` 或 `MAP`),你需要使用[支持的数据类型](#支持的数据类型)(例如 `STRING`)重新生成 Parquet 文件。 + 如果 Parquet 文件包含任何不支持的数据类型(如 `NEST STRUCT`、`ARRAY` 或 `MAP`),你需要使用 [支持的数据类型](#supported-data-types)(如 `STRING`)重新生成 Parquet 文件。 -4. 重试导入任务。 +4. 重新尝试导入任务。 ## 支持的数据类型 -下表列出了可以导入到 TiDB Cloud Serverless 的支持的 Parquet 数据类型。 +下表列出了可导入到 TiDB Cloud Serverless 的 Parquet 支持数据类型。 -| Parquet 基本类型 | Parquet 逻辑类型 | TiDB 或 MySQL 中的类型 | +| Parquet Primitive Type | Parquet Logical Type | Types in TiDB or MySQL | |---|---|---| | DOUBLE | DOUBLE | DOUBLE
FLOAT | | FIXED_LEN_BYTE_ARRAY(9) | DECIMAL(20,0) | BIGINT UNSIGNED | @@ -332,14 +336,14 @@ summary: 了解如何从 Amazon S3、GCS、Azure Blob Storage 或阿里云对象 | TINYINT | N/A | INT32 | | TINYINT UNSIGNED | N/A | INT32 | -## 故障排除 +## 故障排查 ### 解决数据导入过程中的警告 -点击**开始导入**后,如果看到类似 `can't find the corresponding source files` 的警告消息,请通过提供正确的源文件、根据[数据导入命名约定](/tidb-cloud/naming-conventions-for-data-import.md)重命名现有文件或使用**高级设置**进行更改来解决此问题。 +点击 **Start Import** 后,如果你看到类似 `can't find the corresponding source files` 的警告信息,可以通过提供正确的源文件、按照 [Naming Conventions for Data Import](/tidb-cloud/naming-conventions-for-data-import.md) 重命名现有文件,或使用 **Advanced Settings** 进行调整来解决。 解决这些问题后,你需要重新导入数据。 -### 导入的表中行数为零 +### 导入表中数据行为 0 -导入进度显示**已完成**后,检查导入的表。如果行数为零,则表示没有数据文件与你输入的存储桶 URI 匹配。在这种情况下,请通过提供正确的源文件、根据[数据导入命名约定](/tidb-cloud/naming-conventions-for-data-import.md)重命名现有文件或使用**高级设置**进行更改来解决此问题。之后,重新导入这些表。 +当导入进度显示 **Completed** 后,检查已导入的数据表。如果行数为 0,说明没有数据文件匹配你输入的 Bucket URI。此时,请通过提供正确的源文件、按照 [Naming Conventions for Data Import](/tidb-cloud/naming-conventions-for-data-import.md) 重命名现有文件,或使用 **Advanced Settings** 进行调整来解决。之后,重新导入这些表。 \ No newline at end of file diff --git a/tidb-cloud/import-parquet-files.md b/tidb-cloud/import-parquet-files.md index bb056d9cb5ccf..9245864fc4128 100644 --- a/tidb-cloud/import-parquet-files.md +++ b/tidb-cloud/import-parquet-files.md @@ -1,23 +1,23 @@ --- -title: 从云存储导入 Apache Parquet 文件到 TiDB Cloud Dedicated -summary: 了解如何从 Amazon S3、GCS 或 Azure Blob Storage 导入 Apache Parquet 文件到 TiDB Cloud Dedicated。 +title: 从云存储导入 Apache Parquet 文件到 TiDB Cloud 专属集群 +summary: 了解如何将 Apache Parquet 文件从 Amazon S3、GCS 或 Azure Blob Storage 导入到 TiDB Cloud 专属集群。 --- -# 从云存储导入 Apache Parquet 文件到 TiDB Cloud Dedicated +# 从云存储导入 Apache Parquet 文件到 TiDB Cloud 专属集群 -本文介绍如何从 Amazon Simple Storage Service (Amazon S3)、Google Cloud Storage (GCS) 或 Azure Blob Storage 导入 Apache Parquet 文件到 TiDB Cloud Dedicated。你可以导入未压缩的 Parquet 文件或使用 [Google Snappy](https://github.com/google/snappy) 压缩的 Parquet 文件。不支持其他 Parquet 压缩编解码器。 +本文档介绍如何将 Apache Parquet 文件从 Amazon Simple Storage Service(Amazon S3)、Google Cloud Storage(GCS)或 Azure Blob Storage 导入到 TiDB Cloud 专属集群。你可以导入未压缩的 Parquet 文件或使用 [Google Snappy](https://github.com/google/snappy) 压缩的 Parquet 文件。不支持其他 Parquet 压缩编解码器。 ## 限制 -- 为确保数据一致性,TiDB Cloud 只允许将 Parquet 文件导入到空表中。要将数据导入到已包含数据的现有表中,你可以按照本文档将数据导入到临时空表中,然后使用 `INSERT SELECT` 语句将数据复制到目标现有表中。 +- 为确保数据一致性,TiDB Cloud 仅允许将 Parquet 文件导入到空表中。若需将数据导入到已存在数据的表中,你可以按照本文档的步骤,先将数据导入到一个临时空表中,然后使用 `INSERT SELECT` 语句将数据复制到目标表。 -- 如果 TiDB Cloud Dedicated 集群有 [changefeed](/tidb-cloud/changefeed-overview.md) 或启用了[时间点恢复](/tidb-cloud/backup-and-restore.md#turn-on-point-in-time-restore),则无法向该集群导入数据(**导入数据**按钮将被禁用),因为当前的数据导入功能使用[物理导入模式](https://docs.pingcap.com/tidb/stable/tidb-lightning-physical-import-mode)。在此模式下,导入的数据不会生成变更日志,因此 changefeed 和时间点恢复无法检测到导入的数据。 +- 如果 TiDB Cloud 专属集群已开启 [changefeed](/tidb-cloud/changefeed-overview.md) 或 [时间点恢复](/tidb-cloud/backup-and-restore.md#turn-on-point-in-time-restore),则无法向该集群导入数据(**Import Data** 按钮会被禁用),因为当前数据导入功能使用的是 [物理导入模式](https://docs.pingcap.com/tidb/stable/tidb-lightning-physical-import-mode)。在该模式下,导入的数据不会生成变更日志,因此 changefeed 和时间点恢复无法检测到导入的数据。 -## 步骤 1. 准备 Parquet 文件 +## 第 1 步:准备 Parquet 文件 > **注意:** > -> 目前,TiDB Cloud 不支持导入包含以下任何数据类型的 Parquet 文件。如果要导入的 Parquet 文件包含此类数据类型,你需要首先使用[支持的数据类型](#支持的数据类型)(例如 `STRING`)重新生成 Parquet 文件。或者,你可以使用 AWS Glue 等服务轻松转换数据类型。 +> 目前,TiDB Cloud 不支持导入包含以下任意数据类型的 Parquet 文件。如果待导入的 Parquet 文件包含这些数据类型,你需要先使用 [支持的数据类型](#supported-data-types)(例如 `STRING`)重新生成 Parquet 文件。或者,你也可以使用如 AWS Glue 等服务轻松转换数据类型。 > > - `LIST` > - `NEST STRUCT` @@ -25,52 +25,50 @@ summary: 了解如何从 Amazon S3、GCS 或 Azure Blob Storage 导入 Apache Pa > - `ARRAY` > - `MAP` -1. 如果 Parquet 文件大于 256 MB,建议将其拆分为较小的文件,每个文件大小约为 256 MB。 +1. 如果单个 Parquet 文件大于 256 MB,建议将其拆分为多个小文件,每个文件大小约为 256 MB。 - TiDB Cloud 支持导入非常大的 Parquet 文件,但在处理大小约为 256 MB 的多个输入文件时性能最佳。这是因为 TiDB Cloud 可以并行处理多个文件,从而大大提高导入速度。 + TiDB Cloud 支持导入非常大的 Parquet 文件,但在多个约 256 MB 的输入文件时性能最佳。这是因为 TiDB Cloud 可以并行处理多个文件,从而大幅提升导入速度。 -2. 按以下方式命名 Parquet 文件: +2. 按如下方式命名 Parquet 文件: - - 如果 Parquet 文件包含整个表的所有数据,请按 `${db_name}.${table_name}.parquet` 格式命名文件,该文件在导入数据时会映射到 `${db_name}.${table_name}` 表。 - - 如果一个表的数据分散在多个 Parquet 文件中,请在这些 Parquet 文件后附加数字后缀。例如,`${db_name}.${table_name}.000001.parquet` 和 `${db_name}.${table_name}.000002.parquet`。数字后缀可以不连续,但必须按升序排列。你还需要在数字前添加额外的零,以确保所有后缀长度相同。 + - 如果一个 Parquet 文件包含整个表的所有数据,文件名应采用 `${db_name}.${table_name}.parquet` 格式,导入时会映射到 `${db_name}.${table_name}` 表。 + - 如果一个表的数据被拆分为多个 Parquet 文件,应为这些文件添加数字后缀。例如,`${db_name}.${table_name}.000001.parquet` 和 `${db_name}.${table_name}.000002.parquet`。数字后缀可以不连续,但必须递增,并且需要在数字前补零以保证所有后缀长度一致。 > **注意:** > - > - 如果在某些情况下无法按照上述规则更新 Parquet 文件名(例如,Parquet 文件链接也被你的其他程序使用),你可以保持文件名不变,并在[步骤 4](#步骤-4-将-parquet-文件导入到-tidb-cloud) 中使用**映射设置**将源数据导入到单个目标表中。 - > - Snappy 压缩文件必须采用[官方 Snappy 格式](https://github.com/google/snappy)。不支持其他变体的 Snappy 压缩。 + > - 如果在某些情况下无法按照上述规则修改 Parquet 文件名(例如,Parquet 文件链接也被其他程序使用),你可以保持文件名不变,并在 [第 4 步](#step-4-import-parquet-files-to-tidb-cloud) 的 **Mapping Settings** 中将源数据导入到单一目标表。 + > - Snappy 压缩文件必须采用 [官方 Snappy 格式](https://github.com/google/snappy)。不支持其他 Snappy 压缩变体。 -## 步骤 2. 创建目标表架构 +## 第 2 步:创建目标表结构 -由于 Parquet 文件不包含架构信息,在将数据从 Parquet 文件导入到 TiDB Cloud 之前,你需要使用以下任一方法创建表架构: +由于 Parquet 文件不包含表结构信息,在将 Parquet 文件中的数据导入 TiDB Cloud 之前,你需要通过以下任一方式创建表结构: -- 方法 1:在 TiDB Cloud 中,为源数据创建目标数据库和表。 +- 方法一:在 TiDB Cloud 中为源数据创建目标数据库和数据表。 -- 方法 2:在存放 Parquet 文件的 Amazon S3、GCS 或 Azure Blob Storage 目录中,按以下方式为源数据创建目标表架构文件: +- 方法二:在存放 Parquet 文件的 Amazon S3、GCS 或 Azure Blob Storage 目录下,为源数据创建目标表结构文件,具体如下: - 1. 为源数据创建数据库架构文件。 + 1. 为源数据创建数据库结构文件。 - 如果你的 Parquet 文件遵循[步骤 1](#步骤-1-准备-parquet-文件) 中的命名规则,则数据导入时数据库架构文件是可选的。否则,数据库架构文件是必需的。 + 如果你的 Parquet 文件遵循 [第 1 步](#step-1-prepare-the-parquet-files) 的命名规则,则数据库结构文件为可选项,否则为必需项。 - 每个数据库架构文件必须采用 `${db_name}-schema-create.sql` 格式,并包含一个 `CREATE DATABASE` DDL 语句。通过此文件,TiDB Cloud 将在导入数据时创建 `${db_name}` 数据库来存储你的数据。 + 每个数据库结构文件必须采用 `${db_name}-schema-create.sql` 格式,并包含一个 `CREATE DATABASE` DDL 语句。通过该文件,TiDB Cloud 会在导入数据时创建 `${db_name}` 数据库以存储你的数据。 - 例如,如果你创建一个包含以下语句的 `mydb-scehma-create.sql` 文件,TiDB Cloud 将在导入数据时创建 `mydb` 数据库。 - - {{< copyable "sql" >}} + 例如,如果你创建了一个包含如下语句的 `mydb-scehma-create.sql` 文件,TiDB Cloud 会在导入数据时创建 `mydb` 数据库。 + ```sql CREATE DATABASE mydb; ``` - 2. 为源数据创建表架构文件。 - - 如果你没有在存放 Parquet 文件的 Amazon S3、GCS 或 Azure Blob Storage 目录中包含表架构文件,TiDB Cloud 在导入数据时将不会为你创建相应的表。 + 2. 为源数据创建表结构文件。 - 每个表架构文件必须采用 `${db_name}.${table_name}-schema.sql` 格式,并包含一个 `CREATE TABLE` DDL 语句。通过此文件,TiDB Cloud 将在导入数据时在 `${db_name}` 数据库中创建 `${db_table}` 表。 + 如果你未在 Parquet 文件所在的 Amazon S3、GCS 或 Azure Blob Storage 目录下包含表结构文件,TiDB Cloud 在导入数据时不会为你创建相应的数据表。 - 例如,如果你创建一个包含以下语句的 `mydb.mytable-schema.sql` 文件,TiDB Cloud 将在 `mydb` 数据库中创建 `mytable` 表。 + 每个表结构文件必须采用 `${db_name}.${table_name}-schema.sql` 格式,并包含一个 `CREATE TABLE` DDL 语句。通过该文件,TiDB Cloud 会在导入数据时于 `${db_name}` 数据库中创建 `${db_table}` 表。 - {{< copyable "sql" >}} + 例如,如果你创建了一个包含如下语句的 `mydb.mytable-schema.sql` 文件,TiDB Cloud 会在 `mydb` 数据库中创建 `mytable` 表。 + ```sql CREATE TABLE mytable ( ID INT, @@ -80,167 +78,167 @@ summary: 了解如何从 Amazon S3、GCS 或 Azure Blob Storage 导入 Apache Pa > **注意:** > - > 每个 `${db_name}.${table_name}-schema.sql` 文件应该只包含一个 DDL 语句。如果文件包含多个 DDL 语句,只有第一个语句会生效。 + > 每个 `${db_name}.${table_name}-schema.sql` 文件只能包含一个 DDL 语句。如果文件中包含多个 DDL 语句,仅第一个生效。 -## 步骤 3. 配置跨账户访问 +## 第 3 步:配置跨账号访问 -要允许 TiDB Cloud 访问 Amazon S3 存储桶、GCS 存储桶或 Azure Blob Storage 容器中的 Parquet 文件,请执行以下操作之一: +为了让 TiDB Cloud 能够访问 Amazon S3、GCS 或 Azure Blob Storage 中的 Parquet 文件,请按以下方式操作: -- 如果你的 Parquet 文件位于 Amazon S3 中,[配置 Amazon S3 访问](/tidb-cloud/dedicated-external-storage.md#configure-amazon-s3-access)。 +- 如果 Parquet 文件位于 Amazon S3,[配置 Amazon S3 访问权限](/tidb-cloud/dedicated-external-storage.md#configure-amazon-s3-access)。 - 你可以使用 AWS 访问密钥或 Role ARN 访问你的存储桶。完成后,请记下访问密钥(包括访问密钥 ID 和密钥)或 Role ARN 值,因为你将在[步骤 4](#步骤-4-将-parquet-文件导入到-tidb-cloud) 中需要它。 + 你可以使用 AWS 访问密钥或 Role ARN 访问你的存储桶。完成后,请记录访问密钥(包括访问密钥 ID 和密钥)或 Role ARN 值,后续在 [第 4 步](#step-4-import-parquet-files-to-tidb-cloud) 中会用到。 -- 如果你的 Parquet 文件位于 GCS 中,[配置 GCS 访问](/tidb-cloud/dedicated-external-storage.md#configure-gcs-access)。 +- 如果 Parquet 文件位于 GCS,[配置 GCS 访问权限](/tidb-cloud/dedicated-external-storage.md#configure-gcs-access)。 -- 如果你的 Parquet 文件位于 Azure Blob Storage 中,[配置 Azure Blob Storage 访问](/tidb-cloud/dedicated-external-storage.md#configure-azure-blob-storage-access)。 +- 如果 Parquet 文件位于 Azure Blob Storage,[配置 Azure Blob Storage 访问权限](/tidb-cloud/dedicated-external-storage.md#configure-azure-blob-storage-access)。 -## 步骤 4. 将 Parquet 文件导入到 TiDB Cloud +## 第 4 步:将 Parquet 文件导入 TiDB Cloud -要将 Parquet 文件导入到 TiDB Cloud,请执行以下步骤: +要将 Parquet 文件导入 TiDB Cloud,请按以下步骤操作:
-1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/)并导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框切换组织、项目和集群。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 选择**从云存储导入数据**。 +2. 选择 **Import data from Cloud Storage**。 -3. 在**从 Amazon S3 导入数据**页面上,提供以下信息: +3. 在 **Import Data from Amazon S3** 页面,填写以下信息: - - **包含架构文件**:如果源文件夹包含目标表架构文件(如 `${db_name}-schema-create.sql`),选择**是**。否则,选择**否**。 - - **数据格式**:选择 **Parquet**。 - - **文件夹 URI**:以 `s3://[bucket_name]/[data_source_folder]/` 格式输入源文件夹 URI。路径必须以 `/` 结尾。例如,`s3://sampledata/ingest/`。 - - **存储桶访问**:你可以使用 AWS IAM 角色 ARN 或 AWS 访问密钥访问你的存储桶。 - - **AWS Role ARN**(推荐):输入 AWS IAM 角色 ARN 值。如果你还没有存储桶的 IAM 角色,可以通过点击**点击此处使用 AWS CloudFormation 创建新角色**并按照屏幕上的说明使用提供的 AWS CloudFormation 模板创建。或者,你可以手动为存储桶创建 IAM 角色 ARN。 - - **AWS 访问密钥**:输入 AWS 访问密钥 ID 和 AWS 密钥。 - - 有关两种方法的详细说明,请参见[配置 Amazon S3 访问](/tidb-cloud/dedicated-external-storage.md#configure-amazon-s3-access)。 + - **Included Schema Files**:如果源文件夹包含目标表结构文件(如 `${db_name}-schema-create.sql`),请选择 **Yes**,否则选择 **No**。 + - **Data Format**:选择 **Parquet**。 + - **Folder URI**:输入源文件夹的 URI,格式为 `s3://[bucket_name]/[data_source_folder]/`,路径必须以 `/` 结尾。例如,`s3://sampledata/ingest/`。 + - **Bucket Access**:你可以使用 AWS IAM Role ARN 或 AWS 访问密钥访问存储桶。 + - **AWS Role ARN**(推荐):输入 AWS IAM Role ARN。如果还没有为存储桶创建 IAM 角色,可以点击 **Click here to create new one with AWS CloudFormation**,按照屏幕提示使用提供的 AWS CloudFormation 模板创建。也可以手动为存储桶创建 IAM Role ARN。 + - **AWS Access Key**:输入 AWS 访问密钥 ID 和 AWS 密钥。 + - 两种方式的详细说明见 [配置 Amazon S3 访问权限](/tidb-cloud/dedicated-external-storage.md#configure-amazon-s3-access)。 -4. 点击**连接**。 +4. 点击 **Connect**。 -5. 在**目标**部分,选择目标数据库和表。 +5. 在 **Destination** 部分,选择目标数据库和数据表。 - 导入多个文件时,你可以使用**高级设置** > **映射设置**来自定义各个目标表与其对应 Parquet 文件的映射。对于每个目标数据库和表: + 当导入多个文件时,可以通过 **Advanced Settings** > **Mapping Settings** 自定义每个目标表与其对应 Parquet 文件的映射。对于每个目标数据库和表: - - **目标数据库**:从列表中选择相应的数据库名称。 - - **目标表**:从列表中选择相应的表名称。 - - **源文件 URI 和名称**:输入源文件的完整 URI,包括文件夹和文件名,确保其格式为 `s3://[bucket_name]/[data_source_folder]/[file_name].parquet`。例如,`s3://sampledata/ingest/TableName.01.parquet`。你也可以使用通配符(`?` 和 `*`)匹配多个文件。例如: - - `s3://[bucket_name]/[data_source_folder]/my-data1.parquet`:`[data_source_folder]` 中名为 `my-data1.parquet` 的单个 Parquet 文件将被导入到目标表中。 - - `s3://[bucket_name]/[data_source_folder]/my-data?.parquet`:`[data_source_folder]` 中以 `my-data` 开头后跟一个字符的所有 Parquet 文件(如 `my-data1.parquet` 和 `my-data2.parquet`)将被导入到同一个目标表中。 - - `s3://[bucket_name]/[data_source_folder]/my-data*.parquet`:`[data_source_folder]` 中以 `my-data` 开头的所有 Parquet 文件(如 `my-data10.parquet` 和 `my-data100.parquet`)将被导入到同一个目标表中。 + - **Target Database**:从列表中选择对应的数据库名。 + - **Target Table**:从列表中选择对应的表名。 + - **Source File URIs and Names**:输入源文件的完整 URI,包括文件夹和文件名,格式为 `s3://[bucket_name]/[data_source_folder]/[file_name].parquet`。例如,`s3://sampledata/ingest/TableName.01.parquet`。你也可以使用通配符(`?` 和 `*`)匹配多个文件。例如: + - `s3://[bucket_name]/[data_source_folder]/my-data1.parquet`:将 `[data_source_folder]` 下名为 `my-data1.parquet` 的单个 Parquet 文件导入目标表。 + - `s3://[bucket_name]/[data_source_folder]/my-data?.parquet`:将 `[data_source_folder]` 下所有以 `my-data` 开头、后跟一个字符(如 `my-data1.parquet` 和 `my-data2.parquet`)的 Parquet 文件导入同一目标表。 + - `s3://[bucket_name]/[data_source_folder]/my-data*.parquet`:将 `[data_source_folder]` 下所有以 `my-data` 开头(如 `my-data10.parquet` 和 `my-data100.parquet`)的 Parquet 文件导入同一目标表。 -6. 点击**开始导入**。 +6. 点击 **Start Import**。 -7. 当导入进度显示**已完成**时,检查导入的表。 +7. 当导入进度显示 **Completed** 时,检查已导入的数据表。
-1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/)并导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框切换组织、项目和集群。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 选择**从云存储导入数据**。 +2. 选择 **Import data from Cloud Storage**。 -3. 在**从 GCS 导入数据**页面上,为源 Parquet 文件提供以下信息: +3. 在 **Import Data from Cloud Storage** 页面,为源 Parquet 文件填写以下信息: - - **包含架构文件**:如果源文件夹包含目标表架构文件(如 `${db_name}-schema-create.sql`),选择**是**。否则,选择**否**。 - - **数据格式**:选择 **Parquet**。 - - **文件夹 URI**:以 `gs://[bucket_name]/[data_source_folder]/` 格式输入源文件夹 URI。路径必须以 `/` 结尾。例如,`gs://sampledata/ingest/`。 - - **Google Cloud 服务账号 ID**:TiDB Cloud 在此页面上提供唯一的服务账号 ID(如 `example-service-account@your-project.iam.gserviceaccount.com`)。你必须在 Google Cloud 项目中为你的 GCS 存储桶授予此服务账号 ID 必要的 IAM 权限(如 "Storage Object Viewer")。更多信息,请参见[配置 GCS 访问](/tidb-cloud/dedicated-external-storage.md#configure-gcs-access)。 + - **Included Schema Files**:如果源文件夹包含目标表结构文件(如 `${db_name}-schema-create.sql`),请选择 **Yes**,否则选择 **No**。 + - **Data Format**:选择 **Parquet**。 + - **Folder URI**:输入源文件夹的 URI,格式为 `gs://[bucket_name]/[data_source_folder]/`,路径必须以 `/` 结尾。例如,`gs://sampledata/ingest/`。 + - **Google Cloud Service Account ID**:TiDB Cloud 会在此页面提供一个唯一的 Service Account ID(如 `example-service-account@your-project.iam.gserviceaccount.com`)。你必须在 Google Cloud 项目中为该 Service Account ID 授予所需的 IAM 权限(如 “Storage Object Viewer”)以访问你的 GCS 存储桶。更多信息见 [配置 GCS 访问权限](/tidb-cloud/dedicated-external-storage.md#configure-gcs-access)。 -4. 点击**连接**。 +4. 点击 **Connect**。 -5. 在**目标**部分,选择目标数据库和表。 +5. 在 **Destination** 部分,选择目标数据库和数据表。 - 导入多个文件时,你可以使用**高级设置** > **映射设置**来自定义各个目标表与其对应 Parquet 文件的映射。对于每个目标数据库和表: + 当导入多个文件时,可以通过 **Advanced Settings** > **Mapping Settings** 自定义每个目标表与其对应 Parquet 文件的映射。对于每个目标数据库和表: - - **目标数据库**:从列表中选择相应的数据库名称。 - - **目标表**:从列表中选择相应的表名称。 - - **源文件 URI 和名称**:输入源文件的完整 URI,包括文件夹和文件名,确保其格式为 `gs://[bucket_name]/[data_source_folder]/[file_name].parquet`。例如,`gs://sampledata/ingest/TableName.01.parquet`。你也可以使用通配符(`?` 和 `*`)匹配多个文件。例如: - - `gs://[bucket_name]/[data_source_folder]/my-data1.parquet`:`[data_source_folder]` 中名为 `my-data1.parquet` 的单个 Parquet 文件将被导入到目标表中。 - - `gs://[bucket_name]/[data_source_folder]/my-data?.parquet`:`[data_source_folder]` 中以 `my-data` 开头后跟一个字符的所有 Parquet 文件(如 `my-data1.parquet` 和 `my-data2.parquet`)将被导入到同一个目标表中。 - - `gs://[bucket_name]/[data_source_folder]/my-data*.parquet`:`[data_source_folder]` 中以 `my-data` 开头的所有 Parquet 文件(如 `my-data10.parquet` 和 `my-data100.parquet`)将被导入到同一个目标表中。 + - **Target Database**:从列表中选择对应的数据库名。 + - **Target Table**:从列表中选择对应的表名。 + - **Source File URIs and Names**:输入源文件的完整 URI,包括文件夹和文件名,格式为 `gs://[bucket_name]/[data_source_folder]/[file_name].parquet`。例如,`gs://sampledata/ingest/TableName.01.parquet`。你也可以使用通配符(`?` 和 `*`)匹配多个文件。例如: + - `gs://[bucket_name]/[data_source_folder]/my-data1.parquet`:将 `[data_source_folder]` 下名为 `my-data1.parquet` 的单个 Parquet 文件导入目标表。 + - `gs://[bucket_name]/[data_source_folder]/my-data?.parquet`:将 `[data_source_folder]` 下所有以 `my-data` 开头、后跟一个字符(如 `my-data1.parquet` 和 `my-data2.parquet`)的 Parquet 文件导入同一目标表。 + - `gs://[bucket_name]/[data_source_folder]/my-data*.parquet`:将 `[data_source_folder]` 下所有以 `my-data` 开头(如 `my-data10.parquet` 和 `my-data100.parquet`)的 Parquet 文件导入同一目标表。 -6. 点击**开始导入**。 +6. 点击 **Start Import**。 -7. 当导入进度显示**已完成**时,检查导入的表。 +7. 当导入进度显示 **Completed** 时,检查已导入的数据表。
-1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/)并导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框切换组织、项目和集群。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 选择**从云存储导入数据**。 +2. 选择 **Import data from Cloud Storage**。 -3. 在**从 Azure Blob Storage 导入数据**页面上,提供以下信息: +3. 在 **Import Data from Azure Blob Storage** 页面,填写以下信息: - - **包含架构文件**:如果源文件夹包含目标表架构文件(如 `${db_name}-schema-create.sql`),选择**是**。否则,选择**否**。 - - **数据格式**:选择 **Parquet**。 - - **文件夹 URI**:使用格式 `https://[account_name].blob.core.windows.net/[container_name]/[data_source_folder]/` 输入源文件所在的 Azure Blob Storage URI。路径必须以 `/` 结尾。例如,`https://myaccount.blob.core.windows.net/mycontainer/data-ingestion/`。 - - **SAS 令牌**:输入账户 SAS 令牌以允许 TiDB Cloud 访问你的 Azure Blob Storage 容器中的源文件。如果你还没有,可以通过点击**点击此处使用 Azure ARM 模板创建新令牌**并按照屏幕上的说明使用提供的 Azure ARM 模板创建。或者,你可以手动创建账户 SAS 令牌。更多信息,请参见[配置 Azure Blob Storage 访问](/tidb-cloud/dedicated-external-storage.md#configure-azure-blob-storage-access)。 + - **Included Schema Files**:如果源文件夹包含目标表结构文件(如 `${db_name}-schema-create.sql`),请选择 **Yes**,否则选择 **No**。 + - **Data Format**:选择 **Parquet**。 + - **Folder URI**:输入源文件所在的 Azure Blob Storage URI,格式为 `https://[account_name].blob.core.windows.net/[container_name]/[data_source_folder]/`,路径必须以 `/` 结尾。例如,`https://myaccount.blob.core.windows.net/mycontainer/data-ingestion/`。 + - **SAS Token**:输入账户 SAS token,以允许 TiDB Cloud 访问 Azure Blob Storage 容器中的源文件。如果还没有 SAS token,可以点击 **Click here to create a new one with Azure ARM template**,按照屏幕提示使用提供的 Azure ARM 模板创建。也可以手动创建账户 SAS token。更多信息见 [配置 Azure Blob Storage 访问权限](/tidb-cloud/dedicated-external-storage.md#configure-azure-blob-storage-access)。 -4. 点击**连接**。 +4. 点击 **Connect**。 -5. 在**目标**部分,选择目标数据库和表。 +5. 在 **Destination** 部分,选择目标数据库和数据表。 - 导入多个文件时,你可以使用**高级设置** > **映射设置**来自定义各个目标表与其对应 Parquet 文件的映射。对于每个目标数据库和表: + 当导入多个文件时,可以通过 **Advanced Settings** > **Mapping Settings** 自定义每个目标表与其对应 Parquet 文件的映射。对于每个目标数据库和表: - - **目标数据库**:从列表中选择相应的数据库名称。 - - **目标表**:从列表中选择相应的表名称。 - - **源文件 URI 和名称**:输入源文件的完整 URI,包括文件夹和文件名,确保其格式为 `https://[account_name].blob.core.windows.net/[container_name]/[data_source_folder]/[file_name].parquet`。例如,`https://myaccount.blob.core.windows.net/mycontainer/data-ingestion/TableName.01.parquet`。你也可以使用通配符(`?` 和 `*`)匹配多个文件。例如: - - `https://[account_name].blob.core.windows.net/[container_name]/[data_source_folder]/my-data1.parquet`:`[data_source_folder]` 中名为 `my-data1.parquet` 的单个 Parquet 文件将被导入到目标表中。 - - `https://[account_name].blob.core.windows.net/[container_name]/[data_source_folder]/my-data?.parquet`:`[data_source_folder]` 中以 `my-data` 开头后跟一个字符的所有 Parquet 文件(如 `my-data1.parquet` 和 `my-data2.parquet`)将被导入到同一个目标表中。 - - `https://[account_name].blob.core.windows.net/[container_name]/[data_source_folder]/my-data*.parquet`:`[data_source_folder]` 中以 `my-data` 开头的所有 Parquet 文件(如 `my-data10.parquet` 和 `my-data100.parquet`)将被导入到同一个目标表中。 + - **Target Database**:从列表中选择对应的数据库名。 + - **Target Table**:从列表中选择对应的表名。 + - **Source File URIs and Names**:输入源文件的完整 URI,包括文件夹和文件名,格式为 `https://[account_name].blob.core.windows.net/[container_name]/[data_source_folder]/[file_name].parquet`。例如,`https://myaccount.blob.core.windows.net/mycontainer/data-ingestion/TableName.01.parquet`。你也可以使用通配符(`?` 和 `*`)匹配多个文件。例如: + - `https://[account_name].blob.core.windows.net/[container_name]/[data_source_folder]/my-data1.parquet`:将 `[data_source_folder]` 下名为 `my-data1.parquet` 的单个 Parquet 文件导入目标表。 + - `https://[account_name].blob.core.windows.net/[container_name]/[data_source_folder]/my-data?.parquet`:将 `[data_source_folder]` 下所有以 `my-data` 开头、后跟一个字符(如 `my-data1.parquet` 和 `my-data2.parquet`)的 Parquet 文件导入同一目标表。 + - `https://[account_name].blob.core.windows.net/[container_name]/[data_source_folder]/my-data*.parquet`:将 `[data_source_folder]` 下所有以 `my-data` 开头(如 `my-data10.parquet` 和 `my-data100.parquet`)的 Parquet 文件导入同一目标表。 -6. 点击**开始导入**。 +6. 点击 **Start Import**。 -7. 当导入进度显示**已完成**时,检查导入的表。 +7. 当导入进度显示 **Completed** 时,检查已导入的数据表。
-运行导入任务时,如果检测到任何不支持或无效的转换,TiDB Cloud 会自动终止导入作业并报告导入错误。你可以在**状态**字段中查看详细信息。 +当你运行导入任务时,如果检测到任何不支持或无效的类型转换,TiDB Cloud 会自动终止导入任务并报告导入错误。你可以在 **Status** 字段查看详细信息。 -如果遇到导入错误,请执行以下操作: +如果遇到导入错误,请按以下步骤操作: 1. 删除部分导入的表。 -2. 检查表架构文件。如果有任何错误,请更正表架构文件。 +2. 检查表结构文件,如有错误请修正。 3. 检查 Parquet 文件中的数据类型。 - 如果 Parquet 文件包含任何不支持的数据类型(例如 `NEST STRUCT`、`ARRAY` 或 `MAP`),你需要使用[支持的数据类型](#支持的数据类型)(例如 `STRING`)重新生成 Parquet 文件。 + 如果 Parquet 文件包含任何不支持的数据类型(如 `NEST STRUCT`、`ARRAY` 或 `MAP`),你需要使用 [支持的数据类型](#supported-data-types)(如 `STRING`)重新生成 Parquet 文件。 -4. 重试导入任务。 +4. 重新尝试导入任务。 ## 支持的数据类型 -下表列出了可以导入到 TiDB Cloud 的支持的 Parquet 数据类型。 +下表列出了可导入到 TiDB Cloud 的 Parquet 支持数据类型。 -| Parquet 基本类型 | Parquet 逻辑类型 | TiDB 或 MySQL 中的类型 | +| Parquet Primitive Type | Parquet Logical Type | Types in TiDB or MySQL | |---|---|---| | DOUBLE | DOUBLE | DOUBLE
FLOAT | | FIXED_LEN_BYTE_ARRAY(9) | DECIMAL(20,0) | BIGINT UNSIGNED | @@ -257,14 +255,14 @@ summary: 了解如何从 Amazon S3、GCS 或 Azure Blob Storage 导入 Apache Pa | TINYINT | N/A | INT32 | | TINYINT UNSIGNED | N/A | INT32 | -## 故障排除 +## 故障排查 -### 解决数据导入期间的警告 +### 解决数据导入过程中的警告 -点击**开始导入**后,如果看到类似 `can't find the corresponding source files` 的警告消息,请通过提供正确的源文件、按照[数据导入命名约定](/tidb-cloud/naming-conventions-for-data-import.md)重命名现有文件或使用**高级设置**进行更改来解决此问题。 +点击 **Start Import** 后,如果看到类似 `can't find the corresponding source files` 的警告信息,可以通过提供正确的源文件、按照 [数据导入命名规范](/tidb-cloud/naming-conventions-for-data-import.md)重命名现有文件,或使用 **Advanced Settings** 进行调整来解决。 -解决这些问题后,你需要重新导入数据。 +解决后需要重新导入数据。 -### 导入的表中行数为零 +### 导入表中数据行为零 -导入进度显示**已完成**后,检查导入的表。如果行数为零,则表示没有数据文件与你输入的存储桶 URI 匹配。在这种情况下,请通过提供正确的源文件、按照[数据导入命名约定](/tidb-cloud/naming-conventions-for-data-import.md)重命名现有文件或使用**高级设置**进行更改来解决此问题。之后,重新导入这些表。 +导入进度显示 **Completed** 后,检查已导入的数据表。如果行数为零,说明没有数据文件匹配你输入的 Bucket URI。此时,可以通过提供正确的源文件、按照 [数据导入命名规范](/tidb-cloud/naming-conventions-for-data-import.md)重命名现有文件,或使用 **Advanced Settings** 进行调整来解决。之后请重新导入这些表。 \ No newline at end of file diff --git a/tidb-cloud/import-sample-data-serverless.md b/tidb-cloud/import-sample-data-serverless.md index 1eaa1d5a89559..e4ea4194001f0 100644 --- a/tidb-cloud/import-sample-data-serverless.md +++ b/tidb-cloud/import-sample-data-serverless.md @@ -1,45 +1,49 @@ --- -title: 导入示例数据到 TiDB Cloud Serverless -summary: 了解如何通过 UI 将示例数据导入到 TiDB Cloud Serverless。 +title: 将示例数据导入 TiDB Cloud Serverless +summary: 了解如何通过 UI 将示例数据导入 TiDB Cloud Serverless。 --- -# 导入示例数据到 TiDB Cloud Serverless +# 将示例数据导入 TiDB Cloud Serverless -本文介绍如何通过 UI 将示例数据导入到 TiDB Cloud Serverless。使用的示例数据是 Capital Bikeshare 的系统数据,根据 Capital Bikeshare 数据许可协议发布。在导入示例数据之前,你需要有一个 TiDB 集群。 +本文档介绍了如何通过 UI 将示例数据导入 TiDB Cloud Serverless。所使用的示例数据为 Capital Bikeshare 的系统数据,根据 Capital Bikeshare 数据许可协议发布。在导入示例数据之前,你需要拥有一个 TiDB 集群。 > **注意:** > > TiDB Cloud Serverless 目前仅支持从 Amazon S3 导入示例数据。 -1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/)并导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),并进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 选择**从云存储导入数据**,然后点击 **Amazon S3**。 +2. 点击 **Import data from Cloud Storage**。 -3. 在**从 Amazon S3 导入数据**页面上,配置以下源数据信息: +3. 在 **Import Data from Cloud Storage** 页面,填写以下信息: - - **导入文件数量**:对于示例数据,选择**多个文件**。 - - **包含架构文件**:对于示例数据,选择**是**。 - - **数据格式**:选择 **SQL**。 - - **文件夹 URI** 或**文件 URI**:输入示例数据 URI `s3://tidbcloud-sample-data/data-ingestion/`。 - - **存储桶访问**:对于示例数据,你只能使用 Role ARN 访问其存储桶。对于你自己的数据,你可以使用 AWS 访问密钥或 Role ARN 访问你的存储桶。 - - **AWS Role ARN**:输入 `arn:aws:iam::801626783489:role/import-sample-access`。 - - **AWS 访问密钥**:对于示例数据,跳过此选项。 + - **Storage Provider**:选择 **Amazon S3**。 + - **Source Files URI**:输入示例数据 URI `s3://tidbcloud-sample-data/data-ingestion/`。 + - **Credential**: + - **AWS Role ARN**:输入 `arn:aws:iam::801626783489:role/import-sample-access`。 + - **AWS Access Key**:对于示例数据可跳过此项。 -4. 点击**连接** > **开始导入**。 +4. 点击 **Next**。 -当数据导入进度显示**已完成**时,你已成功将示例数据和数据库架构导入到 TiDB Cloud Serverless 中的数据库。 +5. 在 **Destination Mapping** 部分,保持选中 **Use [File naming conventions](/tidb-cloud/naming-conventions-for-data-import.md) for automatic mapping** 选项,并选择 **SQL** 作为数据格式。 + +6. 点击 **Next**。 + +7. 查看扫描结果,检查发现的数据文件及其对应的目标表,然后点击 **Start Import**。 + +8. 当导入进度显示为 **Completed** 时,检查已导入的表。 连接到集群后,你可以在终端中运行一些查询来检查结果,例如: -1. 获取起始站为 "12th & U St NW" 的行程记录: +1. 获取起点为 "12th & U St NW" 的骑行记录: ```sql use bikeshare; @@ -66,7 +70,7 @@ summary: 了解如何通过 UI 将示例数据导入到 TiDB Cloud Serverless。 +-----------------+---------------+---------------------+---------------------+--------------------+------------------+-------------------------------------------+----------------+-----------+------------+-----------+------------+---------------+ ``` -2. 获取电动自行车的行程记录: +2. 获取使用电动自行车的骑行记录: ```sql use bikeshare; @@ -91,4 +95,4 @@ summary: 了解如何通过 UI 将示例数据导入到 TiDB Cloud Serverless。 | 211D449363FB7EE3 | electric_bike | 2021-01-15 17:22:02 | 2021-01-15 17:35:49 | 7th & K St NW | 31653 | 15th & East Capitol St NE | 31630 | 38.90216 | -77.0211 | 38.88 | 76.98357 | casual | | CE667578A7291701 | electric_bike | 2021-01-15 16:55:12 | 2021-01-15 17:38:26 | East West Hwy & 16th St | 32056 | East West Hwy & Blair Mill Rd | 32019 | 38.995674 | -77.03868 | 38.990 | 77.02953 | casual | +------------------+---------------+---------------------+---------------------+----------------------------------------+------------------+-------------------------------------------------------+----------------+-----------+------------+-----------+------------+---------------+ - ``` + ``` \ No newline at end of file diff --git a/tidb-cloud/import-with-mysql-cli-serverless.md b/tidb-cloud/import-with-mysql-cli-serverless.md index e48214eed080c..177e3b02f6bca 100644 --- a/tidb-cloud/import-with-mysql-cli-serverless.md +++ b/tidb-cloud/import-with-mysql-cli-serverless.md @@ -1,52 +1,52 @@ --- -title: 通过 MySQL CLI 导入数据到 TiDB Cloud Serverless -summary: 了解如何通过 MySQL CLI 导入数据到 TiDB Cloud Serverless。 +title: 通过 MySQL CLI 向 TiDB Cloud Serverless 导入数据 +summary: 学习如何通过 MySQL CLI 向 TiDB Cloud Serverless 导入数据。 --- -# 通过 MySQL CLI 导入数据到 TiDB Cloud Serverless +# 通过 MySQL CLI 向 TiDB Cloud Serverless 导入数据 -本文介绍如何通过 [MySQL 命令行客户端](https://dev.mysql.com/doc/refman/8.0/en/mysql.html)将数据导入到 TiDB Cloud Serverless。你可以从 SQL 文件或 CSV 文件导入数据。以下各节提供从每种类型文件导入数据的分步说明。 +本文档介绍了如何通过 [MySQL 命令行客户端](https://dev.mysql.com/doc/refman/8.0/en/mysql.html) 向 TiDB Cloud Serverless 导入数据。你可以从 SQL 文件或 CSV 文件导入数据。以下章节将分别提供从每种文件类型导入数据的分步说明。 -## 前提条件 +## 前置条件 -在通过 MySQL CLI 导入数据到 TiDB Cloud Serverless 之前,你需要满足以下前提条件: +在你通过 MySQL CLI 向 TiDB Cloud Serverless 导入数据之前,需要满足以下前置条件: -- 你可以访问你的 TiDB Cloud Serverless 集群。如果没有,请按照[构建 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md)中的说明创建一个。 +- 你可以访问自己的 TiDB Cloud Serverless 集群。如果还没有集群,请按照 [构建 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md) 的说明创建一个。 - 在本地计算机上安装 MySQL CLI。 ## 步骤 1. 连接到你的 TiDB Cloud Serverless 集群 连接到你的 TiDB 集群。 -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群的名称,进入其概览页面。 -2. 点击右上角的**连接**。此时会显示连接对话框。 +2. 点击右上角的 **Connect**。此时会弹出连接对话框。 -3. 确保连接对话框中的配置与你的操作环境匹配。 +3. 确保连接对话框中的配置与你的操作环境一致。 - - **连接类型**设置为 `Public`。 - - **连接方式**设置为 `MySQL CLI`。 - - **操作系统**与你的环境匹配。 + - **Connection Type** 设置为 `Public`。 + - **Connect With** 设置为 `MySQL CLI`。 + - **Operating System** 与你的环境一致。 -4. 点击**生成密码**创建随机密码。 +4. 点击 **Generate Password** 生成一个随机密码。 > **提示:** > - > 如果你之前已经创建了密码,可以使用原始密码或点击**重置密码**生成新密码。 + > 如果你之前已经创建过密码,可以继续使用原有密码,或者点击 **Reset Password** 生成新密码。 -## 步骤 2. 定义表并插入示例数据 +## 步骤 2. 定义数据表并插入示例数据 -在导入数据之前,你需要准备表结构并向其中插入实际的示例数据。以下是一个可用于创建表和插入示例数据的 SQL 文件(`product_data.sql`)示例: +在导入数据之前,你需要准备好表结构,并向表中插入真实的示例数据。以下是一个 SQL 文件(`product_data.sql`)的示例,你可以用它来创建数据表并插入示例数据: ```sql --- 在你的 TiDB 数据库中创建表 +-- Create a table in your TiDB database CREATE TABLE products ( product_id INT PRIMARY KEY, product_name VARCHAR(255), price DECIMAL(10, 2) ); --- 向表中插入示例数据 +-- Insert sample data into the table INSERT INTO products (product_id, product_name, price) VALUES (1, 'Laptop', 999.99), (2, 'Smartphone', 499.99), @@ -55,14 +55,14 @@ INSERT INTO products (product_id, product_name, price) VALUES ## 步骤 3. 从 SQL 或 CSV 文件导入数据 -你可以从 SQL 文件或 CSV 文件导入数据。以下各节提供从每种类型文件导入数据的分步说明。 +你可以从 SQL 文件或 CSV 文件导入数据。以下章节将分别提供从每种文件类型导入数据的分步说明。 -
+
-执行以下操作从 SQL 文件导入数据: +按照以下步骤从 SQL 文件导入数据: -1. 提供包含要导入数据的实际 SQL 文件(例如 `product_data.sql`)。此 SQL 文件必须包含带有实际数据的 `INSERT` 语句。 +1. 准备一个真实的 SQL 文件(例如 `product_data.sql`),其中包含你需要导入的数据。该 SQL 文件必须包含带有真实数据的 `INSERT` 语句。 2. 使用以下命令从 SQL 文件导入数据: @@ -72,16 +72,16 @@ INSERT INTO products (product_id, product_name, price) VALUES > **注意:** > -> 此处使用的默认数据库名称是 `test`,你可以手动创建自己的数据库或在 SQL 文件中使用 `CREATE DATABASE` 命令。 +> 这里默认使用的数据库名称为 `test`,你可以手动创建自己的数据库,或者在 SQL 文件中使用 `CREATE DATABASE` 命令。
-
+
-执行以下操作从 CSV 文件导入数据: +按照以下步骤从 CSV 文件导入数据: -1. 在 TiDB 中创建与你的数据导入需求相匹配的数据库和架构。 +1. 在 TiDB 中创建数据库和表结构,以满足你的数据导入需求。 -2. 提供包含要导入数据的示例 CSV 文件(例如 `product_data.csv`)。以下是 CSV 文件的示例: +2. 准备一个示例 CSV 文件(例如 `product_data.csv`),其中包含你需要导入的数据。以下是一个 CSV 文件的示例: **product_data.csv:** @@ -101,11 +101,11 @@ INSERT INTO products (product_id, product_name, price) VALUES IGNORE 1 LINES (product_id, product_name, price);" ``` - 确保将路径、表名(本例中为 `products`)、``、``、``、``、`` 和其他占位符替换为你的实际信息,并根据需要将示例 CSV 数据替换为你的实际数据集。 + 请确保将路径、表名(本例中为 `products`)、``、``、``、``、`` 以及其他占位符替换为你的实际信息,并根据需要将示例 CSV 数据替换为你的真实数据集。 > **注意:** > -> 有关 `LOAD DATA LOCAL INFILE` 的更多语法详情,请参见 [`LOAD DATA`](/sql-statements/sql-statement-load-data.md)。 +> 有关 `LOAD DATA LOCAL INFILE` 的更多语法细节,请参见 [`LOAD DATA`](/sql-statements/sql-statement-load-data.md)。
- + \ No newline at end of file diff --git a/tidb-cloud/integrate-tidbcloud-with-airbyte.md b/tidb-cloud/integrate-tidbcloud-with-airbyte.md index b2a634b5acf7d..cc6f7abeb0262 100644 --- a/tidb-cloud/integrate-tidbcloud-with-airbyte.md +++ b/tidb-cloud/integrate-tidbcloud-with-airbyte.md @@ -1,17 +1,17 @@ --- -title: 将 TiDB Cloud 与 Airbyte 集成 +title: 集成 TiDB Cloud 与 Airbyte summary: 了解如何使用 Airbyte TiDB 连接器。 --- -# 将 TiDB Cloud 与 Airbyte 集成 +# 集成 TiDB Cloud 与 Airbyte -[Airbyte](https://airbyte.com/) 是一个开源的数据集成引擎,用于构建提取、加载、转换(ELT)管道,并将你的数据整合到数据仓库、数据湖和数据库中。本文介绍如何将 Airbyte 作为源或目标连接到 TiDB Cloud。 +[Airbyte](https://airbyte.com/) 是一个开源的数据集成引擎,用于构建提取、加载、转换(ELT)流程,并将你的数据整合到数据仓库、数据湖和数据库中。本文档介绍了如何将 Airbyte 连接到 TiDB Cloud,作为数据源或目标端。 ## 部署 Airbyte -你只需几个步骤就可以在本地部署 Airbyte。 +你可以通过几个简单的步骤在本地部署 Airbyte。 -1. 在你的工作空间上安装 [Docker](https://www.docker.com/products/docker-desktop)。 +1. 在你的工作环境中安装 [Docker](https://www.docker.com/products/docker-desktop)。 2. 克隆 Airbyte 源代码。 @@ -20,13 +20,13 @@ summary: 了解如何使用 Airbyte TiDB 连接器。 cd airbyte ``` -3. 使用 docker-compose 运行 Docker 镜像。 +3. 通过 docker-compose 运行 Docker 镜像。 ```shell docker-compose up ``` -当你看到 Airbyte 横幅时,你可以使用用户名(`airbyte`)和密码(`password`)访问 [http://localhost:8000](http://localhost:8000) 来访问用户界面。 +当你看到 Airbyte 的横幅时,可以使用用户名(`airbyte`)和密码(`password`)访问 [http://localhost:8000](http://localhost:8000) 的 UI。 ``` airbyte-server | ___ _ __ __ @@ -42,70 +42,70 @@ airbyte-server | -------------------------------------- ## 设置 TiDB 连接器 -无论将 TiDB 设置为源还是目标,步骤都是相同的。 +方便的是,将 TiDB 作为数据源和目标端的设置步骤是相同的。 -1. 在侧边栏中点击**源**或**目标**,然后选择 TiDB 类型以创建新的 TiDB 连接器。 +1. 在侧边栏点击 **Sources** 或 **Destinations**,选择 TiDB 类型以创建新的 TiDB 连接器。 2. 填写以下参数。 - - 主机:TiDB Cloud 集群的端点 - - 端口:数据库的端口 - - 数据库:你想要同步数据的数据库 - - 用户名:访问数据库的用户名 - - 密码:用户名的密码 + - Host: 你的 TiDB Cloud 集群的 endpoint + - Port: 数据库的端口 + - Database: 你想要同步数据的数据库 + - Username: 访问数据库的用户名 + - Password: 用户名对应的密码 - 你可以从集群的连接对话框中获取参数值。要打开对话框,请转到项目的[**集群**](https://tidbcloud.com/project/clusters)页面,点击目标集群的名称以进入其概览页面,然后点击右上角的**连接**。 + 你可以在集群的连接对话框中获取这些参数值。要打开该对话框,请进入项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群名称进入其概览页,然后点击右上角的 **Connect**。 -3. 启用 **SSL 连接**,并在 **JDBC URL 参数**中将 TLS 协议设置为 **TLSv1.2** 或 **TLSv1.3**。 +3. 启用 **SSL Connection**,并在 **JDBC URL Params** 中将 TLS 协议设置为 **TLSv1.2** 或 **TLSv1.3**。 > 注意: > > - TiDB Cloud 支持 TLS 连接。你可以在 **TLSv1.2** 和 **TLSv1.3** 中选择 TLS 协议,例如,`enabledTLSProtocols=TLSv1.2`。 - > - 如果你想通过 JDBC 禁用与 TiDB Cloud 的 TLS 连接,你需要在 JDBC URL 参数中特别将 useSSL 设置为 `false` 并关闭 SSL 连接,例如,`useSSL=false`。 + > - 如果你希望通过 JDBC 禁用到 TiDB Cloud 的 TLS 连接,需要在 JDBC URL Params 中专门设置 useSSL 为 `false` 并关闭 SSL 连接,例如,`useSSL=false`。 > - TiDB Cloud Serverless 仅支持 TLS 连接。 -4. 点击**设置源**或**目标**以完成创建连接器。以下截图显示了将 TiDB 设置为源的配置。 +4. 点击 **Set up source** 或 **destination** 完成连接器的创建。下图展示了将 TiDB 作为数据源的配置示例。 -![TiDB 源配置](/media/tidb-cloud/integration-airbyte-parameters.jpg) +![TiDB source configuration](/media/tidb-cloud/integration-airbyte-parameters.jpg) -你可以使用任何源和目标的组合,例如从 TiDB 到 Snowflake,或从 CSV 文件到 TiDB。 +你可以使用任意组合的数据源和目标端,例如 TiDB 到 Snowflake,或 CSV 文件到 TiDB。 -有关 TiDB 连接器的更多详细信息,请参见 [TiDB 源](https://docs.airbyte.com/integrations/sources/tidb)和 [TiDB 目标](https://docs.airbyte.com/integrations/destinations/tidb)。 +关于 TiDB 连接器的更多细节,请参阅 [TiDB Source](https://docs.airbyte.com/integrations/sources/tidb) 和 [TiDB Destination](https://docs.airbyte.com/integrations/destinations/tidb)。 ## 设置连接 -设置好源和目标后,你可以构建和配置连接。 +在设置好数据源和目标端后,你可以构建并配置连接。 -以下步骤使用 TiDB 作为源和目标。其他连接器可能有不同的参数。 +以下步骤以 TiDB 同时作为数据源和目标端为例。其他连接器可能有不同的参数。 -1. 在侧边栏中点击**连接**,然后点击**新建连接**。 -2. 选择之前建立的源和目标。 -3. 转到**设置**连接面板,为连接创建一个名称,例如 `${source_name} - ${destination-name}`。 -4. 将**复制频率**设置为**每 24 小时**,这意味着连接每天复制一次数据。 -5. 将**目标命名空间**设置为**自定义格式**,并将**命名空间自定义格式**设置为 **test**,以将所有数据存储在 `test` 数据库中。 -6. 选择**同步模式**为**完全刷新 | 覆盖**。 +1. 在侧边栏点击 **Connections**,然后点击 **New Connection**。 +2. 选择之前建立的数据源和目标端。 +3. 进入 **Set up** 连接面板,并为连接创建一个名称,例如 `${source_name} - ${destination-name}`。 +4. 将 **Replication frequency** 设置为 **Every 24 hours**,表示该连接每天同步一次数据。 +5. 将 **Destination Namespace** 设置为 **Custom format**,并将 **Namespace Custom Format** 设置为 **test**,以将所有数据存储在 `test` 数据库中。 +6. 选择 **Sync mode** 为 **Full refresh | Overwrite**。 > **提示:** > - > TiDB 连接器支持[增量和完全刷新同步](https://airbyte.com/blog/understanding-data-replication-modes)。 + > TiDB 连接器支持 [增量同步和全量刷新同步](https://airbyte.com/blog/understanding-data-replication-modes)。 > - > - 在增量模式下,Airbyte 只读取自上次同步任务以来添加到源的记录。使用增量模式的第一次同步相当于完全刷新模式。 - > - 在完全刷新模式下,Airbyte 在每次同步任务中读取源中的所有记录并复制到目标。你可以在 Airbyte 中为每个名为**命名空间**的表单独设置同步模式。 + > - 在增量模式下,Airbyte 只读取自上次同步作业以来新增的源端记录。首次使用增量模式同步等同于全量刷新模式。 + > - 在全量刷新模式下,Airbyte 每次同步任务都会读取源端的所有记录并复制到目标端。你可以为 Airbyte 中每个名为 **Namespace** 的表单独设置同步模式。 - ![设置连接](/media/tidb-cloud/integration-airbyte-connection.jpg) + ![Set up connection](/media/tidb-cloud/integration-airbyte-connection.jpg) -7. 将**规范化和转换**设置为**规范化表格数据**以使用默认规范化模式,或者你可以为你的任务设置 dbt 文件。有关规范化的更多信息,请参见[转换和规范化](https://docs.airbyte.com/operator-guides/transformation-and-normalization/transformations-with-dbt)。 -8. 点击**设置连接**。 -9. 建立连接后,点击**启用**以激活同步任务。你也可以点击**立即同步**立即同步。 +7. 将 **Normalization & Transformation** 设置为 **Normalized tabular data** 以使用默认的标准化模式,或者你也可以为你的作业设置 dbt 文件。关于标准化的更多信息,请参考 [Transformations and Normalization](https://docs.airbyte.com/operator-guides/transformation-and-normalization/transformations-with-dbt)。 +8. 点击 **Set up connection**。 +9. 连接建立后,点击 **ENABLED** 激活同步任务。你也可以点击 **Sync now** 立即同步。 -![同步数据](/media/tidb-cloud/integration-airbyte-sync.jpg) +![Sync data](/media/tidb-cloud/integration-airbyte-sync.jpg) ## 限制 -- TiDB 连接器无法使用 TiCDC 提供的变更数据捕获(CDC)功能。增量同步基于游标机制执行。 -- TiDB 目标在默认规范化模式下将 `timestamp` 类型转换为 `varchar` 类型。这是因为 Airbyte 在传输过程中将时间戳类型转换为字符串,而 TiDB 不支持 `cast ('2020-07-28 14:50:15+1:00' as timestamp)`。 -- 对于一些大型 ELT 任务,你需要增加 TiDB 中[事务限制](/develop/dev-guide-transaction-restraints.md#large-transaction-restrictions)的参数。 +- TiDB 连接器无法使用 TiCDC 提供的变更数据捕获(CDC)功能。增量同步是基于游标机制实现的。 +- 在默认标准化模式下,TiDB 目标端会将 `timestamp` 类型转换为 `varchar` 类型。这是因为 Airbyte 在传输过程中将 timestamp 类型转换为字符串,而 TiDB 不支持 `cast ('2020-07-28 14:50:15+1:00' as timestamp)`。 +- 对于某些大型 ELT 任务,你需要在 TiDB 中增加 [事务限制](/develop/dev-guide-transaction-restraints.md#large-transaction-restrictions) 的相关参数。 -## 另请参阅 +## 参见 -[使用 Airbyte 将数据从 TiDB Cloud 迁移到 Snowflake](https://www.pingcap.com/blog/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake/)。 +[使用 Airbyte 将数据从 TiDB Cloud 迁移到 Snowflake](https://www.pingcap.com/blog/using-airbyte-to-migrate-data-from-tidb-cloud-to-snowflake/)。 \ No newline at end of file diff --git a/tidb-cloud/integrate-tidbcloud-with-aws-lambda.md b/tidb-cloud/integrate-tidbcloud-with-aws-lambda.md index d3ec3b42baddf..be6b46b0e1305 100644 --- a/tidb-cloud/integrate-tidbcloud-with-aws-lambda.md +++ b/tidb-cloud/integrate-tidbcloud-with-aws-lambda.md @@ -1,69 +1,69 @@ --- -title: 使用 AWS CloudFormation 将 TiDB Cloud Serverless 与 Amazon Lambda 集成 -summary: 逐步介绍如何将 TiDB Cloud Serverless 与 Amazon Lambda 和 CloudFormation 集成。 +title: 使用 AWS CloudFormation 集成 TiDB Cloud Serverless 与 Amazon Lambda +summary: 逐步介绍如何将 TiDB Cloud Serverless 与 Amazon Lambda 及 CloudFormation 集成。 --- -# 使用 AWS CloudFormation 将 TiDB Cloud Serverless 与 Amazon Lambda 集成 +# 使用 AWS CloudFormation 集成 TiDB Cloud Serverless 与 Amazon Lambda -本文档提供了一个分步指南,介绍如何使用 [AWS CloudFormation](https://aws.amazon.com/cloudformation/) 将云原生分布式 SQL 数据库 [TiDB Cloud Serverless](https://www.pingcap.com/tidb-cloud/) 与无服务器和事件驱动的计算服务 [AWS Lambda](https://aws.amazon.com/lambda/) 集成。通过将 TiDB Cloud Serverless 与 Amazon Lambda 集成,你可以通过 TiDB Cloud Serverless 和 AWS Lambda 利用微服务的可扩展性和成本效益。AWS CloudFormation 自动化了 AWS 资源的创建和管理,包括 Lambda 函数、API Gateway 和 Secrets Manager。 +本文档提供了一个分步指南,介绍如何使用 [AWS CloudFormation](https://aws.amazon.com/cloudformation/) 将 [TiDB Cloud Serverless](https://www.pingcap.com/tidb-cloud/),一款云原生分布式 SQL 数据库,与 [AWS Lambda](https://aws.amazon.com/lambda/),一项无服务器、事件驱动的计算服务集成。通过将 TiDB Cloud Serverless 与 Amazon Lambda 集成,你可以利用 TiDB Cloud Serverless 和 AWS Lambda 的微服务架构,实现高扩展性和成本效益。AWS CloudFormation 可自动化创建和管理 AWS 资源,包括 Lambda 函数、API Gateway 和 Secrets Manager。 -## 解决方案概述 +## 方案概述 -在本指南中,你将创建一个包含以下组件的功能完整的在线书店: +在本指南中,你将创建一个功能完整的在线书店项目,包含以下组件: -- AWS Lambda 函数:使用 Sequelize ORM 和 Fastify API 框架处理请求并从 TiDB Cloud Serverless 集群查询数据。 -- AWS Secrets Manager SDK:检索和管理 TiDB Cloud Serverless 集群的连接配置。 +- AWS Lambda Function:使用 Sequelize ORM 和 Fastify API 框架处理请求并查询 TiDB Cloud Serverless 集群中的数据。 +- AWS Secrets Manager SDK:获取并管理 TiDB Cloud Serverless 集群的连接配置信息。 - AWS API Gateway:处理 HTTP 请求路由。 - TiDB Cloud Serverless:云原生分布式 SQL 数据库。 -AWS CloudFormation 用于创建项目所需的资源,包括 Secrets Manager、API Gateway 和 Lambda 函数。 +AWS CloudFormation 用于为该项目创建所需的资源,包括 Secrets Manager、API Gateway 和 Lambda Functions。 -书店项目的结构如下: +书店项目的结构如下所示: -![AWS Lambda 结构概览](/media/develop/aws-lambda-structure-overview.png) +![AWS Lambda structure overview](/media/develop/aws-lambda-structure-overview.png) -## 前提条件 +## 前置条件 在开始之前,请确保你具备以下条件: -- 一个可以访问以下 AWS 服务的 AWS 账户: +- 一个 AWS 账号,并有权限访问以下 AWS 服务: - [AWS CloudFormation](https://aws.amazon.com/cloudformation/) - [Secrets Manager](https://aws.amazon.com/secrets-manager/) - [API Gateway](https://aws.amazon.com/api-gateway/) - [Lambda services](https://aws.amazon.com/lambda/) - [S3](https://aws.amazon.com/s3/) - [IAM Roles](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) -- 一个 [TiDB Cloud](https://tidbcloud.com) 账户和一个 TiDB Cloud Serverless 集群。获取 TiDB Cloud Serverless 集群的连接信息: +- 一个 [TiDB Cloud](https://tidbcloud.com) 账号和一个 TiDB Cloud Serverless 集群。获取你的 TiDB Cloud Serverless 集群的连接信息: - ![TiDB Cloud 连接信息](/media/develop/aws-lambda-tidbcloud-connection-info.png) + ![TiDB Cloud connection information](/media/develop/aws-lambda-tidbcloud-connection-info.png) -- API 测试工具,如 [Postman](https://www.postman.com/) 和 [cURL](https://curl.se/)。本文档中的大多数示例使用 cURL。对于 Windows 用户,建议使用 Postman。 -- 将项目的[最新发布资产](https://github.com/pingcap/TiDB-Lambda-integration/releases/latest)下载到本地计算机,其中包括 `cloudformation_template.yml` 和 `cloudformation_template.json` 文件。 +- API 测试工具,如 [Postman](https://www.postman.com/) 和 [cURL](https://curl.se/)。本文档中的大多数示例使用 cURL。对于 Windows 用户,推荐使用 Postman。 +- 下载项目的 [最新发布资源](https://github.com/pingcap/TiDB-Lambda-integration/releases/latest) 到本地,包括 `cloudformation_template.yml` 和 `cloudformation_template.json` 文件。 > **注意:** > -> - 创建 AWS 资源时,建议使用 `us-east-1` 作为集群区域。这是因为此演示中的 Lambda 函数代码将区域硬编码为 `us-east-1`,并且代码包存储在 `us-east-1` 区域。 -> - 如果你使用不同的区域,需要按照以下说明修改 Lambda 函数代码,重新构建它,并将代码包上传到你自己的 S3 存储桶。 +> - 创建 AWS 资源时,建议将集群区域选择为 `us-east-1`。这是因为本示例中的 Lambda 函数代码将区域硬编码为 `us-east-1`,且代码包存储在 `us-east-1` 区域。 +> - 如果你使用其他区域,需要按照以下说明修改 Lambda 函数代码,重新构建并将代码包上传到你自己的 S3 bucket。
-如果使用 us-east-1 以外的区域,请修改并重新构建 Lambda 函数代码 +如果你使用的区域不是 us-east-1,请修改并重新构建 Lambda 函数代码 -如果你使用 `us-east-1` 作为集群区域,请跳过本节并转到[步骤 1:使用 AWS CloudFormation 设置项目](#步骤-1-使用-aws-cloudformation-设置书店项目)。 +如果你将集群区域设置为 `us-east-1`,请跳过本节,直接前往 [步骤 1:使用 AWS CloudFormation 搭建书店项目](#step-1-set-up-the-bookshop-project-using-aws-cloudformation)。 -如果你使用 `us-east-1` 以外的其他 AWS 区域来创建 AWS 资源,则需要修改 Lambda 函数代码,重新构建它,并将代码包上传到你自己的 S3 存储桶。 +如果你在 `us-east-1` 以外的 AWS 区域创建 AWS 资源,则需要修改 Lambda 函数代码,重新构建,并将代码包上传到你自己的 S3 bucket。 -为避免本地开发环境问题,建议使用云原生开发环境,如 [Gitpod](https://www.gitpod.io/)。 +为避免本地开发环境问题,建议你使用云原生开发环境,如 [Gitpod](https://www.gitpod.io/)。 -要重新构建代码包并将其上传到你自己的 S3 存储桶,请执行以下操作: +要重新构建并上传代码包到你自己的 S3 bucket,请执行以下操作: 1. 初始化开发环境。 - - 打开 [Gitpod](https://gitpod.io/#/https://github.com/pingcap/TiDB-Lambda-integration) 工作区并使用你的 GitHub 账户登录。 + - 打开 [Gitpod](https://gitpod.io/#/https://github.com/pingcap/TiDB-Lambda-integration) 工作区,并使用你的 GitHub 账号登录。 2. 修改 Lambda 函数代码。 - 1. 在左侧边栏中打开 `aws-lambda-cloudformation/src/secretManager.ts` 文件。 - 2. 找到第 22 行,然后修改 `region` 变量以匹配你自己的区域。 + 1. 在左侧边栏打开 `aws-lambda-cloudformation/src/secretManager.ts` 文件。 + 2. 定位到第 22 行,修改 `region` 变量为你自己的区域。 3. 重新构建代码包。 @@ -76,7 +76,7 @@ AWS CloudFormation 用于创建项目所需的资源,包括 Secrets Manager、 cd aws-lambda-cloudformation ``` - 3. 安装依赖项: + 3. 安装依赖: ```shell yarn @@ -91,104 +91,104 @@ AWS CloudFormation 用于创建项目所需的资源,包括 Secrets Manager、 ``` 2. 检查 `aws-lambda-cloudformation/dist/index.zip` 文件。 - 3. 右键点击 `index.zip` 文件并选择**下载**。 + 3. 右键点击 `index.zip` 文件并选择 **Download**。 -4. 将重新构建的代码包上传到你自己的 S3 存储桶。 +4. 将重新构建的代码包上传到你自己的 S3 bucket。 1. 访问 AWS 管理控制台中的 [S3 服务](https://console.aws.amazon.com/s3)。 - 2. 在你选择的区域中创建一个新的存储桶。 - 3. 将 `index.zip` 文件上传到存储桶。 - 4. 记下 S3 存储桶名称和区域,以供后续使用。 + 2. 在你选择的区域创建一个新的 bucket。 + 3. 将 `index.zip` 文件上传到该 bucket。 + 4. 记录 S3 bucket 名称和区域,后续会用到。
-## 步骤 1. 使用 AWS CloudFormation 设置书店项目 +## 步骤 1. 使用 AWS CloudFormation 搭建书店项目 -要使用 AWS CloudFormation 设置书店项目,请执行以下操作: +要使用 AWS CloudFormation 搭建书店项目,请执行以下操作: -1. 导航到 AWS 管理控制台并访问 [AWS CloudFormation 服务](https://console.aws.amazon.com/cloudformation)。 -2. 点击**创建堆栈** > **使用新资源(标准)**。 -3. 在**创建堆栈**页面,完成堆栈创建过程。 +1. 进入 AWS 管理控制台,访问 [AWS CloudFormation 服务](https://console.aws.amazon.com/cloudformation)。 +2. 点击 **Create Stack** > **With new resources (standard)**。 +3. 在 **Create Stack** 页面,完成堆栈创建流程。 - 1. 在**前提条件**区域,选择**选择现有模板**。 - 2. 在**指定模板**区域,选择**上传模板文件**,点击**选择文件**上传模板文件(YAML 或 JSON),然后点击**下一步**。 + 1. 在 **Prerequisite** 区域,选择 **Choose an existing template**。 + 2. 在 **Specify template** 区域,选择 **Upload a template file**,点击 **Choose file** 上传模板文件(YAML 或 JSON 格式),然后点击 **Next**。 如果你还没有该文件,请从 [GitHub](https://github.com/pingcap/TiDB-Lambda-integration/releases/latest) 下载。该文件包含用于创建项目所需资源的 AWS CloudFormation 模板。 - ![创建堆栈](/media/develop/aws-lambda-cf-create-stack.png) + ![Create a stack](/media/develop/aws-lambda-cf-create-stack.png) 3. 指定堆栈详细信息。 - - 如果你使用 `us-east-1` 作为集群区域,请按照以下截图填写字段: + - 如果你使用 `us-east-1` 作为集群区域,请按照下图填写各项字段: - ![指定 AWS Lambda 堆栈详细信息](/media/develop/aws-lambda-cf-stack-config.png) + ![Specify AWS Lambda stack details](/media/develop/aws-lambda-cf-stack-config.png) - **Stack name**:输入堆栈名称。 - - **S3Bucket**:输入存储 zip 文件的 S3 存储桶。 - - **S3Key**:输入 S3 密钥。 + - **S3Bucket**:输入存放 zip 文件的 S3 bucket 名称。 + - **S3Key**:输入 S3 key。 - **TiDBDatabase**:输入 TiDB Cloud 集群名称。 - - **TiDBHost**:输入用于访问 TiDB Cloud 数据库的主机 URL。输入 `localhost`。 - - **TiDBPassword**:输入用于访问 TiDB Cloud 数据库的密码。 - - **TiDBPort**:输入用于访问 TiDB Cloud 数据库的端口。 - - **TiDBUser**:输入用于访问 TiDB Cloud 数据库的用户名。 + - **TiDBHost**:输入 TiDB Cloud 数据库访问的主机 URL。请填写 `localhost`。 + - **TiDBPassword**:输入 TiDB Cloud 数据库访问密码。 + - **TiDBPort**:输入 TiDB Cloud 数据库访问端口。 + - **TiDBUser**:输入 TiDB Cloud 数据库访问用户名。 - - 如果你使用 `us-east-1` 以外的其他 AWS 区域,请按照以下步骤操作: + - 如果你使用的 AWS 区域不是 `us-east-1`,请按照以下步骤操作: - 1. 参考[如果使用 `us-east-1` 以外的区域,请修改并重新构建 Lambda 函数代码](#前提条件)修改 Lambda 函数代码,重新构建它,并将代码包上传到你自己的 S3 存储桶。 - 2. 在堆栈详细信息字段中,根据你自己的配置在 `S3Bucket` 和 `S3Key` 参数中指定 S3 存储桶名称和区域。 - 3. 按照上述截图填写其他字段。 + 1. 参考 [如果你使用的区域不是 `us-east-1`,请修改并重新构建 Lambda 函数代码](#prerequisites) 修改 Lambda 函数代码,重新构建并上传代码包到你自己的 S3 bucket。 + 2. 在堆栈详细信息字段中,根据你的配置填写 `S3Bucket` 和 `S3Key` 参数。 + 3. 其他字段按照上图填写。 4. 配置堆栈选项。你可以使用默认配置。 - ![配置堆栈选项](/media/develop/aws-lambda-cf-stack-config-option.png) + ![Configure stack options](/media/develop/aws-lambda-cf-stack-config-option.png) - 5. 检查并创建堆栈。 + 5. 审核并创建堆栈。 - ![检查并创建堆栈](/media/develop/aws-lambda-cf-stack-config-review.png) + ![Review and create the stack](/media/develop/aws-lambda-cf-stack-config-review.png) ## 步骤 2. 使用书店项目 -堆栈创建完成后,你可以按照以下方式使用项目: +堆栈创建完成后,你可以按如下方式使用该项目: -1. 在 AWS 管理控制台中访问 [API Gateway 服务](https://console.aws.amazon.com/apigateway),点击 `TiDBCloudApiGatewayV2` API,然后在左侧窗格中点击 **API: TiDBCloudApiGatewayV2**。 +1. 访问 AWS 管理控制台中的 [API Gateway 服务](https://console.aws.amazon.com/apigateway),点击 `TiDBCloudApiGatewayV2` API,然后在左侧点击 **API: TiDBCloudApiGatewayV2**。 -2. 从**概览**页面复制 `调用 URL`。此 URL 作为 API 端点。 +2. 在 **Overview** 页面复制 `Invoke URL`。该 URL 即为 API 端点。 - ![API Gateway 调用 URL](/media/develop/aws-lambda-get-apigateway-invoke-url.png) + ![API Gateway Invoke URL](/media/develop/aws-lambda-get-apigateway-invoke-url.png) -3. 使用 API 测试工具(如 Postman 和 cURL)测试 API: +3. 使用 Postman 或 cURL 等 API 测试工具测试 API: - - 初始化模拟图书: + - 初始化模拟书籍: ```shell curl -X POST -H "Content-Type: application/json" -d '{"count":100}' https:///book/init ``` - - 获取所有图书: + - 获取所有书籍: ```shell curl https:///book ``` - - 通过图书 ID 获取图书: + - 根据书籍 ID 获取书籍: ```shell curl https:///book/ ``` - - 创建图书: + - 创建书籍: ```shell - curl -X POST -H "Content-Type: application/json" -d '{ "title": "Book Title", "type": "Test", "publishAt": "2022-12-15T21:01:49.000Z", "stock": 123, "price": 12.34, "authors": "Test Test" }' https:///book + curl -X POST -H "Content-Type: application/json" -d '{ "title": "Book Title", "type": "Test", "publishAt": "2022-12-15T21:01:49.000Z", "stock": 123, "price": 12.34, "authors": "Test Test" }' https:// /book ``` - - 更新图书: + - 更新书籍: ```shell curl -X PUT -H "Content-Type: application/json" -d '{ "title": "Book Title(updated)" }' https:///book/ ``` - - 删除图书: + - 删除书籍: ```shell curl -X DELETE https:///book/ @@ -196,7 +196,7 @@ AWS CloudFormation 用于创建项目所需的资源,包括 Secrets Manager、 ## 步骤 3. 清理资源 -为避免不必要的费用,请清理所有已创建的资源。 +为避免产生不必要的费用,请清理所有已创建的资源。 1. 访问 [AWS 管理控制台](https://console.aws.amazon.com/cloudformation)。 -2. 删除你创建的 AWS CloudFormation 堆栈。 +2. 删除你创建的 AWS CloudFormation 堆栈。 \ No newline at end of file diff --git a/tidb-cloud/integrate-tidbcloud-with-cloudflare.md b/tidb-cloud/integrate-tidbcloud-with-cloudflare.md index 79cad65a6227c..509167920d9f6 100644 --- a/tidb-cloud/integrate-tidbcloud-with-cloudflare.md +++ b/tidb-cloud/integrate-tidbcloud-with-cloudflare.md @@ -1,31 +1,31 @@ --- -title: 将 TiDB Cloud 与 Cloudflare 集成 -summary: 了解如何将 Cloudflare Workers 与 TiDB Cloud 一起部署。 +title: 集成 TiDB Cloud 与 Cloudflare +summary: 了解如何将 Cloudflare Workers 与 TiDB Cloud 部署集成。 --- -# 将 TiDB Cloud 与 Cloudflare Workers 集成 +# 集成 TiDB Cloud 与 Cloudflare Workers -[Cloudflare Workers](https://workers.cloudflare.com/) 是一个允许你响应特定事件(如 HTTP 请求或数据库更改)运行代码的平台。Cloudflare Workers 易于使用,可用于构建各种应用程序,包括自定义 API、无服务器函数和微服务。它特别适用于需要低延迟性能或需要快速扩展的应用程序。 +[Cloudflare Workers](https://workers.cloudflare.com/) 是一个平台,允许你在特定事件发生时运行代码,例如 HTTP 请求或数据库变更。Cloudflare Workers 易于使用,可用于构建各种应用,包括自定义 API、无服务器函数和微服务。它对于需要低延迟性能或需要快速扩展的应用尤其有用。 -由于 Cloudflare Workers 运行在 V8 引擎上,无法直接建立 TCP 连接,你可能会发现从 Cloudflare Workers 连接到 TiDB Cloud 比较困难。你可以使用 [TiDB Cloud 无服务器驱动](/tidb-cloud/serverless-driver.md)通过 HTTP 连接帮助你连接到 Cloudflare Workers。 +你可能会发现从 Cloudflare Workers 连接到 TiDB Cloud 有一定难度,因为 Cloudflare Workers 运行在 V8 引擎上,无法直接建立 TCP 连接。你可以使用 [TiDB Cloud serverless driver](/tidb-cloud/serverless-driver.md) 通过 HTTP 连接帮助你连接到 Cloudflare Workers。 -本文档将逐步说明如何使用 TiDB Cloud 无服务器驱动连接到 Cloudflare Workers。 +本文档将逐步演示如何使用 TiDB Cloud serverless driver 连接到 Cloudflare Workers。 > **注意:** > -> TiDB Cloud 无服务器驱动只能在 TiDB Cloud Serverless 中使用。 +> TiDB Cloud serverless driver 只能用于 TiDB Cloud Serverless。 ## 开始之前 -在尝试本文中的步骤之前,你需要准备以下内容: +在尝试本文步骤之前,你需要准备以下内容: -- TiDB Cloud 账号和 TiDB Cloud 上的 TiDB Cloud Serverless 集群。更多详情,请参阅 [TiDB Cloud 快速入门](/tidb-cloud/tidb-cloud-quickstart.md#step-1-create-a-tidb-cluster)。 -- [Cloudflare Workers 账号](https://dash.cloudflare.com/login)。 +- 一个 TiDB Cloud 账号,以及在 TiDB Cloud 上创建的 TiDB Cloud Serverless 集群。详情请参见 [TiDB Cloud 快速入门](/tidb-cloud/tidb-cloud-quickstart.md#step-1-create-a-tidb-cluster)。 +- 一个 [Cloudflare Workers 账号](https://dash.cloudflare.com/login)。 - 已安装 [npm](https://docs.npmjs.com/about-npm)。 ## 步骤 1:设置 Wrangler -[Wrangler](https://developers.cloudflare.com/workers/wrangler/) 是官方的 Cloudflare Worker CLI。你可以使用它来生成、构建、预览和发布你的 Workers。 +[Wrangler](https://developers.cloudflare.com/workers/wrangler/) 是官方的 Cloudflare Worker CLI。你可以用它来生成、构建、预览和发布你的 Workers。 1. 安装 Wrangler: @@ -33,7 +33,7 @@ summary: 了解如何将 Cloudflare Workers 与 TiDB Cloud 一起部署。 npm install wrangler ``` -2. 要验证 Wrangler,请运行 wrangler login: +2. 认证 Wrangler,运行 wrangler login: ``` wrangler login @@ -45,9 +45,9 @@ summary: 了解如何将 Cloudflare Workers 与 TiDB Cloud 一起部署。 wrangler init tidb-cloud-cloudflare ``` -4. 在终端中,你将被问到一系列与项目相关的问题。对所有问题选择默认值。 +4. 在终端中,你会被询问一系列与项目相关的问题。所有问题均选择默认值即可。 -## 步骤 2:安装无服务器驱动 +## 步骤 2:安装 serverless driver 1. 进入你的项目目录: @@ -55,19 +55,19 @@ summary: 了解如何将 Cloudflare Workers 与 TiDB Cloud 一起部署。 cd tidb-cloud-cloudflare ``` -2. 使用 npm 安装无服务器驱动: +2. 使用 npm 安装 serverless driver: ``` npm install @tidbcloud/serverless ``` - 这会在 `package.json` 中添加无服务器驱动依赖。 + 这会在 `package.json` 中添加 serverless driver 依赖。 ## 步骤 3:开发 Cloudflare Worker 函数 -你需要根据需要修改 `src/index.ts`。 +你需要根据需求修改 `src/index.ts`。 -例如,如果你想显示所有数据库,可以使用以下代码: +例如,如果你想展示所有数据库,可以使用如下代码: ```ts import { connect } from '@tidbcloud/serverless' @@ -94,24 +94,24 @@ export default { wrangler secret put ``` -你也可以通过 Cloudflare Workers 仪表板编辑 `DATABASE_URL` 密钥。 +你也可以通过 Cloudflare Workers 控制台编辑 `DATABASE_URL` secret。 ## 步骤 5:发布到 Cloudflare Workers -现在你已准备好部署到 Cloudflare Workers。 +现在你已经可以部署到 Cloudflare Workers 了。 -在你的项目目录中,运行以下命令: +在你的项目目录下,运行以下命令: ``` npx wrangler publish ``` -## 步骤 6:尝试你的 Cloudflare Workers +## 步骤 6:测试你的 Cloudflare Workers -1. 转到 [Cloudflare 仪表板](https://dash.cloudflare.com)找到你的 worker。你可以在概览页面上找到你的 worker 的 URL。 +1. 前往 [Cloudflare 控制台](https://dash.cloudflare.com) 查找你的 worker。你可以在概览页面找到 worker 的 URL。 2. 访问该 URL,你将获得结果。 ## 示例 -请参阅 [Cloudflare Workers 示例](https://github.com/tidbcloud/car-sales-insight/tree/main/examples/cloudflare-workers)。 +参见 [Cloudflare Workers 示例](https://github.com/tidbcloud/car-sales-insight/tree/main/examples/cloudflare-workers)。 \ No newline at end of file diff --git a/tidb-cloud/integrate-tidbcloud-with-n8n.md b/tidb-cloud/integrate-tidbcloud-with-n8n.md index 0fd99896cfef9..7ca4ce38728a5 100644 --- a/tidb-cloud/integrate-tidbcloud-with-n8n.md +++ b/tidb-cloud/integrate-tidbcloud-with-n8n.md @@ -1,32 +1,32 @@ --- -title: 将 TiDB Cloud 与 n8n 集成 +title: 集成 TiDB Cloud 与 n8n summary: 了解如何在 n8n 中使用 TiDB Cloud 节点。 --- -# 将 TiDB Cloud 与 n8n 集成 +# 集成 TiDB Cloud 与 n8n -[n8n](https://n8n.io/) 是一个可扩展的工作流自动化工具。通过 [fair-code](https://faircode.io/) 分发模式,n8n 将始终保持源代码可见,支持自托管,并允许你添加自定义函数、逻辑和应用程序。 +[n8n](https://n8n.io/) 是一款可扩展的工作流自动化工具。采用 [fair-code](https://faircode.io/) 分发模式,n8n 始终保持源代码可见、支持自托管,并允许你添加自定义函数、逻辑和应用。 -本文介绍如何构建一个自动工作流:创建 TiDB Cloud Serverless 集群,收集 Hacker News RSS,将其存储到 TiDB 并发送简报邮件。 +本文档介绍如何构建一个自动化工作流:创建 TiDB Cloud Serverless 集群,收集 Hacker News RSS,将其存储到 TiDB,并发送简报邮件。 -## 前提条件:获取 TiDB Cloud API 密钥 +## 前置条件:获取 TiDB Cloud API 密钥 -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 -2. 在左侧导航栏中,点击**组织设置** > **API 密钥**。 -3. 在 **API 密钥**页面,点击**创建 API 密钥**。 -4. 输入 API 密钥的描述,然后点击**下一步**。 -5. 复制创建的 API 密钥以供后续在 n8n 中使用,然后点击**完成**。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,使用左上角的下拉框切换到你的目标组织。 +2. 在左侧导航栏,点击 **Organization Settings** > **API Keys**。 +3. 在 **API Keys** 页面,点击 **Create API Key**。 +4. 输入 API 密钥的描述,然后点击 **Next**。 +5. 复制创建的 API 密钥,稍后在 n8n 中使用,然后点击 **Done**。 -更多信息,请参阅 [TiDB Cloud API 概览](/tidb-cloud/api-overview.md)。 +更多信息请参见 [TiDB Cloud API Overview](/tidb-cloud/api-overview.md)。 ## 步骤 1:安装 n8n -有两种方式可以安装自托管的 n8n。选择适合你的方式即可。 +你可以通过两种方式安装自托管的 n8n。任选其一即可。
-1. 在你的工作空间安装 [node.js](https://nodejs.org/en/download/)。 +1. 在你的工作环境中安装 [node.js](https://nodejs.org/en/download/)。 2. 通过 `npx` 下载并启动 n8n。 ```shell @@ -36,7 +36,7 @@ summary: 了解如何在 n8n 中使用 TiDB Cloud 节点。
-1. 在你的工作空间安装 [Docker](https://www.docker.com/products/docker-desktop)。 +1. 在你的工作环境中安装 [Docker](https://www.docker.com/products/docker-desktop)。 2. 通过 `docker` 下载并启动 n8n。 ```shell @@ -46,25 +46,25 @@ summary: 了解如何在 n8n 中使用 TiDB Cloud 节点。
-启动 n8n 后,你可以访问 [localhost:5678](http://localhost:5678) 来试用 n8n。 +启动 n8n 后,你可以访问 [localhost:5678](http://localhost:5678) 体验 n8n。 ## 步骤 2:在 n8n 中安装 TiDB Cloud 节点 -TiDB Cloud 节点在 npm 仓库中的名称为 `n8n-nodes-tidb-cloud`。你需要手动安装此节点才能使用 n8n 控制 TiDB Cloud。 +TiDB Cloud 节点在 npm 仓库中名为 `n8n-nodes-tidb-cloud`。你需要手动安装该节点,以便通过 n8n 控制 TiDB Cloud。 -1. 在 [localhost:5678](http://localhost:5678) 页面,为自托管的 n8n 创建一个所有者账户。 -2. 转到**设置** > **社区节点**。 -3. 点击**安装社区节点**。 -4. 在 **npm 包名称**字段中,输入 `n8n-nodes-tidb-cloud`。 -5. 点击**安装**。 +1. 在 [localhost:5678](http://localhost:5678) 页面,为自托管的 n8n 创建 owner 账号。 +2. 进入 **Settings** > **Community nodes**。 +3. 点击 **Install a community node**。 +4. 在 **npm Package Name** 字段中输入 `n8n-nodes-tidb-cloud`。 +5. 点击 **Install**。 -然后,你可以在**工作流** > 搜索栏中搜索 **TiDB Cloud** 节点,并通过将其拖动到工作区来使用 TiDB Cloud 节点。 +随后你可以在 **Workflow** > 搜索栏中搜索 **TiDB Cloud** 节点,并将其拖拽到工作区使用。 -## 步骤 3:构建工作流 +## 步骤 3:构建你的工作流 -在此步骤中,你将创建一个新的工作流,当你点击**执行**按钮时,它会向 TiDB 插入一些数据。 +在此步骤中,你将创建一个新的工作流,在点击 **Execute** 按钮时向 TiDB 插入一些数据。 -此示例工作流将使用以下节点: +本示例工作流将使用以下节点: - [Schedule Trigger](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.scheduletrigger/) - [RSS Read](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.rssfeedread/) @@ -78,20 +78,20 @@ TiDB Cloud 节点在 npm 仓库中的名称为 `n8n-nodes-tidb-cloud`。你需 ### (可选)创建 TiDB Cloud Serverless 集群 -如果你还没有 TiDB Cloud Serverless 集群,可以使用此节点创建一个。否则,可以跳过此操作。 +如果你还没有 TiDB Cloud Serverless 集群,可以使用该节点创建一个。否则可以跳过此操作。 -1. 导航到**工作流**面板,点击**添加工作流**。 -2. 在新的工作流工作区中,点击右上角的 **+** 并选择**全部**字段。 -3. 搜索 `TiDB Cloud` 并将其拖动到工作区。 -4. 为 TiDB Cloud 节点输入凭据,即 TiDB Cloud API 密钥。 -5. 在**项目**列表中,选择你的项目。 -6. 在**操作**列表中,选择 `Create Serverless Cluster`。 -7. 在**集群名称**框中,输入集群名称。 -8. 在**区域**列表中,选择一个区域。 -9. 在**密码**框中,输入用于登录 TiDB 集群的密码。 -10. 点击**执行节点**以运行节点。 +1. 进入 **Workflows** 面板,点击 **Add workflow**。 +2. 在新的工作流工作区,点击右上角的 **+** 并选择 **All** 字段。 +3. 搜索 `TiDB Cloud` 并将其拖拽到工作区。 +4. 为 TiDB Cloud 节点输入凭证,即 TiDB Cloud API 密钥。 +5. 在 **Project** 列表中选择你的项目。 +6. 在 **Operation** 列表中选择 `Create Serverless Cluster`。 +7. 在 **Cluster Name** 框中输入集群名称。 +8. 在 **Region** 列表中选择一个区域。 +9. 在 **Password** 框中输入用于登录 TiDB 集群的密码。 +10. 点击 **Execute Node** 运行该节点。 -> **注意:** +> **Note:** > > 创建新的 TiDB Cloud Serverless 集群需要几秒钟时间。 @@ -99,60 +99,60 @@ TiDB Cloud 节点在 npm 仓库中的名称为 `n8n-nodes-tidb-cloud`。你需 #### 使用手动触发器作为工作流的起点 -1. 如果你还没有工作流,请导航到**工作流**面板,然后点击**从头开始**。否则,请跳过此步骤。 +1. 如果你还没有工作流,进入 **Workflows** 面板,点击 **Start from scratch**。否则跳过此步。 2. 点击右上角的 **+** 并搜索 `schedule trigger`。 -3. 将手动触发器节点拖动到工作区,然后双击该节点。此时会显示**参数**对话框。 +3. 将手动触发器节点拖拽到工作区,并双击该节点。此时会显示 **Parameters** 对话框。 4. 按如下方式配置规则: - - **触发间隔**:`天` - - **触发间隔天数**:`1` - - **触发小时**:`8am` - - **触发分钟**:`0` + - **Trigger Interval**: `Days` + - **Days Between Triggers**: `1` + - **Trigger at Hour**: `8am` + - **Trigger at Minute**: `0` -此触发器将在每天早上 8 点执行你的工作流。 +该触发器会在每天早上 8 点执行你的工作流。 #### 创建用于插入数据的表 1. 点击手动触发器节点右侧的 **+**。 -2. 搜索 `TiDB Cloud` 并将其添加到工作区。 -3. 在**参数**对话框中,输入 TiDB Cloud 节点的凭据。凭据是你的 TiDB Cloud API 密钥。 -4. 在**项目**列表中,选择你的项目。 -5. 在**操作**列表中,选择 `Execute SQL`。 -6. 选择集群。如果你在列表中看不到新集群,需要等待几分钟,直到集群创建完成。 -7. 在**用户**列表中,选择一个用户。TiDB Cloud 始终创建一个默认用户,因此你不必手动创建。 -8. 在**数据库**框中,输入 `test`。 +2. 搜索 `TiDB Cloud` 并添加到工作区。 +3. 在 **Parameters** 对话框中输入 TiDB Cloud 节点的凭证,即你的 TiDB Cloud API 密钥。 +4. 在 **Project** 列表中选择你的项目。 +5. 在 **Operation** 列表中选择 `Execute SQL`。 +6. 选择集群。如果你还未在列表中看到新集群,需要等待几分钟直到集群创建完成。 +7. 在 **User** 列表中选择用户。TiDB Cloud 总会创建一个默认用户,无需手动创建。 +8. 在 **Database** 框中输入 `test`。 9. 输入你的数据库密码。 -10. 在 **SQL** 框中,输入以下 SQL: +10. 在 **SQL** 框中输入以下 SQL: ```sql CREATE TABLE IF NOT EXISTS hacker_news_briefing (creator VARCHAR (200), title TEXT, link VARCHAR(200), pubdate VARCHAR(200), comments VARCHAR(200), content TEXT, guid VARCHAR (200), isodate VARCHAR(200)); ``` -11. 点击**执行节点**以创建表。 +11. 点击 **Execute node** 创建表。 #### 获取 Hacker News RSS 1. 点击 TiDB Cloud 节点右侧的 **+**。 -2. 搜索 `RSS Read` 并将其添加到工作区。 -3. 在 **URL** 框中,输入 `https://hnrss.org/frontpage`。 +2. 搜索 `RSS Read` 并添加到工作区。 +3. 在 **URL** 框中输入 `https://hnrss.org/frontpage`。 -#### 将数据插入 TiDB +#### 向 TiDB 插入数据 1. 点击 RSS Read 节点右侧的 **+**。 -2. 搜索 `TiDB Cloud` 并将其添加到工作区。 -3. 选择你在前面的 TiDB Cloud 节点中输入的凭据。 -4. 在**项目**列表中,选择你的项目。 -5. 在**操作**列表中,选择 `Insert`。 -6. 在**集群**、**用户**、**数据库**和**密码**框中,输入相应的值。 -7. 在**表**框中,输入 `hacker_news_briefing` 表。 -8. 在**列**框中,输入 `creator, title, link, pubdate, comments, content, guid, isodate`。 +2. 搜索 `TiDB Cloud` 并添加到工作区。 +3. 选择你在前一个 TiDB Cloud 节点中输入的凭证。 +4. 在 **Project** 列表中选择你的项目。 +5. 在 **Operation** 列表中选择 `Insert`。 +6. 在 **Cluster**、**User**、**Database** 和 **Password** 框中输入相应的值。 +7. 在 **Table** 框中输入 `hacker_news_briefing` 表名。 +8. 在 **Columns** 框中输入 `creator, title, link, pubdate, comments, content, guid, isodate`。 -#### 构建消息 +#### 构建消息内容 1. 点击 RSS Feed Read 节点右侧的 **+**。 -2. 搜索 `code` 并将其添加到工作区。 +2. 搜索 `code` 并添加到工作区。 3. 选择 `Run Once for All Items` 模式。 -4. 在 **JavaScript** 框中,复制并粘贴以下代码。 +4. 在 **JavaScript** 框中复制并粘贴以下代码。 ```javascript let message = ""; @@ -185,61 +185,61 @@ TiDB Cloud 节点在 npm 仓库中的名称为 `n8n-nodes-tidb-cloud`。你需 #### 通过 Gmail 发送消息 -1. 点击代码节点右侧的 **+**。 -2. 搜索 `gmail` 并将其添加到工作区。 -3. 为 Gmail 节点输入凭据。有关详细说明,请参阅 [n8n 文档](https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/)。 -4. 在**资源**列表中,选择 `Message`。 -5. 在**操作**列表中,选择 `Send`。 -6. 在**收件人**框中,输入你的电子邮件。 -7. 在**主题**框中,输入 `Hacker News Briefing`。 -8. 在**邮件类型**框中,选择 `HTML`。 -9. 在**消息**框中,点击 `Expression` 并输入 `{{ $json["response"] }}`。 - - > **注意:** +1. 点击 code 节点右侧的 **+**。 +2. 搜索 `gmail` 并添加到工作区。 +3. 输入 Gmail 节点的凭证。详细说明请参考 [n8n documentation](https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/)。 +4. 在 **Resource** 列表中选择 `Message`。 +5. 在 **Operation** 列表中选择 `Send`。 +6. 在 **To** 框中输入你的邮箱。 +7. 在 **Subject** 框中输入 `Hacker News Briefing`。 +8. 在 **Email Type** 框中选择 `HTML`。 +9. 在 **Message** 框中点击 `Expression` 并输入 `{{ $json["response"] }}`。 + + > **Note:** > - > 你必须将鼠标悬停在**消息**框上并选择 **Expression** 模式。 + > 你必须将鼠标悬停在 **Message** 框上并选择 **Expression** 模式。 -## 步骤 4:运行工作流 +## 步骤 4:运行你的工作流 -构建完工作流后,你可以点击**执行工作流**进行测试运行。 +构建好工作流后,你可以点击 **Execute Workflow** 进行测试运行。 -如果工作流按预期运行,你将收到 Hacker News 简报邮件。这些新闻内容将记录到你的 TiDB Cloud Serverless 集群中,因此你不必担心丢失它们。 +如果工作流按预期运行,你将收到 Hacker News 简报邮件。这些新闻内容会被记录到你的 TiDB Cloud Serverless 集群中,因此无需担心丢失。 -现在你可以在**工作流**面板中激活此工作流。这个工作流将帮助你每天获取 Hacker News 的头版文章。 +现在你可以在 **Workflows** 面板激活该工作流。此工作流将帮助你每天获取 Hacker News 的头条文章。 ## TiDB Cloud 节点核心 ### 支持的操作 -TiDB Cloud 节点作为[常规节点](https://docs.n8n.io/workflows/nodes/#regular-nodes)运行,仅支持以下五种操作: +TiDB Cloud 节点作为一个 [regular node](https://docs.n8n.io/workflows/nodes/#regular-nodes),仅支持以下五种操作: - **Create Serverless Cluster**:创建 TiDB Cloud Serverless 集群。 - **Execute SQL**:在 TiDB 中执行 SQL 语句。 -- **Delete**:在 TiDB 中删除行。 -- **Insert**:在 TiDB 中插入行。 -- **Update**:在 TiDB 中更新行。 +- **Delete**:删除 TiDB 中的行。 +- **Insert**:向 TiDB 插入行。 +- **Update**:更新 TiDB 中的行。 -### 字段 +### 字段说明 -要使用不同的操作,你需要填写不同的必填字段。以下显示了相应操作的字段说明。 +使用不同操作时,你需要填写不同的必填字段。以下为各操作对应的字段说明。
-- **Credential for TiDB Cloud API**:仅支持 TiDB Cloud API 密钥。有关如何创建 API 密钥,请参阅[获取 TiDB Cloud API 密钥](#前提条件获取-tidb-cloud-api-密钥)。 +- **Credential for TiDB Cloud API**:仅支持 TiDB Cloud API 密钥。如何创建 API 密钥请参考 [Get TiDB Cloud API Key](#prerequisites-get-tidb-cloud-api-key)。 - **Project**:TiDB Cloud 项目名称。 -- **Operation**:此节点的操作。有关所有支持的操作,请参阅[支持的操作](#支持的操作)。 -- **Cluster**:TiDB Cloud 集群名称。为你的新集群输入名称。 -- **Region**:区域名称。选择将部署集群的区域。通常选择离应用程序部署最近的区域。 +- **Operation**:该节点的操作。所有支持的操作请参考 [Supported operations](#supported-operations)。 +- **Cluster**:TiDB Cloud 集群名称。输入你的新集群名称。 +- **Region**:区域名称。选择你的集群将要部署的区域。通常选择离你的应用部署最近的区域。 - **Password**:root 密码。为你的新集群设置密码。
-- **Credential for TiDB Cloud API**:仅支持 TiDB Cloud API 密钥。有关如何创建 API 密钥,请参阅[获取 TiDB Cloud API 密钥](#前提条件获取-tidb-cloud-api-密钥)。 +- **Credential for TiDB Cloud API**:仅支持 TiDB Cloud API 密钥。如何创建 API 密钥请参考 [Get TiDB Cloud API Key](#prerequisites-get-tidb-cloud-api-key)。 - **Project**:TiDB Cloud 项目名称。 -- **Operation**:此节点的操作。有关所有支持的操作,请参阅[支持的操作](#支持的操作)。 -- **Cluster**:TiDB Cloud 集群名称。你应该选择一个现有集群。 +- **Operation**:该节点的操作。所有支持的操作请参考 [Supported operations](#supported-operations)。 +- **Cluster**:TiDB Cloud 集群名称。你应选择一个已有集群。 - **Password**:TiDB Cloud 集群的密码。 - **User**:TiDB Cloud 集群的用户名。 - **Database**:数据库名称。 @@ -248,48 +248,48 @@ TiDB Cloud 节点作为[常规节点](https://docs.n8n.io/workflows/nodes/#regul
-- **Credential for TiDB Cloud API**:仅支持 TiDB Cloud API 密钥。有关如何创建 API 密钥,请参阅[获取 TiDB Cloud API 密钥](#前提条件获取-tidb-cloud-api-密钥)。 +- **Credential for TiDB Cloud API**:仅支持 TiDB Cloud API 密钥。如何创建 API 密钥请参考 [Get TiDB Cloud API Key](#prerequisites-get-tidb-cloud-api-key)。 - **Project**:TiDB Cloud 项目名称。 -- **Operation**:此节点的操作。有关所有支持的操作,请参阅[支持的操作](#支持的操作)。 -- **Cluster**:TiDB Cloud 集群名称。你应该选择一个现有集群。 +- **Operation**:该节点的操作。所有支持的操作请参考 [Support Operation](#supported-operations)。 +- **Cluster**:TiDB Cloud 集群名称。你应选择一个已有集群。 - **Password**:TiDB Cloud 集群的密码。 - **User**:TiDB Cloud 集群的用户名。 - **Database**:数据库名称。 -- **Table**:表名。你可以使用 `From list` 模式选择一个,或使用 `Name` 模式手动输入表名。 -- **Delete Key**:决定数据库中哪些行被删除的项目属性名称。项目是从一个节点发送到另一个节点的数据。节点对传入数据的每个项目执行其操作。有关 n8n 中项目的更多信息,请参阅 [n8n 文档](https://docs.n8n.io/workflows/items/)。 +- **Table**:表名。你可以使用 `From list` 模式选择一个表,或使用 `Name` 模式手动输入表名。 +- **Delete Key**:决定数据库中哪些行被删除的项属性名。item 是从一个节点发送到另一个节点的数据。节点会对每个输入数据项执行操作。关于 n8n 中的 item 更多信息,请参见 [n8n documentation](https://docs.n8n.io/workflows/items/)。
-- **Credential for TiDB Cloud API**:仅支持 TiDB Cloud API 密钥。有关如何创建 API 密钥,请参阅[获取 TiDB Cloud API 密钥](#前提条件获取-tidb-cloud-api-密钥)。 +- **Credential for TiDB Cloud API**:仅支持 TiDB Cloud API 密钥。如何创建 API 密钥请参考 [Get TiDB Cloud API Key](#prerequisites-get-tidb-cloud-api-key)。 - **Project**:TiDB Cloud 项目名称。 -- **Operation**:此节点的操作。有关所有支持的操作,请参阅[支持的操作](#支持的操作)。 -- **Cluster**:TiDB Cloud 集群名称。你应该选择一个现有集群。 +- **Operation**:该节点的操作。所有支持的操作请参考 [Support Operation](#supported-operations)。 +- **Cluster**:TiDB Cloud 集群名称。你应选择一个已有集群。 - **Password**:TiDB Cloud 集群的密码。 - **User**:TiDB Cloud 集群的用户名。 - **Database**:数据库名称。 -- **Table**:表名。你可以使用 `From list` 模式选择一个,或使用 `Name` 模式手动输入表名。 -- **Columns**:用作新行列的输入项目属性的逗号分隔列表。项目是从一个节点发送到另一个节点的数据。节点对传入数据的每个项目执行其操作。有关 n8n 中项目的更多信息,请参阅 [n8n 文档](https://docs.n8n.io/workflows/items/)。 +- **Table**:表名。你可以使用 `From list` 模式选择一个表,或使用 `Name` 模式手动输入表名。 +- **Columns**:以逗号分隔的输入项属性列表,这些属性将作为新行的列。item 是从一个节点发送到另一个节点的数据。节点会对每个输入数据项执行操作。关于 n8n 中的 item 更多信息,请参见 [n8n documentation](https://docs.n8n.io/workflows/items/)。
-- **Credential for TiDB Cloud API**:仅支持 TiDB Cloud API 密钥。有关如何创建 API 密钥,请参阅[获取 TiDB Cloud API 密钥](#前提条件获取-tidb-cloud-api-密钥)。 +- **Credential for TiDB Cloud API**:仅支持 TiDB Cloud API 密钥。如何创建 API 密钥请参考 [Get TiDB Cloud API Key](#prerequisites-get-tidb-cloud-api-key)。 - **Project**:TiDB Cloud 项目名称。 -- **Operation**:此节点的操作。有关所有支持的操作,请参阅[支持的操作](#支持的操作)。 -- **Cluster**:TiDB Cloud 集群名称。你应该选择一个现有集群。 +- **Operation**:该节点的操作。所有支持的操作请参考 [Support Operation](#supported-operations)。 +- **Cluster**:TiDB Cloud 集群名称。你应选择一个已有集群。 - **Password**:TiDB Cloud 集群的密码。 - **User**:TiDB Cloud 集群的用户名。 - **Database**:数据库名称。 -- **Table**:表名。你可以使用 `From list` 模式选择一个,或使用 `Name` 模式手动输入表名。 -- **Update Key**:决定数据库中哪些行被更新的项目属性名称。项目是从一个节点发送到另一个节点的数据。节点对传入数据的每个项目执行其操作。有关 n8n 中项目的更多信息,请参阅 [n8n 文档](https://docs.n8n.io/workflows/items/)。 -- **Columns**:用作要更新行的列的输入项目属性的逗号分隔列表。 +- **Table**:表名。你可以使用 `From list` 模式选择一个表,或使用 `Name` 模式手动输入表名。 +- **Update Key**:决定数据库中哪些行被更新的项属性名。item 是从一个节点发送到另一个节点的数据。节点会对每个输入数据项执行操作。关于 n8n 中的 item 更多信息,请参见 [n8n documentation](https://docs.n8n.io/workflows/items/)。 +- **Columns**:以逗号分隔的输入项属性列表,这些属性将作为要更新行的列。
### 限制 -- 通常在 **Execute SQL** 操作中只允许执行一条 SQL 语句。如果你想在单个操作中执行多条语句,需要手动启用 [`tidb_multi_statement_mode`](https://docs.pingcap.com/tidbcloud/system-variables#tidb_multi_statement_mode-new-in-v4011)。 -- 对于 **Delete** 和 **Update** 操作,你需要指定一个字段作为键。例如,`Delete Key` 设置为 `id`,相当于执行 `DELETE FROM table WHERE id = ${item.id}`。目前,**Delete** 和 **Update** 操作仅支持指定一个键。 -- 对于 **Insert** 和 **Update** 操作,你需要在 **Columns** 字段中指定逗号分隔的列表,并且字段名称必须与输入项目的属性相同。 +- **Execute SQL** 操作通常只允许执行一条 SQL 语句。如果你希望在一次操作中执行多条语句,需要手动开启 [`tidb_multi_statement_mode`](https://docs.pingcap.com/tidbcloud/system-variables#tidb_multi_statement_mode-new-in-v4011)。 +- 对于 **Delete** 和 **Update** 操作,你需要指定一个字段作为 key。例如,`Delete Key` 设置为 `id`,等价于执行 `DELETE FROM table WHERE id = ${item.id}`。目前 **Delete** 和 **Update** 操作仅支持指定一个 key。 +- 对于 **Insert** 和 **Update** 操作,你需要在 **Columns** 字段中指定以逗号分隔的列表,且字段名必须与输入项的属性名一致。 \ No newline at end of file diff --git a/tidb-cloud/integrate-tidbcloud-with-netlify.md b/tidb-cloud/integrate-tidbcloud-with-netlify.md index 75a28e7f87346..7fc323585d230 100644 --- a/tidb-cloud/integrate-tidbcloud-with-netlify.md +++ b/tidb-cloud/integrate-tidbcloud-with-netlify.md @@ -1,49 +1,49 @@ --- -title: 将 TiDB Cloud 与 Netlify 集成 -summary: 了解如何将 TiDB Cloud 集群连接到 Netlify 项目。 +title: 集成 TiDB Cloud 与 Netlify +summary: 了解如何将你的 TiDB Cloud 集群连接到 Netlify 项目。 --- -# 将 TiDB Cloud 与 Netlify 集成 +# 集成 TiDB Cloud 与 Netlify -[Netlify](https://netlify.com/) 是一个用于自动化现代 Web 项目的一体化平台。它用单一工作流替代了你的托管基础设施、持续集成和部署流程,并随着项目的增长集成了无服务器函数、用户认证和表单处理等动态功能。 +[Netlify](https://netlify.com/) 是一个一体化平台,用于自动化现代 Web 项目。它用单一的工作流替代了你的托管基础设施、持续集成和部署流水线,并在项目发展过程中集成了如无服务器函数、用户认证和表单处理等动态功能。 -本文档描述如何在 Netlify 上部署一个以 TiDB Cloud 作为数据库后端的全栈应用。你还可以了解如何将 Netlify 边缘函数与我们的 TiDB Cloud 无服务器驱动程序一起使用。 +本文档介绍了如何在 Netlify 上部署一个以 TiDB Cloud 作为数据库后端的全栈应用。你还可以学习如何将 Netlify edge function 与我们的 TiDB Cloud serverless driver 一起使用。 -## 前提条件 +## 前置条件 -在部署之前,请确保满足以下前提条件。 +在部署之前,请确保满足以下前置条件。 -### Netlify 账号和 CLI +### 一个 Netlify 账号和 CLI -你需要有一个 Netlify 账号和 CLI。如果你没有,请参考以下链接创建: +你需要拥有一个 Netlify 账号和 CLI。如果还没有,请参考以下链接创建: -* [注册 Netlify 账号](https://app.netlify.com/signup)。 -* [获取 Netlify CLI](https://docs.netlify.com/cli/get-started/)。 +* [注册 Netlify 账号](https://app.netlify.com/signup) +* [获取 Netlify CLI](https://docs.netlify.com/cli/get-started/) -### TiDB Cloud 账号和 TiDB 集群 +### 一个 TiDB Cloud 账号和 TiDB 集群 -你需要在 TiDB Cloud 中拥有一个账号和一个集群。如果你没有,请参考以下内容创建: +你需要在 TiDB Cloud 中拥有一个账号和一个集群。如果还没有,请参考以下内容创建: - [创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md) - [创建 TiDB Cloud Dedicated 集群](/tidb-cloud/create-tidb-cluster.md) 一个 TiDB Cloud 集群可以连接到多个 Netlify 站点。 -### TiDB Cloud 中允许所有 IP 地址的流量过滤器 +### TiDB Cloud 中流量过滤器允许所有 IP 地址 -对于 TiDB Cloud Dedicated 集群,确保集群的流量过滤器允许所有 IP 地址(设置为 `0.0.0.0/0`)进行连接。这是因为 Netlify 部署使用动态 IP 地址。 +对于 TiDB Cloud Dedicated 集群,请确保集群的流量过滤器允许所有 IP 地址(设置为 `0.0.0.0/0`)进行连接。这是因为 Netlify 部署使用动态 IP 地址。 -TiDB Cloud Serverless 集群默认允许所有 IP 地址连接,因此你不需要配置任何流量过滤器。 +TiDB Cloud Serverless 集群默认允许所有 IP 地址连接,因此无需配置任何流量过滤器。 ## 步骤 1. 获取示例项目和连接字符串 -为了帮助你快速入门,TiDB Cloud 提供了一个使用 React 和 Prisma Client 的 Next.js TypeScript 全栈示例应用。这是一个简单的博客站点,你可以发布和删除自己的博客。所有内容都通过 Prisma 存储在 TiDB Cloud 中。 +为了帮助你快速上手,TiDB Cloud 提供了一个基于 TypeScript、Next.js、React 和 Prisma Client 的全栈示例应用。它是一个简单的博客站点,你可以在其中发布和删除自己的博客。所有内容都通过 Prisma 存储在 TiDB Cloud 中。 -### Fork 示例项目并将其克隆到你自己的空间 +### Fork 示例项目并克隆到你的空间 1. 将 [Fullstack Example with Next.js and Prisma](https://github.com/tidbcloud/nextjs-prisma-example) 仓库 fork 到你自己的 GitHub 仓库。 -2. 将 fork 的仓库克隆到你自己的空间: +2. 将 fork 后的仓库克隆到你的本地空间: ```shell git clone https://github.com/${your_username}/nextjs-prisma-example.git @@ -52,24 +52,24 @@ TiDB Cloud Serverless 集群默认允许所有 IP 地址连接,因此你不需 ### 获取 TiDB Cloud 连接字符串 -对于 TiDB Cloud Serverless 集群,你可以从 [TiDB Cloud CLI](/tidb-cloud/cli-reference.md) 或 [TiDB Cloud 控制台](https://tidbcloud.com/) 获取连接字符串。 +对于 TiDB Cloud Serverless 集群,你可以通过 [TiDB Cloud CLI](/tidb-cloud/cli-reference.md) 或 [TiDB Cloud 控制台](https://tidbcloud.com/) 获取连接字符串。 -对于 TiDB Cloud Dedicated 集群,你只能从 TiDB Cloud 控制台获取连接字符串。 +对于 TiDB Cloud Dedicated 集群,你只能通过 TiDB Cloud 控制台获取连接字符串。
> **提示:** > -> 如果你尚未安装 Cloud CLI,请在执行以下步骤之前参考 [TiDB Cloud CLI 快速入门](/tidb-cloud/get-started-with-cli.md) 进行快速安装。 +> 如果你还没有安装 Cloud CLI,请参考 [TiDB Cloud CLI 快速入门](/tidb-cloud/get-started-with-cli.md) 进行快速安装,然后再执行以下步骤。 -1. 在交互模式下获取集群的连接字符串: +1. 以交互模式获取集群的连接字符串: ```shell ticloud cluster connect-info ``` -2. 按照提示选择你的集群、客户端和操作系统。注意,本文档使用的客户端是 `Prisma`。 +2. 按提示选择你的集群、客户端和操作系统。注意,本教程使用的客户端为 `Prisma`。 ``` Choose the cluster @@ -80,7 +80,7 @@ TiDB Cloud Serverless 集群默认允许所有 IP 地址连接,因此你不需 > [x] macOS/Alpine (Detected) ``` - 输出如下,你可以在 `url` 值中找到 Prisma 的连接字符串。 + 输出如下,你可以在 `url` 字段中找到 Prisma 的连接字符串。 ```shell datasource db { @@ -91,22 +91,22 @@ TiDB Cloud Serverless 集群默认允许所有 IP 地址连接,因此你不需 > **注意:** > - > 在稍后使用连接字符串时,请注意以下事项: + > 在后续使用连接字符串时,请注意以下事项: > > - 将连接字符串中的参数替换为实际值。 > - 本文档中的示例应用需要一个新数据库,因此你需要将 `` 替换为一个唯一的新名称。
-
+
-1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,转到项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群的名称进入其概览页面,然后点击右上角的 **Connect**。在显示的对话框中,你可以从连接字符串中获取以下连接参数。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/) 中,进入你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群名称进入其概览页,然后点击右上角的 **Connect**。在弹出的对话框中,你可以从连接字符串中获取以下连接参数: - `${host}` - `${port}` - `${user}` - `${password}` -2. 在以下连接字符串中填入连接参数: +2. 将连接参数填入以下连接字符串: ```shell mysql://:@:/?sslaccept=strict @@ -114,7 +114,7 @@ TiDB Cloud Serverless 集群默认允许所有 IP 地址连接,因此你不需 > **注意:** > - > 在稍后使用连接字符串时,请注意以下事项: + > 在后续使用连接字符串时,请注意以下事项: > > - 将连接字符串中的参数替换为实际值。 > - 本文档中的示例应用需要一个新数据库,因此你需要将 `` 替换为一个唯一的新名称。 @@ -124,24 +124,24 @@ TiDB Cloud Serverless 集群默认允许所有 IP 地址连接,因此你不需 ## 步骤 2. 将示例应用部署到 Netlify -1. 在 Netlify CLI 中,验证你的 Netlify 账号并获取访问令牌。 +1. 在 Netlify CLI 中,认证你的 Netlify 账号并获取访问令牌。 ```shell netlify login ``` -2. 启动自动设置。此步骤将你的仓库连接到持续部署,因此 Netlify CLI 需要访问权限来在仓库中创建部署密钥和 webhook。 +2. 启动自动化设置。此步骤会连接你的仓库以实现持续部署,因此 Netlify CLI 需要访问权限以在仓库中创建 deploy key 和 webhook。 ```shell netlify init ``` - 当出现提示时,选择 **Create & configure a new site**,并授予 GitHub 访问权限。对于所有其他选项,使用默认值。 + 当出现提示时,选择 **Create & configure a new site**,并授权 GitHub 访问。其他选项均使用默认值。 ```shell Adding local .netlify folder to .gitignore file... ? What would you like to do? + Create & configure a new site - ? Team: your_username's team + ? Team: your_username’s team ? Site name (leave blank for a random name; you can change it later): Site Created @@ -177,10 +177,10 @@ TiDB Cloud Serverless 集群默认允许所有 IP 地址连接,因此你不需 netlify open Open the Netlify admin URL of your site ``` -3. 设置环境变量。要从你自己的空间和 Netlify 空间连接到你的 TiDB Cloud 集群,你需要将 `DATABASE_URL` 设置为从[步骤 1](#步骤-1-获取示例项目和连接字符串)获取的连接字符串。 +3. 设置环境变量。为了让你的本地空间和 Netlify 空间都能连接到 TiDB Cloud 集群,你需要将 `DATABASE_URL` 设置为在 [步骤 1](#step-1-get-the-example-project-and-the-connection-string) 获取到的连接字符串。 ```shell - # 为你自己的空间设置环境变量 + # 为你的本地空间设置环境变量 export DATABASE_URL='mysql://:@:/?sslaccept=strict' # 为 Netlify 空间设置环境变量 @@ -190,49 +190,49 @@ TiDB Cloud Serverless 集群默认允许所有 IP 地址连接,因此你不需 检查你的环境变量。 ```shell - # 检查你自己空间的环境变量 + # 检查本地空间的环境变量 env | grep DATABASE_URL # 检查 Netlify 空间的环境变量 netlify env:list ``` -4. 在本地构建应用并将架构迁移到你的 TiDB Cloud 集群。 +4. 在本地构建应用并将 schema 迁移到你的 TiDB Cloud 集群。 > **提示:** > - > 如果你想跳过本地部署直接将应用部署到 Netlify,只需转到步骤 6。 + > 如果你想跳过本地部署,直接将应用部署到 Netlify,请直接跳到第 6 步。 ```shell npm install . npm run netlify-build ``` -5. 在本地运行应用。你可以启动本地开发服务器来预览你的站点。 +5. 在本地运行应用。你可以启动本地开发服务器预览你的站点。 ```shell netlify dev ``` - 然后,在浏览器中访问 `http://localhost:3000/` 来探索其用户界面。 + 然后在浏览器中访问 `http://localhost:3000/`,体验其界面。 -6. 将应用部署到 Netlify。一旦你对本地预览满意,就可以使用以下命令将你的站点部署到 Netlify。`--trigger` 表示不上传本地文件进行部署。如果你进行了任何本地更改,请确保已将它们提交到你的 GitHub 仓库。 +6. 将应用部署到 Netlify。当你对本地预览满意后,可以使用以下命令将站点部署到 Netlify。`--trigger` 表示不上传本地文件进行部署。如果你有本地更改,请确保已提交到你的 GitHub 仓库。 ```shell netlify deploy --prod --trigger ``` - 转到你的 Netlify 控制台检查部署状态。部署完成后,应用的站点将有一个由 Netlify 提供的公共 IP 地址,以便所有人都可以访问它。 + 前往你的 Netlify 控制台查看部署状态。部署完成后,应用的站点将拥有 Netlify 提供的公网 IP 地址,所有人都可以访问。 -## 使用边缘函数 +## 使用 edge function -上述部分提到的示例应用在 Netlify 无服务器函数上运行。本节向你展示如何将边缘函数与 [TiDB Cloud 无服务器驱动程序](/tidb-cloud/serverless-driver.md)一起使用。边缘函数是 Netlify 提供的一个功能,它允许你在 Netlify CDN 的边缘运行无服务器函数。 +上文提到的示例应用运行在 Netlify 的无服务器函数上。本节将介绍如何将 [TiDB Cloud serverless driver](/tidb-cloud/serverless-driver.md) 与 edge function 一起使用。edge function 是 Netlify 提供的一项功能,允许你在 Netlify CDN 的边缘运行无服务器函数。 -要使用边缘函数,请执行以下步骤: +要使用 edge function,请按以下步骤操作: -1. 在项目的根目录下创建一个名为 `netlify/edge-functions` 的目录。 +1. 在项目根目录下创建名为 `netlify/edge-functions` 的目录。 -2. 在该目录中创建一个名为 `hello.ts` 的文件,并添加以下代码: +2. 在该目录下创建名为 `hello.ts` 的文件,并添加以下代码: ```typescript import { connect } from 'https://esm.sh/@tidbcloud/serverless' @@ -246,16 +246,16 @@ TiDB Cloud Serverless 集群默认允许所有 IP 地址连接,因此你不需 export const config = { path: "/api/hello" }; ``` -3. 设置 `DATABASE_URL` 环境变量。你可以从 [TiDB Cloud 控制台](https://tidbcloud.com/)获取连接信息。 +3. 设置 `DATABASE_URL` 环境变量。你可以从 [TiDB Cloud 控制台](https://tidbcloud.com/) 获取连接信息。 ```shell netlify env:set DATABASE_URL 'mysql://:@/' ``` -4. 将边缘函数部署到 Netlify。 +4. 将 edge function 部署到 Netlify。 ```shell netlify deploy --prod --trigger ``` -然后你可以转到你的 Netlify 控制台检查部署状态。部署完成后,你可以通过 `https:///api/hello` URL 访问边缘函数。 +然后你可以前往 Netlify 控制台查看部署状态。部署完成后,你可以通过 `https:///api/hello` URL 访问 edge function。 \ No newline at end of file diff --git a/tidb-cloud/integrate-tidbcloud-with-vercel.md b/tidb-cloud/integrate-tidbcloud-with-vercel.md index eacebdcf2aab3..644ee3777be82 100644 --- a/tidb-cloud/integrate-tidbcloud-with-vercel.md +++ b/tidb-cloud/integrate-tidbcloud-with-vercel.md @@ -1,107 +1,107 @@ --- -title: 将 TiDB Cloud 与 Vercel 集成 -summary: 了解如何将 TiDB Cloud 集群连接到 Vercel 项目。 +title: 集成 TiDB Cloud 与 Vercel +summary: 了解如何将你的 TiDB Cloud 集群连接到 Vercel 项目。 --- -# 将 TiDB Cloud 与 Vercel 集成 +# 集成 TiDB Cloud 与 Vercel -[Vercel](https://vercel.com/) 是一个面向前端开发者的平台,为创新者提供灵感迸发时所需的速度和可靠性。 +[Vercel](https://vercel.com/) 是一个面向前端开发者的平台,提供创新者在灵感迸发时所需的速度与可靠性。 -将 TiDB Cloud 与 Vercel 结合使用,可以让你使用 MySQL 兼容的关系模型更快地构建新的前端应用程序,并借助为弹性、可扩展性以及最高级别的数据隐私和安全性而构建的平台,让你的应用程序充满信心地成长。 +将 TiDB Cloud 与 Vercel 结合使用,可以让你基于兼容 MySQL 的关系模型更快地构建新的前端应用,并借助具备高可用性、可扩展性以及最高级别数据隐私和安全的平台,放心地扩展你的应用。 -本指南描述了如何使用以下方法之一将 TiDB Cloud 集群连接到 Vercel 项目: +本指南介绍了如何通过以下任一方式将你的 TiDB Cloud 集群连接到 Vercel 项目: -* [通过 TiDB Cloud Vercel 集成连接](#通过-tidb-cloud-vercel-集成连接) -* [通过手动配置环境变量连接](#通过手动设置环境变量连接) +* [通过 TiDB Cloud Vercel 集成连接](#connect-via-the-tidb-cloud-vercel-integration) +* [通过手动配置环境变量连接](#connect-via-manually-setting-environment-variables) -对于上述两种方法,TiDB Cloud 提供以下选项用于以编程方式连接到你的数据库: +对于上述两种方式,TiDB Cloud 都提供了以下可编程连接数据库的选项: -- 集群:通过直接连接或[无服务器驱动](/tidb-cloud/serverless-driver.md)将你的 TiDB Cloud 集群连接到你的 Vercel 项目。 -- [数据应用](/tidb-cloud/data-service-manage-data-app.md):通过一组 HTTP 端点访问你的 TiDB Cloud 集群的数据。 +- 集群:通过直连或 [serverless driver](/tidb-cloud/serverless-driver.md) 将你的 TiDB Cloud 集群连接到 Vercel 项目。 +- [数据应用(Data App)](/tidb-cloud/data-service-manage-data-app.md):通过一组 HTTP 端点访问 TiDB Cloud 集群的数据。 -## 前提条件 +## 前置条件 -在连接之前,请确保满足以下前提条件。 +在连接前,请确保满足以下前置条件。 -### Vercel 账号和 Vercel 项目 +### 一个 Vercel 账号和一个 Vercel 项目 -你需要在 Vercel 中拥有一个账号和一个项目。如果你没有,请参考以下 Vercel 文档创建: +你需要在 Vercel 中拥有一个账号和一个项目。如果还没有,请参考以下 Vercel 文档创建: -* [创建新的个人账号](https://vercel.com/docs/teams-and-accounts#creating-a-personal-account)或[创建新的团队](https://vercel.com/docs/teams-and-accounts/create-or-join-a-team#creating-a-team)。 -* 在 Vercel 中[创建项目](https://vercel.com/docs/concepts/projects/overview#creating-a-project),或者如果你没有要部署的应用程序,可以使用 [TiDB Cloud 入门模板](https://vercel.com/templates/next.js/tidb-cloud-starter)进行尝试。 +* [创建个人账号](https://vercel.com/docs/teams-and-accounts#creating-a-personal-account) 或 [创建团队](https://vercel.com/docs/teams-and-accounts/create-or-join-a-team#creating-a-team)。 +* 在 Vercel 中[创建项目](https://vercel.com/docs/concepts/projects/overview#creating-a-project),如果你还没有可部署的应用,可以使用 [TiDB Cloud Starter Template](https://vercel.com/templates/next.js/tidb-cloud-starter) 进行体验。 -一个 Vercel 项目只能连接到一个 TiDB Cloud 集群。要更改集成,你需要先断开当前集群的连接,然后再连接到新集群。 +一个 Vercel 项目只能连接一个 TiDB Cloud 集群。如需更换集成,需先断开当前集群,再连接新集群。 -### TiDB Cloud 账号和 TiDB 集群 +### 一个 TiDB Cloud 账号和一个 TiDB 集群 -你需要在 TiDB Cloud 中拥有一个账号和一个集群。如果你没有,请参考以下内容创建: +你需要在 TiDB Cloud 中拥有一个账号和一个集群。如果还没有,请参考以下内容创建: - [创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md) > **注意:** > - > TiDB Cloud Vercel 集成支持创建 TiDB Cloud Serverless 集群。你也可以在集成过程中稍后创建。 + > TiDB Cloud Vercel 集成支持创建 TiDB Cloud Serverless 集群。你也可以在集成过程中创建。 -- [创建 TiDB Cloud Dedicated 集群](/tidb-cloud/create-tidb-cluster.md) +- [创建 TiDB Cloud 专属集群(Dedicated)](/tidb-cloud/create-tidb-cluster.md) > **注意:** > - > 对于 TiDB Cloud Dedicated 集群,请确保集群的流量过滤器允许所有 IP 地址(设置为 `0.0.0.0/0`)进行连接,因为 Vercel 部署使用[动态 IP 地址](https://vercel.com/guides/how-to-allowlist-deployment-ip-address)。 + > 对于 TiDB Cloud 专属集群,请确保集群的流量过滤器允许所有 IP 地址(设置为 `0.0.0.0/0`)进行连接,因为 Vercel 部署使用 [动态 IP 地址](https://vercel.com/guides/how-to-allowlist-deployment-ip-address)。 -要[通过 TiDB Cloud Vercel 集成进行集成](#通过-tidb-cloud-vercel-集成连接),你需要在 TiDB Cloud 中拥有组织的`组织所有者`角色或目标项目的`项目所有者`角色。更多信息,请参阅[用户角色](/tidb-cloud/manage-user-access.md#user-roles)。 +要[通过 TiDB Cloud Vercel 集成与 Vercel 集成](#connect-via-the-tidb-cloud-vercel-integration),你需要是 TiDB Cloud 组织的 `Organization Owner` 角色,或目标项目的 `Project Owner` 角色。更多信息参见 [用户角色](/tidb-cloud/manage-user-access.md#user-roles)。 -一个 TiDB Cloud 集群可以连接到多个 Vercel 项目。 +一个 TiDB Cloud 集群可以连接多个 Vercel 项目。 -### 数据应用和端点 +### 一个数据应用(Data App)及其端点 -如果你想通过[数据应用](/tidb-cloud/data-service-manage-data-app.md)连接到你的 TiDB Cloud 集群,你需要预先在 TiDB Cloud 中拥有目标数据应用和端点。如果你没有,请参考以下步骤创建: +如果你希望通过 [数据应用(Data App)](/tidb-cloud/data-service-manage-data-app.md) 连接 TiDB Cloud 集群,需要提前在 TiDB Cloud 中准备好目标 Data App 及其端点。如果还没有,请参考以下步骤创建: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,转到项目的[**数据服务**](https://tidbcloud.com/project/data-service)页面。 -2. 为你的项目[创建数据应用](/tidb-cloud/data-service-manage-data-app.md#create-a-data-app)。 -3. [将数据应用链接](/tidb-cloud/data-service-manage-data-app.md#manage-linked-data-sources)到目标 TiDB Cloud 集群。 -4. [管理端点](/tidb-cloud/data-service-manage-endpoint.md),以便你可以自定义它们来执行 SQL 语句。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,进入项目的 [**数据服务**](https://tidbcloud.com/project/data-service) 页面。 +2. [为项目创建 Data App](/tidb-cloud/data-service-manage-data-app.md#create-a-data-app)。 +3. [将 Data App 关联到目标 TiDB Cloud 集群](/tidb-cloud/data-service-manage-data-app.md#manage-linked-data-sources)。 +4. [管理端点](/tidb-cloud/data-service-manage-endpoint.md),以便自定义执行 SQL 语句。 -一个 Vercel 项目只能连接到一个 TiDB Cloud 数据应用。要更改 Vercel 项目的数据应用,你需要先断开当前应用的连接,然后再连接到新应用。 +一个 Vercel 项目只能连接一个 TiDB Cloud Data App。如需更换 Data App,需先断开当前 App,再连接新 App。 ## 通过 TiDB Cloud Vercel 集成连接 -要通过 TiDB Cloud Vercel 集成进行连接,请从 [Vercel 的集成市场](https://vercel.com/integrations)转到 [TiDB Cloud 集成](https://vercel.com/integrations/tidb-cloud)页面。使用此方法,你可以选择要连接的集群,TiDB Cloud 将自动为你的 Vercel 项目生成所有必要的环境变量。 +要通过 TiDB Cloud Vercel 集成连接,请前往 [Vercel 的集成市场](https://vercel.com/integrations)中的 [TiDB Cloud 集成](https://vercel.com/integrations/tidb-cloud) 页面。使用此方法,你可以选择要连接的集群,TiDB Cloud 会自动为你的 Vercel 项目生成所有必要的环境变量。 > **注意:** > -> 此方法仅适用于 TiDB Cloud Serverless 集群。如果你想连接到 TiDB Cloud Dedicated 集群,请使用[手动方法](#通过手动设置环境变量连接)。 +> 此方法仅适用于 TiDB Cloud Serverless 集群。如果你需要连接 TiDB Cloud 专属集群,请使用[手动方法](#connect-via-manually-setting-environment-variables)。 -### 集成工作流程 +### 集成流程 详细步骤如下: -
+
-1. 在 [TiDB Cloud Vercel 集成](https://vercel.com/integrations/tidb-cloud)页面的右上角点击**添加集成**。将显示**添加 TiDB Cloud**对话框。 -2. 在下拉列表中选择集成范围,然后点击**继续**。 -3. 选择要添加集成的 Vercel 项目,然后点击**继续**。 -4. 确认集成所需的权限,然后点击**添加集成**。然后你将被引导到 TiDB Cloud 控制台的集成页面。 -5. 在集成页面上,执行以下操作: +1. 在 [TiDB Cloud Vercel 集成](https://vercel.com/integrations/tidb-cloud) 页面右上角点击 **Add Integration**,弹出 **Add TiDB Cloud** 对话框。 +2. 在下拉列表中选择集成范围,点击 **Continue**。 +3. 选择要添加集成的 Vercel 项目,点击 **Continue**。 +4. 确认集成所需权限,点击 **Add Integration**。随后会跳转到 TiDB Cloud 控制台的集成页面。 +5. 在集成页面,按以下步骤操作: - 1. 选择你的目标 Vercel 项目,然后点击**下一步**。 - 2. 选择你的目标 TiDB Cloud 组织和项目。 - 3. 选择**集群**作为你的连接类型。 - 4. 选择你的目标 TiDB Cloud 集群。如果**集群**下拉列表为空或你想选择新的 TiDB Cloud Serverless 集群,请在列表中点击**+ 创建集群**来创建一个。 - 5. 选择你要连接的数据库。如果**数据库**下拉列表为空或你想选择新的数据库,请在列表中点击**+ 创建数据库**来创建一个。 - 6. 选择你的 Vercel 项目使用的框架。如果目标框架未列出,请选择**通用**。不同的框架决定了不同的环境变量。 - 7. 选择是否启用**分支**以为预览环境创建新分支。 - 8. 点击**添加集成并返回 Vercel**。 + 1. 选择目标 Vercel 项目,点击 **Next**。 + 2. 选择目标 TiDB Cloud 组织和项目。 + 3. 选择 **Cluster** 作为连接类型。 + 4. 选择目标 TiDB Cloud 集群。如果 **Cluster** 下拉列表为空,或你想选择新的 TiDB Cloud Serverless 集群,可点击列表中的 **+ Create Cluster** 创建。 + 5. 选择要连接的数据库。如果 **Database** 下拉列表为空,或你想选择新的数据库,可点击列表中的 **+ Create Database** 创建。 + 6. 选择 Vercel 项目所用的框架。如果目标框架未列出,选择 **General**。不同框架会生成不同的环境变量。 + 7. 选择是否启用 **Branching**,以为预览环境创建新分支。 + 8. 点击 **Add Integration and Return to Vercel**。 -![Vercel 集成页面](/media/tidb-cloud/vercel/integration-link-cluster-page.png) +![Vercel Integration Page](/media/tidb-cloud/vercel/integration-link-cluster-page.png) -6. 返回到你的 Vercel 仪表板,转到你的 Vercel 项目,点击**设置** > **环境变量**,检查是否已自动添加目标 TiDB 集群的环境变量。 +6. 返回 Vercel 控制台,进入你的 Vercel 项目,点击 **Settings** > **Environment Variables**,检查目标 TiDB 集群的环境变量是否已自动添加。 - 如果已添加以下变量,则集成完成。 + 如果以下变量已添加,说明集成完成。 - **通用** + **General** ```shell TIDB_HOST @@ -117,7 +117,7 @@ summary: 了解如何将 TiDB Cloud 集群连接到 Vercel 项目。 DATABASE_URL ``` - **TiDB Cloud 无服务器驱动** + **TiDB Cloud Serverless Driver** ``` DATABASE_URL @@ -125,25 +125,25 @@ summary: 了解如何将 TiDB Cloud 集群连接到 Vercel 项目。
-
+
-1. 在 [TiDB Cloud Vercel 集成](https://vercel.com/integrations/tidb-cloud)页面的右上角点击**添加集成**。将显示**添加 TiDB Cloud**对话框。 -2. 在下拉列表中选择集成范围,然后点击**继续**。 -3. 选择要添加集成的 Vercel 项目,然后点击**继续**。 -4. 确认集成所需的权限,然后点击**添加集成**。然后你将被引导到 TiDB Cloud 控制台的集成页面。 -5. 在集成页面上,执行以下操作: +1. 在 [TiDB Cloud Vercel 集成](https://vercel.com/integrations/tidb-cloud) 页面右上角点击 **Add Integration**,弹出 **Add TiDB Cloud** 对话框。 +2. 在下拉列表中选择集成范围,点击 **Continue**。 +3. 选择要添加集成的 Vercel 项目,点击 **Continue**。 +4. 确认集成所需权限,点击 **Add Integration**。随后会跳转到 TiDB Cloud 控制台的集成页面。 +5. 在集成页面,按以下步骤操作: - 1. 选择你的目标 Vercel 项目,然后点击**下一步**。 - 2. 选择你的目标 TiDB Cloud 组织和项目。 - 3. 选择**数据应用**作为你的连接类型。 - 4. 选择你的目标 TiDB 数据应用。 - 6. 点击**添加集成并返回 Vercel**。 + 1. 选择目标 Vercel 项目,点击 **Next**。 + 2. 选择目标 TiDB Cloud 组织和项目。 + 3. 选择 **Data App** 作为连接类型。 + 4. 选择目标 TiDB Data App。 + 6. 点击 **Add Integration and Return to Vercel**。 -![Vercel 集成页面](/media/tidb-cloud/vercel/integration-link-data-app-page.png) +![Vercel Integration Page](/media/tidb-cloud/vercel/integration-link-data-app-page.png) -6. 返回到你的 Vercel 仪表板,转到你的 Vercel 项目,点击**设置** > **环境变量**,检查是否已自动添加目标数据应用的环境变量。 +6. 返回 Vercel 控制台,进入你的 Vercel 项目,点击 **Settings** > **Environment Variables**,检查目标 Data App 的环境变量是否已自动添加。 - 如果已添加以下变量,则集成完成。 + 如果以下变量已添加,说明集成完成。 ```shell DATA_APP_BASE_URL @@ -156,77 +156,77 @@ summary: 了解如何将 TiDB Cloud 集群连接到 Vercel 项目。 ### 配置连接 -如果你已安装 [TiDB Cloud Vercel 集成](https://vercel.com/integrations/tidb-cloud),你可以在集成内添加或删除连接。 +如果你已安装 [TiDB Cloud Vercel 集成](https://vercel.com/integrations/tidb-cloud),可以在集成内添加或移除连接。 -1. 在你的 Vercel 仪表板中,点击**集成**。 -2. 在 TiDB Cloud 条目中点击**管理**。 -3. 点击**配置**。 -4. 点击**添加链接**或**删除**以添加或删除连接。 +1. 在 Vercel 控制台点击 **Integrations**。 +2. 在 TiDB Cloud 条目中点击 **Manage**。 +3. 点击 **Configure**。 +4. 点击 **Add Link** 或 **Remove** 以添加或移除连接。 - ![Vercel 集成配置页面](/media/tidb-cloud/vercel/integration-vercel-configuration-page.png) + ![Vercel Integration Configuration Page](/media/tidb-cloud/vercel/integration-vercel-configuration-page.png) - 当你删除连接时,集成工作流程设置的环境变量也会从 Vercel 项目中删除。但是,此操作不会影响 TiDB Cloud Serverless 集群的数据。 + 当你移除连接时,集成流程设置的环境变量也会从 Vercel 项目中移除。但此操作不会影响 TiDB Cloud Serverless 集群中的数据。 -### 使用 TiDB Cloud Serverless 分支连接 +### 使用 TiDB Cloud Serverless 分支功能连接 {#connect-with-branching} -Vercel 的[预览部署](https://vercel.com/docs/deployments/preview-deployments)功能允许你在不将更改合并到 Git 项目的生产分支的情况下,在实时部署中预览应用程序的更改。使用 [TiDB Cloud Serverless 分支](/tidb-cloud/branch-overview.md),你可以为 Vercel 项目的每个分支创建一个新实例。这允许你在实时部署中预览应用程序更改,而不会影响你的生产数据。 +Vercel 的 [Preview Deployments](https://vercel.com/docs/deployments/preview-deployments) 功能允许你在不合并到 Git 项目的生产分支的情况下,在实时部署中预览应用变更。结合 [TiDB Cloud Serverless 分支](/tidb-cloud/branch-overview.md),你可以为 Vercel 项目的每个分支创建一个新的实例,从而在不影响生产数据的情况下预览应用变更。 > **注意:** > -> 目前,TiDB Cloud Serverless 分支仅支持[与 GitHub 仓库关联的 Vercel 项目](https://vercel.com/docs/deployments/git/vercel-for-github)。 +> 目前,TiDB Cloud Serverless 分支仅支持 [关联 GitHub 仓库的 Vercel 项目](https://vercel.com/docs/deployments/git/vercel-for-github)。 -要启用 TiDB Cloud Serverless 分支,你需要在 [TiDB Cloud Vercel 集成工作流程](#集成工作流程)中确保以下内容: +要启用 TiDB Cloud Serverless 分支功能,需要在 [TiDB Cloud Vercel 集成流程](#integration-workflow)中确保: -1. 选择**集群**作为你的连接类型。 -2. 启用**分支**以为预览环境创建新分支。 +1. 选择 **Cluster** 作为连接类型。 +2. 启用 **Branching**,为预览环境创建新分支。 -在你将更改推送到 Git 仓库后,Vercel 将触发预览部署。TiDB Cloud 集成将自动为 Git 分支创建一个 TiDB Cloud Serverless 分支并设置环境变量。详细步骤如下: +在你将变更推送到 Git 仓库后,Vercel 会触发预览部署。TiDB Cloud 集成会自动为该 Git 分支创建 TiDB Cloud Serverless 分支并设置环境变量。详细步骤如下: -1. 在你的 Git 仓库中创建一个新分支。 +1. 在你的 Git 仓库中创建新分支。 ```shell cd tidb-prisma-vercel-demo1 git checkout -b new-branch ``` -2. 添加一些更改并将更改推送到远程仓库。 -3. Vercel 将为新分支触发预览部署。 +2. 添加一些变更并推送到远程仓库。 +3. Vercel 会为新分支触发预览部署。 - ![Vercel 预览部署](/media/tidb-cloud/vercel/vercel-preview-deployment.png) + ![Vercel Preview_Deployment](/media/tidb-cloud/vercel/vercel-preview-deployment.png) - 1. 在部署过程中,TiDB Cloud 集成将自动创建一个与 Git 分支同名的 TiDB Cloud Serverless 分支。如果 TiDB Cloud Serverless 分支已存在,TiDB Cloud 集成将跳过此步骤。 + 1. 部署过程中,TiDB Cloud 集成会自动创建与 Git 分支同名的 TiDB Cloud Serverless 分支。如果该分支已存在,则跳过此步骤。 - ![TiDB Cloud 分支检查](/media/tidb-cloud/vercel/tidbcloud-branch-check.png) + ![TiDB_Cloud_Branch_Check](/media/tidb-cloud/vercel/tidbcloud-branch-check.png) - 2. TiDB Cloud Serverless 分支就绪后,TiDB Cloud 集成将在 Vercel 项目的预览部署中设置环境变量。 + 2. 当 TiDB Cloud Serverless 分支就绪后,TiDB Cloud 集成会在 Vercel 项目的预览部署中设置环境变量。 - ![预览环境变量](/media/tidb-cloud/vercel/preview-envs.png) + ![Preview_Envs](/media/tidb-cloud/vercel/preview-envs.png) - 3. TiDB Cloud 集成还将注册一个阻塞检查,以等待 TiDB Cloud Serverless 分支就绪。你可以手动重新运行检查。 -4. 检查通过后,你可以访问预览部署以查看更改。 + 3. TiDB Cloud 集成还会注册一个阻塞检查,等待 TiDB Cloud Serverless 分支就绪。你可以手动重新运行该检查。 +4. 检查通过后,你可以访问预览部署查看变更效果。 > **注意:** > -> 由于 Vercel 部署工作流程的限制,无法确保在部署中设置环境变量。在这种情况下,你需要重新部署。 +> 由于 Vercel 部署流程的限制,无法保证环境变量一定会在部署中设置。如遇此情况,请重新部署。 > **注意:** > -> 对于 TiDB Cloud 中的每个组织,默认情况下最多可以创建五个 TiDB Cloud Serverless 分支。为避免超过限制,你可以删除不再需要的 TiDB Cloud Serverless 分支。更多信息,请参阅[管理 TiDB Cloud Serverless 分支](/tidb-cloud/branch-manage.md)。 +> 每个 TiDB Cloud 组织默认最多可创建 5 个 TiDB Cloud Serverless 分支。为避免超出限制,可删除不再需要的分支。更多信息参见 [管理 TiDB Cloud Serverless 分支](/tidb-cloud/branch-manage.md)。 ## 通过手动设置环境变量连接 -
+
-1. 获取你的 TiDB 集群的连接信息。 +1. 获取 TiDB 集群的连接信息。 - 你可以从集群的连接对话框中获取连接信息。要打开对话框,请转到项目的[**集群**](https://tidbcloud.com/project/clusters)页面,点击目标集群的名称以进入其概览页面,然后点击右上角的**连接**。 + 你可以在集群的连接对话框中获取连接信息。进入项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群名称进入概览页,然后点击右上角的 **Connect**。 -2. 转到你的 Vercel 仪表板 > Vercel 项目 > **设置** > **环境变量**,然后根据你的 TiDB 集群的连接信息[声明每个环境变量值](https://vercel.com/docs/concepts/projects/environment-variables#declare-an-environment-variable)。 +2. 进入 Vercel 控制台 > Vercel 项目 > **Settings** > **Environment Variables**,根据 TiDB 集群的连接信息[声明每个环境变量的值](https://vercel.com/docs/concepts/projects/environment-variables#declare-an-environment-variable)。 - ![Vercel 环境变量](/media/tidb-cloud/vercel/integration-vercel-environment-variables.png) + ![Vercel Environment Variables](/media/tidb-cloud/vercel/integration-vercel-environment-variables.png) -这里我们以 Prisma 应用程序为例。以下是 Prisma schema 文件中针对 TiDB Cloud Serverless 集群的数据源设置: +这里以 Prisma 应用为例,以下是 TiDB Cloud Serverless 集群在 Prisma schema 文件中的 datasource 配置: ``` datasource db { @@ -235,23 +235,23 @@ datasource db { } ``` -在 Vercel 中,你可以按如下方式声明环境变量: +在 Vercel 中,你可以这样声明环境变量: - **Key** = `DATABASE_URL` - **Value** = `mysql://:@:/?sslaccept=strict` -你可以在 TiDB Cloud 控制台中获取 ``、``、``、`` 和 `` 的信息。 +你可以在 TiDB Cloud 控制台获取 ``、``、``、`` 和 `` 的信息。
-
+
-1. 如果你尚未创建数据应用及其端点,请按照[管理数据应用](/tidb-cloud/data-service-manage-data-app.md)和[管理端点](/tidb-cloud/data-service-manage-endpoint.md)中的步骤进行操作。 +1. 按照 [管理 Data APP](/tidb-cloud/data-service-manage-data-app.md) 和 [管理 Endpoint](/tidb-cloud/data-service-manage-endpoint.md) 的步骤创建 Data App 及其端点(如尚未创建)。 -2. 转到你的 Vercel 仪表板 > Vercel 项目 > **设置** > **环境变量**,然后根据你的数据应用的连接信息[声明每个环境变量值](https://vercel.com/docs/concepts/projects/environment-variables#declare-an-environment-variable)。 +2. 进入 Vercel 控制台 > Vercel 项目 > **Settings** > **Environment Variables**,根据 Data App 的连接信息[声明每个环境变量的值](https://vercel.com/docs/concepts/projects/environment-variables#declare-an-environment-variable)。 - ![Vercel 环境变量](/media/tidb-cloud/vercel/integration-vercel-environment-variables.png) + ![Vercel Environment Variables](/media/tidb-cloud/vercel/integration-vercel-environment-variables.png) - 在 Vercel 中,你可以按如下方式声明环境变量: + 在 Vercel 中,你可以这样声明环境变量: - **Key** = `DATA_APP_BASE_URL` - **Value** = `` @@ -260,7 +260,7 @@ datasource db { - **Key** = `DATA_APP_PRIVATE_KEY` - **Value** = `` - 你可以从 TiDB Cloud 控制台的[数据服务](https://tidbcloud.com/project/data-service)页面获取 ``、`` 和 `` 的信息。 + 你可以在 TiDB Cloud 控制台的 [Data Service](https://tidbcloud.com/project/data-service) 页面获取 ``、``、`` 的信息。
- + \ No newline at end of file diff --git a/tidb-cloud/integrate-tidbcloud-with-zapier.md b/tidb-cloud/integrate-tidbcloud-with-zapier.md index 8fe33f2d785a5..61c8d78faa988 100644 --- a/tidb-cloud/integrate-tidbcloud-with-zapier.md +++ b/tidb-cloud/integrate-tidbcloud-with-zapier.md @@ -1,123 +1,123 @@ --- -title: 将 TiDB Cloud 与 Zapier 集成 -summary: 了解如何通过 Zapier 将 TiDB Cloud 连接到 5000+ 个应用。 +title: 将 TiDB Cloud 集成到 Zapier +summary: 了解如何通过 Zapier 将 TiDB Cloud 连接到 5000+ 应用。 --- -# 将 TiDB Cloud 与 Zapier 集成 +# 将 TiDB Cloud 集成到 Zapier -[Zapier](https://zapier.com) 是一个无代码自动化工具,可让你轻松创建涉及数千个应用和服务的工作流。 +[Zapier](https://zapier.com) 是一款无代码自动化工具,可以让你轻松创建涉及数千个应用和服务的工作流。 -使用 Zapier 上的 [TiDB Cloud 应用](https://zapier.com/apps/tidb-cloud/integrations)可以让你: +在 Zapier 上使用 [TiDB Cloud app](https://zapier.com/apps/tidb-cloud/integrations) 可以让你: -- 使用 TiDB,一个兼容 MySQL 的 HTAP 数据库。无需本地构建。 -- 更轻松地管理你的 TiDB Cloud。 -- 将 TiDB Cloud 连接到 5000+ 个应用并自动化你的工作流。 +- 使用 TiDB,这是一款兼容 MySQL 的 HTAP 数据库。无需本地搭建。 +- 更便捷地管理你的 TiDB Cloud。 +- 将 TiDB Cloud 连接到 5000+ 应用,实现工作流自动化。 -本指南对 Zapier 上的 TiDB Cloud 应用进行高级介绍,并提供一个使用示例。 +本指南将对 Zapier 上的 TiDB Cloud app 进行高层次介绍,并提供一个使用示例。 ## 使用模板快速开始 -[Zap 模板](https://platform.zapier.com/partners/zap-templates)是预制的集成或 Zap,已预先选择了应用和核心字段,适用于公开可用的 Zapier 集成。 +[Zap Templates](https://platform.zapier.com/partners/zap-templates) 是为公开可用的 Zapier 集成预先选定应用和核心字段的现成集成或 Zap。 -在本节中,我们将使用**将新的 Github 全局事件添加到 TiDB 行**模板作为示例来创建工作流。在此工作流中,每当你的 GitHub 账户创建新的全局事件(在任何仓库中发生的任何 [GitHub 事件](https://docs.github.com/en/developers/webhooks-and-events/events/github-event-types))时,Zapier 都会在你的 TiDB Cloud 集群中添加一个新行。 +本节将以 **Add new Github global events to TiDB rows** 模板为例,创建一个工作流。在该工作流中,每当你的 GitHub 账户产生新的全局事件(任何 [GitHub event](https://docs.github.com/en/developers/webhooks-and-events/events/github-event-types) 发生在你或与你有关的任何仓库上),Zapier 会向你的 TiDB Cloud 集群添加一行新数据。 -### 前提条件 +### 前置条件 在开始之前,你需要: - 一个 [Zapier 账户](https://zapier.com/app/login)。 - 一个 [GitHub 账户](https://github.com/login)。 -- 一个 [TiDB Cloud 账户](https://tidbcloud.com/signup)和 TiDB Cloud 上的 TiDB Cloud Serverless 集群。更多详情,请参阅 [TiDB Cloud 快速入门](https://docs.pingcap.com/tidbcloud/tidb-cloud-quickstart#step-1-create-a-tidb-cluster)。 +- 一个 [TiDB Cloud 账户](https://tidbcloud.com/signup) 以及在 TiDB Cloud 上的 TiDB Cloud Serverless 集群。更多详情请参见 [TiDB Cloud 快速入门](https://docs.pingcap.com/tidbcloud/tidb-cloud-quickstart#step-1-create-a-tidb-cluster)。 ### 步骤 1:获取模板 -转到 [Zapier 上的 TiDB Cloud 应用](https://zapier.com/apps/tidb-cloud/integrations)。选择**将新的 Github 全局事件添加到 TiDB 行**模板,然后点击**试用**。之后你将进入编辑器页面。 +访问 [TiDB Cloud App on Zapier](https://zapier.com/apps/tidb-cloud/integrations)。选择 **Add new Github global events to TiDB rows** 模板并点击 **Try it**。随后你将进入编辑页面。 ### 步骤 2:设置触发器 -在编辑器页面,你可以看到触发器和操作。点击触发器进行设置。 +在编辑页面,你可以看到触发器和动作。点击触发器进行设置。 1. 选择应用和事件 - 模板已默认设置了应用和事件,因此你无需在此处进行任何操作。点击**继续**。 + 模板已默认设置好应用和事件,因此此处无需操作。点击 **Continue**。 2. 选择账户 - 选择你想要与 TiDB Cloud 连接的 GitHub 账户。你可以连接新账户或选择现有账户。设置完成后,点击**继续**。 + 选择你想要与 TiDB Cloud 连接的 GitHub 账户。你可以连接新账户或选择已有账户。设置完成后,点击 **Continue**。 3. 设置触发器 - 模板已默认设置了触发器。点击**继续**。 + 模板已默认设置好触发器。点击 **Continue**。 4. 测试触发器 - 点击**测试触发器**。如果触发器设置成功,你可以看到来自 GitHub 账户的新全局事件数据。点击**继续**。 + 点击 **Test trigger**。如果触发器设置成功,你可以看到来自 GitHub 账户的新全局事件数据。点击 **Continue**。 -### 步骤 3:设置 `在 TiDB Cloud 中查找表` 操作 +### 步骤 3:设置 `Find Table in TiDB Cloud` 动作 1. 选择应用和事件 - 保持模板设置的默认值 `查找表`。点击**继续**。 + 保持模板默认设置的 `Find Table`。点击 **Continue**。 2. 选择账户 - 1. 点击**登录**按钮,你将被重定向到新的登录页面。 - 2. 在登录页面,填写你的公钥和私钥。要获取 TiDB Cloud API 密钥,请按照 [TiDB Cloud API 文档](https://docs.pingcap.com/tidbcloud/api/v1beta#section/Authentication/API-Key-Management)中的说明操作。 - 3. 点击**继续**。 + 1. 点击 **Sign in** 按钮,你将被重定向到新的登录页面。 + 2. 在登录页面,填写你的公钥和私钥。获取 TiDB Cloud API key 的方法请参见 [TiDB Cloud API 文档](https://docs.pingcap.com/tidbcloud/api/v1beta#section/Authentication/API-Key-Management)。 + 3. 点击 **Continue**。 - ![账户](/media/tidb-cloud/zapier/zapier-tidbcloud-account.png) + ![Account](/media/tidb-cloud/zapier/zapier-tidbcloud-account.png) -3. 设置操作 +3. 设置动作 - 在此步骤中,你需要指定 TiDB Cloud 集群中的一个表来存储事件数据。如果你还没有表,可以通过此步骤创建一个。 + 在此步骤,你需要指定 TiDB Cloud 集群中的某个表来存储事件数据。如果你还没有表,可以在此步骤创建。 - 1. 从下拉列表中选择项目名称和集群名称。你的集群的连接信息将自动显示。 + 1. 在下拉列表中选择项目名称和集群名称。你的集群连接信息会自动显示。 - ![设置项目名称和集群名称](/media/tidb-cloud/zapier/zapier-set-up-tidbcloud-project-and-cluster.png) + ![Set up project name and cluster name](/media/tidb-cloud/zapier/zapier-set-up-tidbcloud-project-and-cluster.png) 2. 输入你的密码。 - 3. 从下拉列表中选择数据库。 + 3. 在下拉列表中选择数据库。 - ![设置数据库名称](/media/tidb-cloud/zapier/zapier-set-up-tidbcloud-databse.png) + ![Set up database name](/media/tidb-cloud/zapier/zapier-set-up-tidbcloud-databse.png) - Zapier 使用你输入的密码从 TiDB Cloud 查询数据库。如果在你的集群中找不到数据库,请重新输入密码并刷新页面。 + Zapier 会使用你输入的密码从 TiDB Cloud 查询数据库。如果在集群中未找到数据库,请重新输入密码并刷新页面。 - 4. 在**你想要搜索的表**框中,填入 `github_global_event`。如果表不存在,模板将使用以下 DDL 创建表。点击**继续**。 + 4. 在 **The table you want to search** 框中填写 `github_global_event`。如果该表不存在,模板会使用以下 DDL 创建表。点击 **Continue**。 - ![创建表 DDL](/media/tidb-cloud/zapier/zapier-tidbcloud-create-table-ddl.png) + ![The create table DDL](/media/tidb-cloud/zapier/zapier-tidbcloud-create-table-ddl.png) -4. 测试操作 +4. 测试动作 - 点击**测试操作**,Zapier 将创建表。你也可以跳过测试,表将在此工作流首次运行时创建。 + 点击 **Test action**,Zapier 会创建该表。你也可以跳过测试,首次运行该工作流时表会被创建。 -### 步骤 4:设置 `在 TiDB Cloud 中创建行` 操作 +### 步骤 4:设置 `Create Row in TiDB Cloud` 动作 1. 选择应用和事件 - 保持模板设置的默认值。点击**继续**。 + 保持模板默认设置。点击 **Continue**。 2. 选择账户 - 选择你在设置 `在 TiDB Cloud 中查找表` 操作时选择的账户。点击**继续**。 + 选择你在设置 `Find Table in TiDB Cloud` 动作时选择的账户。点击 **Continue**。 - ![选择账户](/media/tidb-cloud/zapier/zapier-tidbcloud-choose-account.png) + ![Choose account](/media/tidb-cloud/zapier/zapier-tidbcloud-choose-account.png) -3. 设置操作 +3. 设置动作 - 1. 按照前面的步骤填写**项目名称**、**集群名称**、**TiDB 密码**和**数据库名称**。 + 1. 按照上一步填写 **Project Name**、**Cluster Name**、**TiDB Password** 和 **Database Name**。 - 2. 在**表名**中,从下拉列表中选择 **github_global_event** 表。表的列将显示出来。 + 2. 在 **Table Name** 中,从下拉列表选择 **github_global_event** 表。表的列会显示出来。 - ![表列](/media/tidb-cloud/zapier/zapier-set-up-tidbcloud-columns.png) + ![Table columns](/media/tidb-cloud/zapier/zapier-set-up-tidbcloud-columns.png) - 3. 在**列**框中,从触发器中选择相应的数据。填写所有列,然后点击**继续**。 + 3. 在 **Columns** 框中,从触发器中选择对应的数据。填写所有列后,点击 **Continue**。 - ![填写列](/media/tidb-cloud/zapier/zapier-fill-in-tidbcloud-triggers-data.png) + ![Fill in Columns](/media/tidb-cloud/zapier/zapier-fill-in-tidbcloud-triggers-data.png) -4. 测试操作 +4. 测试动作 - 点击**测试操作**在表中创建新行。如果你检查你的 TiDB Cloud 集群,你可以发现数据已成功写入。 + 点击 **Test action**,即可在表中创建一行新数据。如果你检查 TiDB Cloud 集群,可以发现数据已成功写入。 ```sql mysql> SELECT * FROM test.github_global_event; @@ -131,106 +131,106 @@ summary: 了解如何通过 Zapier 将 TiDB Cloud 连接到 5000+ 个应用。 ### 步骤 5:发布你的 zap -点击**发布**来发布你的 zap。你可以在[主页](https://zapier.com/app/zaps)上看到 zap 正在运行。 +点击 **Publish** 发布你的 zap。你可以在 [主页](https://zapier.com/app/zaps) 看到 zap 正在运行。 -![发布 zap](/media/tidb-cloud/zapier/zapier-tidbcloud-publish.png) +![Publish the zap](/media/tidb-cloud/zapier/zapier-tidbcloud-publish.png) -现在,这个 zap 将自动将你的 GitHub 账户的所有全局事件记录到 TiDB Cloud 中。 +现在,该 zap 会自动将你 GitHub 账户的所有全局事件记录到 TiDB Cloud。 -## 触发器和操作 +## 触发器与动作 -[触发器和操作](https://zapier.com/how-it-works)是 Zapier 中的关键概念。通过组合不同的触发器和操作,你可以创建各种自动化工作流。 +[Triggers and actions](https://zapier.com/how-it-works) 是 Zapier 的核心概念。通过组合不同的触发器和动作,你可以创建各种自动化工作流。 -本节介绍 Zapier 上的 TiDB Cloud 应用提供的触发器和操作。 +本节介绍 TiDB Cloud App 在 Zapier 上提供的触发器和动作。 ### 触发器 -下表列出了 TiDB Cloud 应用支持的触发器。 +下表列出了 TiDB Cloud App 支持的触发器。 -| 触发器 | 描述 | +| Trigger | Description | | ---------------------- |-----------------------------------------------------------------------------| -| 新集群 | 在创建新集群时触发。 | -| 新表 | 在创建新表时触发。 | -| 新行 | 在创建新行时触发。仅获取最近的 10000 个新行。 | -| 新行(自定义查询) | 在你提供的自定义查询返回新行时触发。 | +| New Cluster | 当新集群被创建时触发。 | +| New Table | 当新表被创建时触发。 | +| New Row | 当新行被创建时触发。仅获取最近 10000 条新行。 | +| New Row (Custom Query) | 当你提供的自定义查询返回新行时触发。 | -### 操作 +### 动作 -下表列出了 TiDB Cloud 应用支持的操作。注意,某些操作需要额外的资源,你需要在使用操作之前准备相应的资源。 +下表列出了 TiDB Cloud App 支持的动作。注意部分动作需要额外资源,你需要提前准备好相应资源。 -| 操作 | 描述 | 资源 | +| Action | Description | Resource | |---|---|---| -| 查找集群 | 查找现有的 TiDB Cloud Serverless 或 TiDB Cloud Dedicated 集群。 | 无 | -| 创建集群 | 创建新集群。仅支持创建 TiDB Cloud Serverless 集群。 | 无 | -| 查找数据库 | 查找现有数据库。 | TiDB Cloud Serverless 集群 | -| 创建数据库 | 创建新数据库。 | TiDB Cloud Serverless 集群 | -| 查找表 | 查找现有表。 | TiDB Cloud Serverless 集群和数据库 | -| 创建表 | 创建新表。 | TiDB Cloud Serverless 集群和数据库 | -| 创建行 | 创建新行。 | TiDB Cloud Serverless 集群、数据库和表 | -| 更新行 | 更新现有行。 | TiDB Cloud Serverless 集群、数据库和表 | -| 查找行 | 通过查找列在表中查找行。 | TiDB Cloud Serverless 集群、数据库和表 | -| 查找行(自定义查询) | 通过你提供的自定义查询在表中查找行。 | TiDB Cloud Serverless 集群、数据库和表 | +| Find Cluster | 查找已存在的 TiDB Cloud Serverless 或 TiDB Cloud Dedicated 集群。 | None | +| Create Cluster | 创建新集群。仅支持创建 TiDB Cloud Serverless 集群。 | None | +| Find Database | 查找已存在的数据库。 | 一个 TiDB Cloud Serverless 集群 | +| Create Database | 创建新数据库。 | 一个 TiDB Cloud Serverless 集群 | +| Find Table | 查找已存在的表。 | 一个 TiDB Cloud Serverless 集群和一个数据库 | +| Create Table | 创建新表。 | 一个 TiDB Cloud Serverless 集群和一个数据库 | +| Create Row | 创建新行。 | 一个 TiDB Cloud Serverless 集群、一个数据库和一个表 | +| Update Row | 更新已存在的行。 | 一个 TiDB Cloud Serverless 集群、一个数据库和一个表 | +| Find Row | 通过查找列在表中查找行。 | 一个 TiDB Cloud Serverless 集群、一个数据库和一个表 | +| Find Row (Custom Query) | 通过你提供的自定义查询在表中查找行。 | 一个 TiDB Cloud Serverless 集群、一个数据库和一个表 | -## TiDB Cloud 应用模板 +## TiDB Cloud App 模板 -TiDB Cloud 在 Zapier 上提供了一些可直接使用的模板。你可以在 [TiDB Cloud 应用](https://zapier.com/apps/tidb-cloud/integrations)页面找到所有模板。 +TiDB Cloud 提供了一些可直接在 Zapier 使用的模板。你可以在 [TiDB Cloud App](https://zapier.com/apps/tidb-cloud/integrations) 页面找到所有模板。 以下是一些示例: -- [在 Google Sheets 中复制新的 TiDB Cloud 行](https://zapier.com/apps/google-sheets/integrations/tidb-cloud/1134881/duplicate-new-tidb-cloud-rows-in-google-sheets) -- [从新的自定义 TiDB 查询通过 Gmail 发送邮件](https://zapier.com/apps/gmail/integrations/tidb-cloud/1134903/send-emails-via-gmail-from-new-custom-tidb-queries) -- [从新捕获的 webhook 向 TiDB Cloud 添加行](https://zapier.com/apps/tidb-cloud/integrations/webhook/1134955/add-rows-to-tidb-cloud-from-newly-caught-webhooks) -- [将新的 Salesforce 联系人存储在 TiDB 行中](https://zapier.com/apps/salesforce/integrations/tidb-cloud/1134923/store-new-salesforce-contacts-on-tidb-rows) -- [为带有简历的新 Gmail 邮件创建 TiDB 行并发送直接 Slack 通知](https://zapier.com/apps/gmail/integrations/slack/1135456/create-tidb-rows-for-new-gmail-emails-with-resumes-and-send-direct-slack-notifications) +- [Duplicate new TiDB Cloud rows in Google Sheets](https://zapier.com/apps/google-sheets/integrations/tidb-cloud/1134881/duplicate-new-tidb-cloud-rows-in-google-sheets)。 +- [Send emails via Gmail from new custom TiDB queries](https://zapier.com/apps/gmail/integrations/tidb-cloud/1134903/send-emails-via-gmail-from-new-custom-tidb-queries)。 +- [Add rows to TiDB Cloud from newly caught webhooks](https://zapier.com/apps/tidb-cloud/integrations/webhook/1134955/add-rows-to-tidb-cloud-from-newly-caught-webhooks)。 +- [Store new Salesforce contacts on TiDB rows](https://zapier.com/apps/salesforce/integrations/tidb-cloud/1134923/store-new-salesforce-contacts-on-tidb-rows)。 +- [Create TiDB rows for new Gmail emails with resumes and send direct Slack notifications](https://zapier.com/apps/gmail/integrations/slack/1135456/create-tidb-rows-for-new-gmail-emails-with-resumes-and-send-direct-slack-notifications) ## 常见问题 ### 如何在 Zapier 中设置 TiDB Cloud 账户? -Zapier 需要你的 **TiDB Cloud API 密钥**来连接你的 TiDB Cloud 账户。Zapier 不需要你的 TiDB Cloud 登录账户。 +Zapier 需要你的 **TiDB Cloud API key** 来连接 TiDB Cloud 账户。Zapier 不需要你的 TiDB Cloud 登录账户。 -要获取你的 TiDB Cloud API 密钥,请按照 [TiDB Cloud API 文档](https://docs.pingcap.com/tidbcloud/api/v1beta#section/Authentication/API-Key-Management)操作。 +获取 TiDB Cloud API key 的方法请参见 [TiDB Cloud API 文档](https://docs.pingcap.com/tidbcloud/api/v1beta#section/Authentication/API-Key-Management)。 -### TiDB Cloud 触发器如何执行去重? +### TiDB Cloud 触发器如何去重? Zapier 触发器可以通过轮询 API 调用定期检查新数据(间隔取决于你的 Zapier 计划)。 -TiDB Cloud 触发器提供了一个返回大量结果的轮询 API 调用。然而,大多数结果都已被 Zapier 见过,也就是说,大多数结果都是重复的。 +TiDB Cloud 触发器提供了一个轮询 API 调用,会返回大量结果。但大多数结果 Zapier 之前已经见过,即大多数结果是重复的。 -由于我们不希望在 API 中的项目在多个不同的轮询中存在时多次触发操作,TiDB Cloud 触发器使用 `id` 字段对数据进行去重。 +由于我们不希望当某个项目在你的 API 中出现在多个不同轮询中时多次触发动作,TiDB Cloud 触发器会用 `id` 字段进行数据去重。 -`新集群`和`新表`触发器只是简单地使用 `cluster_id` 或 `table_id` 作为 `id` 字段来进行去重。你无需为这两个触发器做任何事情。 +`New Cluster` 和 `New Table` 触发器直接用 `cluster_id` 或 `table_id` 作为 `id` 字段进行去重。对于这两个触发器你无需做任何操作。 -**新行触发器** +**New Row Trigger** -`新行`触发器在每次获取时限制 10,000 个结果。因此,如果某些新行不包含在这 10,000 个结果中,它们就无法触发 Zapier。 +`New Row` 触发器每次最多获取 10000 条结果。因此,如果某些新行未包含在这 10000 条结果中,则无法触发 Zapier。 -避免这种情况的一种方法是在触发器中指定 `Order By` 配置。例如,一旦你按创建时间对行进行排序,新行将始终包含在 10,000 个结果中。 +避免这种情况的一种方式是在触发器中指定 `Order By` 配置。例如,一旦你按创建时间对行排序,新行总会包含在这 10000 条结果中。 -`新行`触发器还使用灵活的策略生成 `id` 字段来进行去重。触发器按以下顺序生成 `id` 字段: +`New Row` 触发器还采用灵活策略生成 `id` 字段进行去重。生成 `id` 字段的顺序如下: -1. 如果结果包含 `id` 列,使用 `id` 列。 -2. 如果你在触发器配置中指定了 `去重键`,使用 `去重键`。 -3. 如果表有主键,使用主键。如果有多个主键,使用第一列。 -4. 如果表有唯一键,使用唯一键。 +1. 如果结果包含 `id` 列,则使用 `id` 列。 +2. 如果你在触发器配置中指定了 `Dedupe Key`,则使用 `Dedupe Key`。 +3. 如果表有主键,则使用主键。如果有多个主键,使用第一个列。 +4. 如果表有唯一键,则使用唯一键。 5. 使用表的第一列。 -**新行(自定义查询)触发器** +**New Row (Custom Query) Trigger** -`新行(自定义查询)`触发器在每次获取时限制 1,000,000 个结果。1,000,000 是一个很大的数字,设置它只是为了保护整个系统。建议你的查询包含 `ORDER BY` 和 `LIMIT`。 +`New Row (Custom Query)` 触发器每次最多获取 1,000,000 条结果。1,000,000 是一个很大的数字,仅用于保护整个系统。建议你的查询包含 `ORDER BY` 和 `LIMIT`。 -要执行去重,你的查询结果必须有一个唯一的 id 字段。否则,你将收到 `你必须返回带有 id 字段的结果` 错误。 +为了去重,你的查询结果必须有唯一的 id 字段。否则会收到 `You must return the results with id field` 错误。 -确保你的自定义查询在 30 秒内执行完成。否则,你将收到超时错误。 +确保你的自定义查询在 30 秒内执行完毕。否则会收到超时错误。 -### 如何使用 `查找或创建` 操作? +### 如何使用 `find or create` 动作? -`查找或创建`操作使你能够在资源不存在时创建它。以下是一个示例: +`Find or create` 动作允许你在资源不存在时创建资源。示例如下: -1. 选择 `查找表` 操作 +1. 选择 `Find Table` 动作 -2. 在`设置操作`步骤中,勾选 `如果表不存在则创建 TiDB Cloud 表?` 框以启用 `查找并创建`。 +2. 在 `set up action` 步骤,勾选 `Create TiDB Cloud Table if it doesn’t exist yet?` 以启用 `find and create`。 - ![查找并创建](/media/tidb-cloud/zapier/zapier-tidbcloud-find-and-create.png) + ![Find and create](/media/tidb-cloud/zapier/zapier-tidbcloud-find-and-create.png) -此工作流将在表不存在时创建表。注意,如果你测试你的操作,表将直接创建。 +该工作流会在表不存在时自动创建表。注意,如果你测试动作,表会被直接创建。 \ No newline at end of file diff --git a/tidb-cloud/key-concepts.md b/tidb-cloud/key-concepts.md index 8010339754e27..bf5adda77d7f1 100644 --- a/tidb-cloud/key-concepts.md +++ b/tidb-cloud/key-concepts.md @@ -1,59 +1,59 @@ --- -title: 关键概念概述 -summary: 了解 TiDB Cloud 中的关键概念。 +title: 关键概念概览 +summary: 了解 TiDB Cloud 的关键概念。 --- -# 关键概念概述 +# 关键概念概览 -本文档提供了 [TiDB Cloud](https://www.pingcap.com/tidb-cloud/) 中关键概念的概述。理解这些概念有助于你更好地使用 TiDB Cloud 的功能和特性。 +本文档概述了 [TiDB Cloud](https://www.pingcap.com/tidb-cloud/) 的关键概念。理解这些概念有助于你更好地使用 TiDB Cloud 的功能和能力。 ## 架构 -TiDB Cloud 基于云原生分布式架构构建,实现了计算与存储分离,从而支持弹性扩展和高可用性。[了解更多 TiDB Cloud 架构信息](/tidb-cloud/architecture-concepts.md)。 +TiDB Cloud 基于云原生分布式架构构建,实现了计算与存储分离,支持弹性扩展和高可用性。[了解更多 TiDB Cloud 架构相关内容](/tidb-cloud/architecture-concepts.md)。 ## 数据库模式 -TiDB Cloud 使你能够使用数据库、表、列、索引和约束等对象来组织和构建数据。它还支持临时表、向量索引和缓存表等高级功能。[了解更多数据库模式信息](/tidb-cloud/database-schema-concepts.md)。 +TiDB Cloud 允许你通过数据库、数据表、列、索引和约束等对象来组织和结构化你的数据。同时还支持临时表、向量索引和缓存表等高级特性。[了解更多数据库模式相关内容](/tidb-cloud/database-schema-concepts.md)。 ## 事务 -TiDB 提供完整的分布式事务支持,其模型在 [Google Percolator](https://research.google.com/pubs/pub36726.html) 的基础上进行了一些优化。[了解更多事务信息](/tidb-cloud/transaction-concepts.md)。 +TiDB 提供完整的分布式事务,并在 [Google Percolator](https://research.google.com/pubs/pub36726.html) 的基础上进行了部分优化。[了解更多事务相关内容](/tidb-cloud/transaction-concepts.md)。 ## SQL -TiDB 高度兼容 MySQL 协议以及 MySQL 5.7 和 MySQL 8.0 的常用功能和语法。[了解更多 TiDB Cloud 中的 SQL 信息](/tidb-cloud/sql-concepts.md)。 +TiDB 高度兼容 MySQL 协议,以及 MySQL 5.7 和 MySQL 8.0 的常用特性和语法。[了解更多 TiDB Cloud 中的 SQL 相关内容](/tidb-cloud/sql-concepts.md)。 -## AI 功能 +## AI 特性 -TiDB Cloud 中的 AI 功能使你能够充分利用先进技术进行数据探索、搜索和集成。[了解更多 AI 功能信息](/tidb-cloud/ai-feature-concepts.md)。 +TiDB Cloud 的 AI 特性使你能够充分利用先进技术进行数据探索、检索和集成。[了解更多 AI 特性相关内容](/tidb-cloud/ai-feature-concepts.md)。 ## 数据服务(Beta) -数据服务使你能够通过自定义 API 端点使用 HTTPS 请求访问 TiDB Cloud 数据。[了解更多数据服务信息](/tidb-cloud/data-service-concepts.md)。 +数据服务允许你通过自定义 API 端点,以 HTTPS 请求方式访问 TiDB Cloud 数据。[了解更多数据服务相关内容](/tidb-cloud/data-service-concepts.md)。 ## 可扩展性 -TiDB Cloud Dedicated 让你可以根据数据量或工作负载的变化分别调整其计算和存储资源。[了解更多可扩展性信息](/tidb-cloud/scalability-concepts.md)。 +TiDB Cloud Dedicated 允许你分别调整计算和存储资源,以适应数据量或工作负载的变化。[了解更多可扩展性相关内容](/tidb-cloud/scalability-concepts.md)。 ## 高可用性 -TiDB Cloud 在 TiDB Cloud Serverless 和 TiDB Cloud Dedicated 集群中都确保高可用性: +TiDB Cloud 在 TiDB Cloud Serverless 和 TiDB Cloud Dedicated 集群中都能确保高可用性: -- [TiDB Cloud Serverless 中的高可用性](/tidb-cloud/serverless-high-availability.md) -- [TiDB Cloud Dedicated 中的高可用性](/tidb-cloud/high-availability-with-multi-az.md) +- [TiDB Cloud Serverless 的高可用性](/tidb-cloud/serverless-high-availability.md) +- [TiDB Cloud Dedicated 的高可用性](/tidb-cloud/high-availability-with-multi-az.md) ## 监控 -TiDB Cloud 为集群性能和健康状况提供全面的监控功能。[了解更多监控信息](/tidb-cloud/monitoring-concepts.md)。 +TiDB Cloud 提供了全面的集群性能和健康状况监控能力。[了解更多监控相关内容](/tidb-cloud/monitoring-concepts.md)。 ## 数据流 -TiDB Cloud 允许你将数据变更从 TiDB 集群流式传输到 Kafka、MySQL 和对象存储等其他系统。[了解更多数据流信息](/tidb-cloud/data-streaming-concepts.md)。 +TiDB Cloud 允许你将 TiDB 集群中的数据变更流式传输到其他系统,如 Kafka、MySQL 和对象存储。[了解更多数据流相关内容](/tidb-cloud/data-streaming-concepts.md)。 -## 备份和恢复 +## 备份与恢复 -TiDB Cloud 提供自动备份解决方案和时间点恢复(PITR)功能。[了解更多备份和恢复信息](/tidb-cloud/backup-and-restore-concepts.md)。 +TiDB Cloud 提供自动化备份方案和时间点恢复(PITR)能力。[了解更多备份与恢复相关内容](/tidb-cloud/backup-and-restore-concepts.md)。 -## 安全性 +## 安全 -TiDB Cloud 提供了一个强大而灵活的安全框架,旨在保护数据、执行访问控制并满足现代合规标准。[了解更多安全性信息](/tidb-cloud/security-concepts.md)。 +TiDB Cloud 提供强大且灵活的安全框架,旨在保护数据、实施访问控制,并满足现代合规标准。[了解更多安全相关内容](/tidb-cloud/security-concepts.md)。 \ No newline at end of file diff --git a/tidb-cloud/limited-sql-features.md b/tidb-cloud/limited-sql-features.md index 3c89ea4c5cc2b..21315e606fa18 100644 --- a/tidb-cloud/limited-sql-features.md +++ b/tidb-cloud/limited-sql-features.md @@ -1,17 +1,17 @@ --- -title: TiDB Cloud 上的受限 SQL 功能 -summary: 了解 TiDB Cloud 上的受限 SQL 功能。 +title: TiDB Cloud 上受限的 SQL 功能 +summary: 了解 TiDB Cloud 上受限的 SQL 功能。 --- -# TiDB Cloud 上的受限 SQL 功能 +# TiDB Cloud 上受限的 SQL 功能 -TiDB Cloud 可以支持几乎所有 TiDB 支持的工作负载,但在 TiDB 自托管版本和 TiDB Cloud Dedicated/Serverless 版本之间存在一些功能差异。本文描述了 TiDB Cloud 上的 SQL 功能限制。我们正在不断填补 TiDB 自托管版本和 TiDB Cloud Dedicated/Serverless 版本之间的功能差距。如果你需要这些差距中的功能或能力,请[联系我们](/tidb-cloud/tidb-cloud-support.md)提出功能请求。 +TiDB Cloud 支持几乎所有 TiDB 支持的工作负载,但 TiDB 自建版与 TiDB Cloud 专属版/Serverless 之间存在一些功能差异。本文档描述了 TiDB Cloud 上 SQL 功能的限制。我们正在不断弥补 TiDB 自建版与 TiDB Cloud 专属版/Serverless 之间的功能差距。如果你需要这些尚未支持的功能或能力,请[联系我们](/tidb-cloud/tidb-cloud-support.md)提交功能需求。 ## 语句 -### 放置和范围管理 +### 副本放置与范围管理 -| 语句 | TiDB Cloud Dedicated | TiDB Cloud Serverless | +| 语句 | TiDB Cloud 专属版 | TiDB Cloud Serverless | |:-|:-|:-| | `ALTER PLACEMENT POLICY` | 支持 | 不支持 [^1] | | `CREATE PLACEMENT POLICY` | 支持 | 不支持 [^1] | @@ -25,7 +25,7 @@ TiDB Cloud 可以支持几乎所有 TiDB 支持的工作负载,但在 TiDB 自 ### 资源组 -| 语句 | TiDB Cloud Dedicated | TiDB Cloud Serverless | +| 语句 | TiDB Cloud 专属版 | TiDB Cloud Serverless | |:-|:-|:-| | `ALTER RESOURCE GROUP` | 支持 | 不支持 [^2] | | `CALIBRATE RESOURCE` | 不支持 | 不支持 [^2] | @@ -36,19 +36,19 @@ TiDB Cloud 可以支持几乎所有 TiDB 支持的工作负载,但在 TiDB 自 ### 其他 -| 语句 | TiDB Cloud Dedicated | TiDB Cloud Serverless | +| 语句 | TiDB Cloud 专属版 | TiDB Cloud Serverless | |:-|:-|:-| | `BACKUP` | 支持 | 不支持 [^3] | | `SHOW BACKUPS` | 支持 | 不支持 [^3] | | `RESTORE` | 支持 | 不支持 [^3] | | `SHOW RESTORES` | 支持 | 不支持 [^3] | -| `ADMIN RESET TELEMETRY_ID` | 支持 | TiDB Cloud Serverless 不支持遥测。 | +| `ADMIN RESET TELEMETRY_ID` | 支持 | TiDB Cloud Serverless 不支持 Telemetry。 | | `ADMIN SHOW TELEMETRY` | 不支持 [^4] | 不支持 [^4] | | `ADMIN SHOW SLOW` | 支持 | 不支持 [^5] | | `ADMIN PLUGINS ENABLE` | 支持 | 不支持 [^8] | | `ADMIN PLUGINS DISABLE` | 支持 | 不支持 [^8] | -| `ALTER INSTANCE RELOAD TLS` | 支持 | TiDB Cloud Serverless 自动刷新 TLS 证书。 | -| `LOAD DATA INFILE` | 支持 `LOAD DATA LOCAL INFILE` 和从 Amazon S3 或 Google Cloud Storage 导入的 `LOAD DATA INFILE` | 仅支持 `LOAD DATA LOCAL INFILE` | +| `ALTER INSTANCE RELOAD TLS` | 支持 | TiDB Cloud Serverless 会自动刷新 TLS 证书。 | +| `LOAD DATA INFILE` | 支持 `LOAD DATA LOCAL INFILE`,以及从 Amazon S3 或 Google Cloud Storage 加载 `LOAD DATA INFILE` | 仅支持 `LOAD DATA LOCAL INFILE` | | `CHANGE DRAINER` | 不支持 [^7] | 不支持 [^7] | | `CHANGE PUMP` | 不支持 [^7] | 不支持 [^7] | | `FLASHBACK CLUSTER` | 支持 | 不支持 [^3] | @@ -60,17 +60,17 @@ TiDB Cloud 可以支持几乎所有 TiDB 支持的工作负载,但在 TiDB 自 | `SHOW PLUGINS` | 支持 | 不支持 [^8] | | `SHOW PUMP STATUS` | 不支持 [^7] | 不支持 [^7] | | `SHUTDOWN` | 不支持 [^4] | 不支持 [^4] | -| `PLAN REPLAYER` | 支持 | 以不同方式支持[^11] | +| `PLAN REPLAYER` | 支持 | 以不同方式支持 [^11] | -## 函数和运算符 +## 函数与运算符 -| 函数和运算符 | TiDB Cloud Dedicated | TiDB Cloud Serverless | +| 函数与运算符 | TiDB Cloud 专属版 | TiDB Cloud Serverless | |:-|:-|:-| -| `SLEEP` | 无限制 | [`SLEEP()` 函数](https://docs.pingcap.com/tidbcloud/miscellaneous-functions)有限制,最大睡眠时间为 300 秒。| +| `SLEEP` | 无限制 | [`SLEEP()` 函数](https://docs.pingcap.com/tidbcloud/miscellaneous-functions) 有限制,最长仅支持 300 秒的休眠时间。| ## 系统表 -| 数据库 | 表 | TiDB Cloud Dedicated | TiDB Cloud Serverless | +| 数据库 | 表 | TiDB Cloud 专属版 | TiDB Cloud Serverless | |:-|:-|:-|:-| | `information_schema` | `ATTRIBUTES` | 支持 | 不支持 [^1] | | `information_schema` | `CLUSTER_CONFIG` | 不支持 [^4] | 不支持 [^4] | @@ -94,7 +94,6 @@ TiDB Cloud 可以支持几乎所有 TiDB 支持的工作负载,但在 TiDB 自 | `information_schema` | `SLOW_QUERY` | 支持 | 不支持 [^5] | | `information_schema` | `STATEMENTS_SUMMARY` | 支持 | 不支持 [^6] | | `information_schema` | `STATEMENTS_SUMMARY_EVICTED` | 支持 | 不支持 [^6] | -| `information_schema` | `STATEMENTS_SUMMARY_HISTORY` | 支持 | 不支持 [^6] | | `information_schema` | `TIDB_HOT_REGIONS` | 不支持 [^4] | 不支持 [^4] | | `information_schema` | `TIDB_HOT_REGIONS_HISTORY` | 支持 | 不支持 [^1] | | `information_schema` | `TIDB_SERVERS_INFO` | 支持 | 不支持 [^1] | @@ -122,7 +121,7 @@ TiDB Cloud 可以支持几乎所有 TiDB 支持的工作负载,但在 TiDB 自 ## 系统变量 -| 变量 | TiDB Cloud Dedicated | TiDB Cloud Serverless | +| 变量 | TiDB Cloud 专属版 | TiDB Cloud Serverless | |:-|:-|:-| | `datadir` | 无限制 | 不支持 [^1] | | `interactive_timeout` | 无限制 | 只读 [^10] | @@ -132,6 +131,7 @@ TiDB Cloud 可以支持几乎所有 TiDB 支持的工作负载,但在 TiDB 自 | `require_secure_transport` | 不支持 [^12] | 只读 [^10] | | `skip_name_resolve` | 无限制 | 只读 [^10] | | `sql_log_bin` | 无限制 | 只读 [^10] | +| `tidb_analyze_skip_column_types` | 无限制 | 只读 [^10] | | `tidb_cdc_write_source` | 无限制 | 只读 [^10] | | `tidb_check_mb4_value_in_utf8` | 不支持 [^4] | 不支持 [^4] | | `tidb_config` | 不支持 [^4] | 不支持 [^4] | @@ -210,24 +210,24 @@ TiDB Cloud 可以支持几乎所有 TiDB 支持的工作负载,但在 TiDB 自 | `tidb_wait_split_region_timeout` | 无限制 | 只读 [^10] | | `txn_scope` | 无限制 | 只读 [^10] | | `validate_password.enable` | 无限制 | 始终启用 [^9] | -| `validate_password.length` | 无限制 | 至少 `8` [^9] | -| `validate_password.mixed_case_count` | 无限制 | 至少 `1` [^9] | -| `validate_password.number_count` | 无限制 | 至少 `1` [^9] | -| `validate_password.policy` | 无限制 | 只能是 `MEDIUM` 或 `STRONG` [^9] | -| `validate_password.special_char_count` | 无限制 | 至少 `1` [^9] | +| `validate_password.length` | 无限制 | 至少为 `8` [^9] | +| `validate_password.mixed_case_count` | 无限制 | 至少为 `1` [^9] | +| `validate_password.number_count` | 无限制 | 至少为 `1` [^9] | +| `validate_password.policy` | 无限制 | 只能为 `MEDIUM` 或 `STRONG` [^9] | +| `validate_password.special_char_count` | 无限制 | 至少为 `1` [^9] | | `wait_timeout` | 无限制 | 只读 [^10] | -[^1]: TiDB Cloud Serverless 不支持配置数据放置。 +[^1]: TiDB Cloud Serverless 不支持数据副本放置相关配置。 -[^2]: TiDB Cloud Serverless 不支持配置资源组。 +[^2]: TiDB Cloud Serverless 不支持资源组相关配置。 -[^3]: 要在 TiDB Cloud Serverless 上执行[备份和恢复](/tidb-cloud/backup-and-restore-serverless.md)操作,你可以使用 TiDB Cloud 控制台。 +[^3]: 在 TiDB Cloud Serverless 上进行 [备份与恢复](/tidb-cloud/backup-and-restore-serverless.md) 操作时,你可以使用 TiDB Cloud 控制台。 -[^4]: 该功能在[安全增强模式(SEM)](/system-variables.md#tidb_enable_enhanced_security)下不可用。 +[^4]: 该功能在 [安全增强模式(SEM)](/system-variables.md#tidb_enable_enhanced_security) 下不可用。 -[^5]: 要在 TiDB Cloud Serverless 上跟踪[慢查询](/tidb-cloud/tune-performance.md#slow-query),你可以使用 TiDB Cloud 控制台。 +[^5]: 在 TiDB Cloud Serverless 上追踪 [慢查询](/tidb-cloud/tune-performance.md#slow-query) 时,你可以使用 TiDB Cloud 控制台。 -[^6]: 要在 TiDB Cloud Serverless 上执行[语句分析](/tidb-cloud/tune-performance.md#statement-analysis),你可以使用 TiDB Cloud 控制台。 +[^6]: 在 TiDB Cloud Serverless 上进行 [SQL 语句分析](/tidb-cloud/tune-performance.md#statement-analysis) 时,你可以使用 TiDB Cloud 控制台。 [^7]: TiDB Cloud 不支持 Drainer 和 Pump。 @@ -237,6 +237,6 @@ TiDB Cloud 可以支持几乎所有 TiDB 支持的工作负载,但在 TiDB 自 [^10]: 该变量在 TiDB Cloud Serverless 上为只读。 -[^11]: TiDB Cloud Serverless 不支持像[示例](https://docs.pingcap.com/tidb/stable/sql-plan-replayer#examples-of-exporting-cluster-information)中那样通过 `${tidb-server-status-port}` 下载由 `PLAN REPLAYER` 导出的文件。相反,TiDB Cloud Serverless 会生成一个[预签名 URL](https://docs.aws.amazon.com/AmazonS3/latest/userguide/ShareObjectPreSignedURL.html)供你下载文件。请注意,此 URL 在生成后 10 小时内有效。 +[^11]: TiDB Cloud Serverless 不支持通过 `${tidb-server-status-port}` 下载 `PLAN REPLAYER` 导出的文件,如[示例](https://docs.pingcap.com/tidb/stable/sql-plan-replayer#examples-of-exporting-cluster-information)所示。相反,TiDB Cloud Serverless 会为你生成一个 [预签名 URL](https://docs.aws.amazon.com/AmazonS3/latest/userguide/ShareObjectPreSignedURL.html) 用于下载文件。请注意,该 URL 在生成后 10 小时内有效。 -[^12]: 不支持。为 TiDB Cloud Dedicated 集群启用 `require_secure_transport` 将导致 SQL 客户端连接失败。 +[^12]: 不支持。在 TiDB Cloud 专属集群上启用 `require_secure_transport` 会导致 SQL 客户端连接失败。 \ No newline at end of file diff --git a/tidb-cloud/manage-serverless-spend-limit.md b/tidb-cloud/manage-serverless-spend-limit.md index 29fc1e33facd1..eed914d16f720 100644 --- a/tidb-cloud/manage-serverless-spend-limit.md +++ b/tidb-cloud/manage-serverless-spend-limit.md @@ -1,47 +1,47 @@ --- -title: 管理 TiDB Cloud Serverless 可扩展集群的支出限额 -summary: 了解如何管理 TiDB Cloud Serverless 可扩展集群的支出限额。 +title: 管理 TiDB Cloud Serverless 可扩展集群的消费限额 +summary: 了解如何管理 TiDB Cloud Serverless 可扩展集群的消费限额。 --- -# 管理 TiDB Cloud Serverless 可扩展集群的支出限额 +# 管理 TiDB Cloud Serverless 可扩展集群的消费限额 -> **注意:** +> **Note:** > -> 支出限额仅适用于 TiDB Cloud Serverless [可扩展集群](/tidb-cloud/select-cluster-tier.md#可扩展集群计划)。 +> 消费限额仅适用于 TiDB Cloud Serverless [scalable clusters](/tidb-cloud/select-cluster-tier.md#scalable-cluster-plan)。 -支出限额是指你愿意在一个月内为特定工作负载支付的最大金额。它是一种成本控制机制,允许你为 TiDB Cloud Serverless 可扩展集群设置预算。 +消费限额是指你每月愿意为某个特定工作负载支付的最大金额。它是一种成本控制机制,允许你为 TiDB Cloud Serverless 可扩展集群设置预算。 -对于 TiDB Cloud 中的每个组织,默认情况下你最多可以创建五个[免费集群](/tidb-cloud/select-cluster-tier.md#免费集群计划)。要创建更多的 TiDB Cloud Serverless 集群,你需要添加信用卡并创建可扩展集群以供使用。但是,如果你在创建更多集群之前删除了一些之前的集群,则无需信用卡也可以创建新集群。 +在 TiDB Cloud 的每个组织中,默认最多可以创建 5 个 [free clusters](/tidb-cloud/select-cluster-tier.md#free-cluster-plan)。如果你需要创建更多的 TiDB Cloud Serverless 集群,则需要添加信用卡并创建可扩展集群以进行使用。但如果你在创建更多集群之前删除了一些已有集群,则新集群仍然可以在无需信用卡的情况下创建。 ## 使用配额 -对于你组织中的前五个 TiDB Cloud Serverless 集群,无论是免费还是可扩展集群,TiDB Cloud 都为每个集群提供以下免费使用配额: +对于你所在组织的前 5 个 TiDB Cloud Serverless 集群,无论是免费集群还是可扩展集群,TiDB Cloud 都为每个集群提供如下免费使用配额: - 行存储:5 GiB - 列存储:5 GiB -- [请求单元 (RUs)](/tidb-cloud/tidb-cloud-glossary.md#请求单元):每月 5000 万 RUs +- [Request Units (RUs)](/tidb-cloud/tidb-cloud-glossary.md#request-unit):每月 5000 万 RU -一旦集群达到其使用配额,它会立即拒绝任何新的连接尝试,直到你[增加配额](#更新支出限额)或在新月开始时重置使用量。在达到配额之前建立的现有连接将保持活动状态,但会经历限制。例如,当免费集群的行存储超过 5 GiB 时,集群会自动限制任何新的连接尝试。 +一旦某个集群达到其使用配额,将会立即拒绝任何新的连接尝试,直到你 [增加配额](#update-spending-limit) 或新月开始时用量被重置。已在达到配额前建立的连接会保持活跃,但会受到限流。例如,当免费集群的行存储超过 5 GiB 时,该集群会自动限制任何新的连接尝试。 -要了解不同资源(包括读取、写入、SQL CPU 和网络出口)的 RU 消耗、定价详情和限制信息,请参见 [TiDB Cloud Serverless 定价详情](https://www.pingcap.com/tidb-cloud-serverless-pricing-details)。 +如需了解不同资源(包括读、写、SQL CPU 和网络出口)的 RU 消耗、定价详情以及限流信息,请参见 [TiDB Cloud Serverless Pricing Details](https://www.pingcap.com/tidb-cloud-serverless-pricing-details)。 -如果你想创建具有额外配额的 TiDB Cloud Serverless 集群,可以在集群创建页面上编辑支出限额。更多信息,请参见[创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md)。 +如果你希望创建一个拥有额外配额的 TiDB Cloud Serverless 集群,可以在集群创建页面编辑消费限额。更多信息请参见 [Create a TiDB Cloud Serverless cluster](/tidb-cloud/create-tidb-cluster-serverless.md)。 -## 更新支出限额 +## 更新消费限额 -对于 TiDB Cloud Serverless 免费集群,你可以通过将其升级为可扩展集群来增加使用配额。对于现有的可扩展集群,你可以直接调整每月支出限额。 +对于 TiDB Cloud Serverless 免费集群,你可以通过升级为可扩展集群来提升使用配额。对于已有的可扩展集群,你可以直接调整每月消费限额。 -要更新 TiDB Cloud Serverless 集群的支出限额,请执行以下步骤: +要为 TiDB Cloud Serverless 集群更新消费限额,请执行以下步骤: -1. 在项目的[**集群**](https://tidbcloud.com/project/clusters)页面上,点击目标集群的名称进入其概览页面。 +1. 在项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群名称进入其概览页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 -2. 在**本月使用量**区域,点击**升级到可扩展集群**。 +2. 在 **Usage This Month** 区域,点击 **Upgrade to Scalable Cluster**。 - 要调整现有可扩展集群的支出限额,点击 **编辑**。 + 若要调整已有可扩展集群的消费限额,点击 **Edit**。 -3. 根据需要编辑每月支出限额。如果你尚未添加付款方式,则在编辑限额后需要添加信用卡。 -4. 点击**更新集群计划**。 +3. 根据需要编辑每月消费限额。如果你尚未添加支付方式,编辑限额后需要添加信用卡。 +4. 点击 **Update Cluster Plan**。 \ No newline at end of file diff --git a/tidb-cloud/manage-user-access.md b/tidb-cloud/manage-user-access.md index fc0fdf3e4ee4f..c0fa53e791fc9 100644 --- a/tidb-cloud/manage-user-access.md +++ b/tidb-cloud/manage-user-access.md @@ -5,56 +5,56 @@ summary: 了解如何在 TiDB Cloud 中管理身份访问。 # 身份访问管理 -本文档介绍如何在 TiDB Cloud 中管理组织、项目、角色和用户配置文件的访问权限。 +本文档介绍如何在 TiDB Cloud 中管理对组织、项目、角色和用户资料的访问。 -在访问 TiDB Cloud 之前,请[创建 TiDB Cloud 账号](https://tidbcloud.com/free-trial)。你可以使用电子邮件和密码注册,这样就可以[使用 TiDB Cloud 管理密码](/tidb-cloud/tidb-cloud-password-authentication.md),或者选择使用 Google、GitHub 或 Microsoft 账号进行单点登录(SSO)到 TiDB Cloud。 +在访问 TiDB Cloud 之前,请先[创建一个 TiDB Cloud 账户](https://tidbcloud.com/free-trial)。你可以使用邮箱和密码注册,这样可以[通过 TiDB Cloud 管理你的密码](/tidb-cloud/tidb-cloud-password-authentication.md),也可以选择使用 Google、GitHub 或 Microsoft 账户进行单点登录(SSO)到 TiDB Cloud。 -## 组织和项目 +## 组织与项目 -TiDB Cloud 基于组织和项目提供层级结构,以便于管理 TiDB Cloud 用户和集群。如果你是组织所有者,你可以在组织中创建多个项目。 +TiDB Cloud 提供了基于组织和项目的分层结构,便于管理 TiDB Cloud 用户和集群。如果你是组织所有者,可以在你的组织下创建多个项目。 例如: ``` -- 你的组织 - - 项目 1 - - 集群 1 - - 集群 2 - - 项目 2 - - 集群 3 - - 集群 4 - - 项目 3 - - 集群 5 - - 集群 6 +- Your organization + - Project 1 + - Cluster 1 + - Cluster 2 + - Project 2 + - Cluster 3 + - Cluster 4 + - Project 3 + - Cluster 5 + - Cluster 6 ``` -在此结构下: +在该结构下: -- 要访问组织,用户必须是该组织的成员。 -- 要访问组织中的项目,用户必须至少具有该组织中项目的读取权限。 -- 要管理项目中的集群,用户必须具有 `Project Owner` 角色。 +- 要访问某个组织,用户必须是该组织的成员。 +- 要访问组织中的某个项目,用户至少需要拥有该组织下该项目的只读权限。 +- 要管理项目中的集群,用户必须拥有 `Project Owner` 角色。 -有关用户角色和权限的更多信息,请参见[用户角色](#用户角色)。 +关于用户角色和权限的更多信息,请参见 [用户角色](#用户角色)。 ### 组织 一个组织可以包含多个项目。 -TiDB Cloud 在组织级别计算账单,并提供每个项目的账单详情。 +TiDB Cloud 在组织层面进行计费,并为每个项目提供账单明细。 -如果你是组织所有者,你拥有组织中的最高权限。 +如果你是组织所有者,你在组织中拥有最高权限。 例如,你可以执行以下操作: -- 为不同目的创建不同的项目(如开发、暂存和生产)。 +- 为不同目的创建不同的项目(如开发、测试和生产环境)。 - 为不同用户分配不同的组织角色和项目角色。 -- 配置组织设置。例如,为组织配置时区。 +- 配置组织设置。例如,为你的组织配置时区。 ### 项目 一个项目可以包含多个集群。 -如果你是项目所有者,你可以管理项目的集群和项目设置。 +如果你是项目所有者,可以管理你项目下的集群和项目设置。 例如,你可以执行以下操作: @@ -64,149 +64,149 @@ TiDB Cloud 在组织级别计算账单,并提供每个项目的账单详情。 ## 用户角色 -TiDB Cloud 定义了不同的用户角色来管理组织、项目或两者中 TiDB Cloud 用户的不同权限。 +TiDB Cloud 定义了不同的用户角色,用于管理 TiDB Cloud 用户在组织、项目或两者中的不同权限。 -你可以在组织级别或项目级别为用户授予角色。出于安全考虑,请仔细规划组织和项目的层级结构。 +你可以在组织层面或项目层面为用户授予角色。请确保为安全考虑,合理规划你的组织和项目的层级结构。 ### 组织角色 -在组织级别,TiDB Cloud 定义了四个角色,其中 `Organization Owner` 可以邀请成员并为成员授予组织角色。 +在组织层面,TiDB Cloud 定义了四种角色,其中 `Organization Owner` 可以邀请成员并为成员分配组织角色。 | 权限 | `Organization Owner` | `Organization Billing Manager` | `Organization Billing Viewer` | `Organization Console Audit Manager` | `Organization Viewer` | |---|---|---|---|---|---| | 管理组织设置,如项目、API 密钥和时区。 | ✅ | ❌ | ❌ | ❌ | ❌ | -| 邀请用户加入组织或从组织中移除用户,并编辑用户的组织角色。 | ✅ | ❌ | ❌ | ❌ | ❌ | -| 组织中所有项目的所有 `Project Owner` 权限。 | ✅ | ❌ | ❌ | ❌ | ❌ | +| 邀请用户加入或移除用户出组织,并编辑用户的组织角色。 | ✅ | ❌ | ❌ | ❌ | ❌ | +| 拥有该组织下所有项目的 `Project Owner` 权限。 | ✅ | ❌ | ❌ | ❌ | ❌ | | 创建启用客户管理加密密钥(CMEK)的项目。 | ✅ | ❌ | ❌ | ❌ | ❌ | | 编辑组织的支付信息。 | ✅ | ✅ | ❌ | ❌ | ❌ | -| 查看账单并使用[成本分析器](/tidb-cloud/tidb-cloud-billing.md#cost-explorer)。 | ✅ | ✅ | ✅ | ❌ | ❌ | +| 查看账单并使用 [成本分析器](/tidb-cloud/tidb-cloud-billing.md#cost-explorer)。 | ✅ | ✅ | ✅ | ❌ | ❌ | | 管理组织的 TiDB Cloud [控制台审计日志](/tidb-cloud/tidb-cloud-console-auditing.md)。 | ✅ | ❌ | ❌ | ✅ | ❌ | -| 查看组织中的用户和成员所属的项目。 | ✅ | ✅ | ✅ | ✅ | ✅ | +| 查看组织内的用户及成员所属的项目。 | ✅ | ✅ | ✅ | ✅ | ✅ | > **注意:** > -> - `Organization Console Audit Manager` 角色(从 `Organization Console Audit Admin` 重命名)用于管理 TiDB Cloud 控制台的审计日志,而不是数据库审计日志。要管理数据库审计,请使用项目级别的 `Project Owner` 角色。 -> - `Organization Billing Manager` 角色从 `Organization Billing Admin` 重命名,`Organization Viewer` 角色从 `Organization Member` 重命名。 +> - `Organization Console Audit Manager` 角色(由 `Organization Console Audit Admin` 重命名)用于管理 TiDB Cloud 控制台的审计日志,而非数据库审计日志。要管理数据库审计,请在项目层面使用 `Project Owner` 角色。 +> - `Organization Billing Manager` 角色由 `Organization Billing Admin` 重命名,`Organization Viewer` 角色由 `Organization Member` 重命名。 ### 项目角色 -在项目级别,TiDB Cloud 定义了三个角色,其中 `Project Owner` 可以邀请成员并为成员授予项目角色。 +在项目层面,TiDB Cloud 定义了三种角色,其中 `Project Owner` 可以邀请成员并为成员分配项目角色。 > **注意:** > -> - `Organization Owner` 拥有所有项目的所有 Project Owner 权限,因此 `Organization Owner` 也可以邀请项目成员并为成员授予项目角色。 -> - 每个项目角色默认拥有所有 Organization Viewer 权限。 -> - 如果组织中的用户不属于任何项目,该用户没有任何项目权限。 +> - `Organization Owner` 拥有所有项目的 Project Owner 权限,因此 `Organization Owner` 也可以邀请项目成员并为成员分配项目角色。 +> - 每个项目角色默认拥有 Organization Viewer 的所有权限。 +> - 如果你组织中的某个用户不属于任何项目,则该用户没有任何项目权限。 | 权限 | `Project Owner` | `Project Data Access Read-Write` | `Project Data Access Read-Only` | `Project Viewer` | |---|---|---|---|---| | 管理项目设置 | ✅ | ❌ | ❌ | ❌ | -| 邀请用户加入项目或从项目中移除用户,并编辑用户的项目角色。 | ✅ | ❌ | ❌ | ❌ | -| 管理项目的[数据库审计日志](/tidb-cloud/tidb-cloud-auditing.md)。 | ✅ | ❌ | ❌ | ❌ | -| 管理项目中所有 TiDB Cloud Serverless 集群的[支出限制](/tidb-cloud/manage-serverless-spend-limit.md)。 | ✅ | ❌ | ❌ | ❌ | +| 邀请用户加入或移除用户出项目,并编辑用户的项目角色。 | ✅ | ❌ | ❌ | ❌ | +| 管理项目的 [数据库审计日志](/tidb-cloud/tidb-cloud-auditing.md)。 | ✅ | ❌ | ❌ | ❌ | +| 管理项目下所有 TiDB Cloud Serverless 集群的 [消费限额](/tidb-cloud/manage-serverless-spend-limit.md)。 | ✅ | ❌ | ❌ | ❌ | | 管理项目中的集群操作,如集群创建、修改和删除。 | ✅ | ❌ | ❌ | ❌ | -| 管理项目中 TiDB Cloud Serverless 集群的分支,如分支创建、连接和删除。 | ✅ | ❌ | ❌ | ❌ | -| 管理项目中 TiDB Cloud Dedicated 集群的[恢复组](/tidb-cloud/recovery-group-overview.md),如恢复组创建和删除。 | ✅ | ❌ | ❌ | ❌ | -| 管理集群数据,如数据导入、数据备份和恢复以及数据迁移。 | ✅ | ✅ | ❌ | ❌ | -| 管理[数据服务](/tidb-cloud/data-service-overview.md)的数据只读操作,如使用或创建端点读取数据。 | ✅ | ✅ | ✅ | ❌ | -| 管理[数据服务](/tidb-cloud/data-service-overview.md)的数据读写操作。 | ✅ | ✅ | ❌ | ❌ | -| 使用 [SQL 编辑器](/tidb-cloud/explore-data-with-chat2query.md)查看集群数据。 | ✅ | ✅ | ✅ | ❌ | -| 使用 [SQL 编辑器](/tidb-cloud/explore-data-with-chat2query.md)修改和删除集群数据。 | ✅ | ✅ | ❌ | ❌ | -| 管理[变更数据捕获](/tidb-cloud/changefeed-overview.md)。 | ✅ | ✅ | ✅ | ❌ | -| 查看和重置集群密码。 | ✅ | ❌ | ❌ | ❌ | -| 查看项目中的集群概览、备份记录、指标、事件和[变更数据捕获](/tidb-cloud/changefeed-overview.md)。 | ✅ | ✅ | ✅ | ✅ | +| 管理项目下 TiDB Cloud Serverless 集群的分支,如分支创建、连接和删除。 | ✅ | ❌ | ❌ | ❌ | +| 管理项目下 TiDB Cloud Dedicated 集群的 [恢复组](/tidb-cloud/recovery-group-overview.md),如恢复组的创建和删除。 | ✅ | ❌ | ❌ | ❌ | +| 管理集群数据,如数据导入、数据备份与恢复、数据迁移。 | ✅ | ✅ | ❌ | ❌ | +| 管理 [Data Service](/tidb-cloud/data-service-overview.md) 的只读操作,如使用或创建端点读取数据。 | ✅ | ✅ | ✅ | ❌ | +| 管理 [Data Service](/tidb-cloud/data-service-overview.md) 的读写操作。 | ✅ | ✅ | ❌ | ❌ | +| 使用 [SQL Editor](/tidb-cloud/explore-data-with-chat2query.md) 查看集群数据。 | ✅ | ✅ | ✅ | ❌ | +| 使用 [SQL Editor](/tidb-cloud/explore-data-with-chat2query.md) 修改和删除集群数据。 | ✅ | ✅ | ❌ | ❌ | +| 管理 [changefeeds](/tidb-cloud/changefeed-overview.md)。 | ✅ | ✅ | ✅ | ❌ | +| 审核和重置集群密码。 | ✅ | ❌ | ❌ | ❌ | +| 查看项目中的集群概览、备份记录、监控指标、事件和 [changefeeds](/tidb-cloud/changefeed-overview.md)。 | ✅ | ✅ | ✅ | ✅ | ## 管理组织访问 -### 查看和切换组织 +### 查看并切换组织 -要查看和切换组织,请执行以下步骤: +要查看并切换组织,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,点击左上角的组合框。显示你所属的组织和项目列表。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,点击左上角的下拉框,会显示你所属的组织和项目列表。 > **提示:** > - > - 如果你当前在特定集群的页面上,点击左上角的组合框后,还需要点击组合框中的 ← 返回组织和项目列表。 - > - 如果你是多个组织的成员,可以在组合框中点击目标组织名称,在组织之间切换账号。 + > - 如果你当前在某个集群页面,点击左上角下拉框后,还需要在下拉框中点击 ← 返回到组织和项目列表。 + > - 如果你属于多个组织,可以在下拉框中点击目标组织名称,在组织之间切换账户。 -2. 要查看组织的详细信息(如组织 ID 和时区),请点击组织名称,然后在左侧导航栏中点击 **Organization Settings** > **General**。 +2. 若要查看组织的详细信息(如组织 ID 和时区),点击组织名称,然后在左侧导航栏点击 **Organization Settings** > **General**。 ### 设置组织时区 -如果你具有 `Organization Owner` 角色,你可以根据时区修改系统显示时间。 +如果你拥有 `Organization Owner` 角色,可以根据你的时区修改系统显示时间。 要更改本地时区设置,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角下拉框切换到目标组织。 -2. 在左侧导航栏中,点击 **Organization Settings** > **General**。 +2. 在左侧导航栏点击 **Organization Settings** > **General**。 -3. 在 **Time Zone** 部分,从下拉列表中选择你的时区。 +3. 在 **Time Zone** 区域,从下拉列表中选择你的时区。 4. 点击 **Update**。 ### 邀请组织成员 -如果你具有 `Organization Owner` 角色,你可以邀请用户加入组织。 +如果你拥有 `Organization Owner` 角色,可以邀请用户加入你的组织。 > **注意:** > -> 你也可以根据需要直接[邀请用户加入项目](#邀请项目成员),这样用户也会成为组织成员。 +> 你也可以根据需要[直接邀请用户加入你的项目](#invite-a-project-member),这同样会使该用户成为你的组织成员。 要邀请成员加入组织,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角下拉框切换到目标组织。 -2. 在左侧导航栏中,点击 **Organization Settings** > **Users**。 +2. 在左侧导航栏点击 **Organization Settings** > **Users**。 3. 在 **Users** 页面,点击 **By Organization** 标签页。 4. 点击 **Invite**。 -5. 输入要邀请的用户的电子邮件地址,然后为该用户选择组织角色。 +5. 输入要邀请用户的邮箱地址,然后为该用户选择一个组织角色。 > **提示:** > - > - 如果你想一次邀请多个成员,可以输入多个电子邮件地址。 - > - 被邀请的用户默认不属于任何项目。要邀请用户加入项目,请参见[邀请项目成员](#邀请项目成员)。 + > - 如果你想一次邀请多个成员,可以输入多个邮箱地址。 + > - 被邀请用户默认不属于任何项目。要邀请用户加入项目,请参见 [邀请项目成员](#invite-a-project-member)。 -6. 点击 **Confirm**。然后新用户成功添加到用户列表中。同时,系统会向被邀请的电子邮件地址发送一封包含验证链接的邮件。 +6. 点击 **Confirm**。新用户会被成功添加到用户列表,同时会向被邀请邮箱发送一封带有验证链接的邮件。 -7. 收到此邮件后,用户需要点击邮件中的链接验证身份,然后会显示一个新页面。 +7. 用户收到邮件后,需要点击邮件中的链接进行身份验证,页面会显示新的内容。 -8. 如果被邀请的电子邮件地址尚未注册 TiDB Cloud 账号,用户将被引导到注册页面创建账号。如果该电子邮件地址已注册 TiDB Cloud 账号,用户将被引导到登录页面,登录后账号会自动加入组织。 +8. 如果被邀请邮箱尚未注册 TiDB Cloud 账户,用户会被引导至注册页面创建账户;如果邮箱已注册 TiDB Cloud 账户,用户会被引导至登录页面,登录后账户会自动加入组织。 > **注意:** > -> 邮件中的验证链接将在 24 小时后过期。如果你要邀请的用户没有收到邮件,请点击 **Resend**。 +> 邮件中的验证链接 24 小时内有效。如果你要邀请的用户未收到邮件,可点击 **Resend** 重新发送。 ### 修改组织角色 -如果你具有 `Organization Owner` 角色,你可以修改组织中所有成员的组织角色。 +如果你拥有 `Organization Owner` 角色,可以修改组织内所有成员的组织角色。 要修改成员的组织角色,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角下拉框切换到目标组织。 -2. 在左侧导航栏中,点击 **Organization Settings** > **Users**。 +2. 在左侧导航栏点击 **Organization Settings** > **Users**。 3. 在 **Users** 页面,点击 **By Organization** 标签页。 -4. 点击目标成员的角色,然后修改角色。 +4. 点击目标成员的角色,然后进行修改。 ### 移除组织成员 -如果你具有 `Organization Owner` 角色,你可以从组织中移除组织成员。 +如果你拥有 `Organization Owner` 角色,可以将组织成员从你的组织中移除。 -要从组织中移除成员,请执行以下步骤: +要将成员从组织中移除,请执行以下步骤: > **注意:** > -> 如果成员从组织中移除,该成员也会从所属的项目中移除。 +> 如果成员被移除出组织,该成员也会被移除出其所属的项目。 -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角下拉框切换到目标组织。 -2. 在左侧导航栏中,点击 **Organization Settings** > **Users**。 +2. 在左侧导航栏点击 **Organization Settings** > **Users**。 3. 在 **Users** 页面,点击 **By Organization** 标签页。 @@ -214,48 +214,48 @@ TiDB Cloud 定义了不同的用户角色来管理组织、项目或两者中 Ti ## 管理项目访问 -### 查看和切换项目 +### 查看并切换项目 -要查看和切换项目,请执行以下步骤: +要查看并切换项目,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,点击左上角的组合框。显示你所属的组织和项目列表。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,点击左上角的下拉框,会显示你所属的组织和项目列表。 > **提示:** > - > - 如果你当前在特定集群的页面上,点击左上角的组合框后,还需要点击组合框中的 ← 返回组织和项目列表。 - > - 如果你是多个项目的成员,可以在组合框中点击目标项目名称,在项目之间切换。 + > - 如果你当前在某个集群页面,点击左上角下拉框后,还需要在下拉框中点击 ← 返回到组织和项目列表。 + > - 如果你属于多个项目,可以在下拉框中点击目标项目名称,在项目之间切换。 -2. 要查看项目的详细信息,请点击项目名称,然后在左侧导航栏中点击 **Project Settings**。 +2. 若要查看项目的详细信息,点击项目名称,然后在左侧导航栏点击 **Project Settings**。 ### 创建项目 > **注意:** > -> 对于免费试用用户,你不能创建新项目。 +> 免费试用用户无法创建新项目。 -如果你具有 `Organization Owner` 角色,你可以在组织中创建项目。 +如果你拥有 `Organization Owner` 角色,可以在你的组织下创建项目。 要创建新项目,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角下拉框切换到目标组织。 -2. 在左侧导航栏中,点击 **Projects**。 +2. 在左侧导航栏点击 **Projects**。 3. 在 **Projects** 页面,点击 **Create New Project**。 -4. 输入项目名称。 +4. 输入你的项目名称。 5. 点击 **Confirm**。 ### 重命名项目 -如果你具有 `Organization Owner` 角色,你可以重命名组织中的任何项目。如果你具有 `Project Owner` 角色,你可以重命名你的项目。 +如果你拥有 `Organization Owner` 角色,可以重命名你组织下的任意项目。如果你拥有 `Project Owner` 角色,可以重命名你的项目。 要重命名项目,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角下拉框切换到目标组织。 -2. 在左侧导航栏中,点击 **Projects**。 +2. 在左侧导航栏点击 **Projects**。 3. 在要重命名的项目所在行,点击 **...** > **Rename**。 @@ -265,47 +265,47 @@ TiDB Cloud 定义了不同的用户角色来管理组织、项目或两者中 Ti ### 邀请项目成员 -如果你具有 `Organization Owner` 或 `Project Owner` 角色,你可以邀请成员加入项目。 +如果你拥有 `Organization Owner` 或 `Project Owner` 角色,可以邀请成员加入你的项目。 > **注意:** > -> 当不在组织中的用户加入项目时,该用户也会自动加入组织。 +> 当某个不在你组织内的用户加入你的项目时,该用户也会自动加入你的组织。 要邀请成员加入项目,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角下拉框切换到目标组织。 -2. 在左侧导航栏中,点击 **Organization Settings** > **Users**。 +2. 在左侧导航栏点击 **Organization Settings** > **Users**。 3. 在 **Users** 页面,点击 **By Project** 标签页,然后在下拉列表中选择你的项目。 4. 点击 **Invite**。 -5. 输入要邀请的用户的电子邮件地址,然后为该用户选择项目角色。 +5. 输入要邀请用户的邮箱地址,然后为该用户选择一个项目角色。 > **提示:** > - > 如果你想一次邀请多个成员,可以输入多个电子邮件地址。 + > 如果你想一次邀请多个成员,可以输入多个邮箱地址。 -6. 点击 **Confirm**。然后新用户成功添加到用户列表中。同时,系统会向被邀请的电子邮件地址发送一封包含验证链接的邮件。 +6. 点击 **Confirm**。新用户会被成功添加到用户列表,同时会向被邀请邮箱发送一封带有验证链接的邮件。 -7. 收到此邮件后,用户需要点击邮件中的链接验证身份,然后会显示一个新页面。 +7. 用户收到邮件后,需要点击邮件中的链接进行身份验证,页面会显示新的内容。 -8. 如果被邀请的电子邮件地址尚未注册 TiDB Cloud 账号,用户将被引导到注册页面创建账号。如果该电子邮件地址已注册 TiDB Cloud 账号,用户将被引导到登录页面。登录后,账号会自动加入项目。 +8. 如果被邀请邮箱尚未注册 TiDB Cloud 账户,用户会被引导至注册页面创建账户;如果邮箱已注册 TiDB Cloud 账户,用户会被引导至登录页面,登录后账户会自动加入项目。 > **注意:** > -> 邮件中的验证链接将在 24 小时后过期。如果你的用户没有收到邮件,请点击 **Resend**。 +> 邮件中的验证链接 24 小时内有效。如果你的用户未收到邮件,可点击 **Resend** 重新发送。 ### 修改项目角色 -如果你具有 `Organization Owner` 角色,你可以修改组织中所有项目成员的项目角色。如果你具有 `Project Owner` 角色,你可以修改项目中所有成员的项目角色。 +如果你拥有 `Organization Owner` 角色,可以修改你组织下所有项目成员的项目角色。如果你拥有 `Project Owner` 角色,可以修改你项目下所有成员的项目角色。 要修改成员的项目角色,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角下拉框切换到目标组织。 -2. 在左侧导航栏中,点击 **Organization Settings** > **Users**。 +2. 在左侧导航栏点击 **Organization Settings** > **Users**。 3. 在 **Users** 页面,点击 **By Project** 标签页,然后在下拉列表中选择你的项目。 @@ -313,24 +313,24 @@ TiDB Cloud 定义了不同的用户角色来管理组织、项目或两者中 Ti ### 移除项目成员 -如果你具有 `Organization Owner` 或 `Project Owner` 角色,你可以移除项目成员。 +如果你拥有 `Organization Owner` 或 `Project Owner` 角色,可以移除项目成员。 -要从项目中移除成员,请执行以下步骤: +要将成员从项目中移除,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角下拉框切换到目标组织。 -2. 在左侧导航栏中,点击 **Organization Settings** > **Users**。 +2. 在左侧导航栏点击 **Organization Settings** > **Users**。 3. 在 **Users** 页面,点击 **By Project** 标签页,然后在下拉列表中选择你的项目。 4. 在目标成员所在行,点击 **...** > **Delete**。 -## 管理用户配置文件 +## 管理用户资料 -在 TiDB Cloud 中,你可以轻松管理你的配置文件,包括名字、姓氏和电话号码。 +在 TiDB Cloud 中,你可以轻松管理你的个人资料,包括名字、姓氏和手机号。 1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,点击左下角的 。 2. 点击 **Account Settings**。 -3. 在显示的对话框中,更新配置文件信息,然后点击 **Update**。 +3. 在弹出的对话框中,更新个人资料信息,然后点击 **Update**。 \ No newline at end of file diff --git a/tidb-cloud/migrate-from-mysql-using-aws-dms.md b/tidb-cloud/migrate-from-mysql-using-aws-dms.md index 40b5feab13b36..afc08a30db7df 100644 --- a/tidb-cloud/migrate-from-mysql-using-aws-dms.md +++ b/tidb-cloud/migrate-from-mysql-using-aws-dms.md @@ -1,187 +1,188 @@ --- -title: 使用 AWS DMS 将 MySQL 兼容数据库迁移至 TiDB Cloud -summary: 了解如何使用 AWS Database Migration Service (AWS DMS) 将数据从 MySQL 兼容数据库迁移至 TiDB Cloud。 +title: 使用 AWS DMS 将 MySQL 兼容数据库迁移到 TiDB Cloud +summary: 了解如何使用 AWS Database Migration Service (AWS DMS) 将数据从 MySQL 兼容数据库迁移到 TiDB Cloud。 --- -# 使用 AWS DMS 将 MySQL 兼容数据库迁移至 TiDB Cloud +# 使用 AWS DMS 将 MySQL 兼容数据库迁移到 TiDB Cloud -如果你想迁移异构数据库(如 PostgreSQL、Oracle 和 SQL Server)到 TiDB Cloud,建议使用 AWS Database Migration Service (AWS DMS)。 +如果你想将异构数据库(如 PostgreSQL、Oracle 和 SQL Server)迁移到 TiDB Cloud,推荐使用 AWS Database Migration Service (AWS DMS)。 -AWS DMS 是一项云服务,可以轻松迁移关系数据库、数据仓库、NoSQL 数据库和其他类型的数据存储。你可以使用 AWS DMS 将数据迁移到 TiDB Cloud。 +AWS DMS 是一项云服务,可以轻松迁移关系型数据库、数据仓库、NoSQL 数据库以及其他类型的数据存储。你可以使用 AWS DMS 将数据迁移到 TiDB Cloud。 -本文以 Amazon RDS 为例,展示如何使用 AWS DMS 将数据迁移到 TiDB Cloud。此过程也适用于将数据从自托管 MySQL 数据库或 Amazon Aurora 迁移到 TiDB Cloud。 +本文档以 Amazon RDS 为例,演示如何使用 AWS DMS 将数据迁移到 TiDB Cloud。该流程同样适用于将自建 MySQL 数据库或 Amazon Aurora 的数据迁移到 TiDB Cloud。 -在本例中,数据源是 Amazon RDS,数据目标是 TiDB Cloud 中的 TiDB Cloud Dedicated 集群。上游和下游数据库都在同一区域。 +在本示例中,数据源为 Amazon RDS,数据目标为 TiDB Cloud 中的 TiDB Cloud Dedicated 集群。上下游数据库均位于同一区域。 ## 前提条件 在开始迁移之前,请确保你已阅读以下内容: -- 如果源数据库是 Amazon RDS 或 Amazon Aurora,你需要将 `binlog_format` 参数设置为 `ROW`。如果数据库使用默认参数组,`binlog_format` 参数默认为 `MIXED` 且无法修改。在这种情况下,你需要[创建一个新的参数组](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_GettingStarted.Prerequisites.html#CHAP_GettingStarted.Prerequisites.params),例如 `newset`,并将其 `binlog_format` 设置为 `ROW`。然后,[修改默认参数组](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithDBInstanceParamGroups.html#USER_WorkingWithParamGroups.Modifying)为 `newset`。请注意,修改参数组将重启数据库。 -- 检查并确保源数据库使用与 TiDB 兼容的排序规则。TiDB 中 utf8mb4 字符集的默认排序规则是 `utf8mb4_bin`。但在 MySQL 8.0 中,默认排序规则是 `utf8mb4_0900_ai_ci`。如果上游 MySQL 使用默认排序规则,由于 TiDB 不兼容 `utf8mb4_0900_ai_ci`,AWS DMS 无法在 TiDB 中创建目标表并且无法迁移数据。要解决此问题,你需要在迁移前将源数据库的排序规则修改为 `utf8mb4_bin`。有关 TiDB 支持的字符集和排序规则的完整列表,请参见[字符集和排序规则](https://docs.pingcap.com/tidb/stable/character-set-and-collation)。 -- TiDB 默认包含以下系统数据库:`INFORMATION_SCHEMA`、`PERFORMANCE_SCHEMA`、`mysql`、`sys` 和 `test`。当你创建 AWS DMS 迁移任务时,你需要过滤掉这些系统数据库,而不是使用默认的 `%` 来选择迁移对象。否则,AWS DMS 将尝试将这些系统数据库从源数据库迁移到目标 TiDB,这将导致任务失败。为避免此问题,建议填写具体的数据库和表名。 -- 将 AWS DMS 的公网和私网 IP 地址添加到源数据库和目标数据库的 IP 访问列表中。否则,在某些情况下网络连接可能会失败。 -- 使用 [VPC 对等连接](/tidb-cloud/set-up-vpc-peering-connections.md#在-aws-上设置-vpc-对等连接)或[私有端点连接](/tidb-cloud/set-up-private-endpoint-connections.md)来连接 AWS DMS 和 TiDB 集群。 -- 建议将 AWS DMS 和 TiDB 集群使用相同的区域,以获得更好的数据写入性能。 -- 建议使用 AWS DMS `dms.t3.large`(2 个 vCPU 和 8 GiB 内存)或更高实例类型。较小的实例类型可能会导致内存不足(OOM)错误。 -- AWS DMS 将在目标数据库中自动创建 `awsdms_control` 数据库。 +- 如果源数据库为 Amazon RDS 或 Amazon Aurora,需要将 `binlog_format` 参数设置为 `ROW`。如果数据库使用的是默认参数组,则 `binlog_format` 参数默认为 `MIXED`,且无法修改。此时,你需要[创建一个新的参数组](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_GettingStarted.Prerequisites.html#CHAP_GettingStarted.Prerequisites.params),例如 `newset`,并将其 `binlog_format` 设置为 `ROW`。然后,[将默认参数组修改为 `newset`](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithDBInstanceParamGroups.html#USER_WorkingWithParamGroups.Modifying)。注意,修改参数组会重启数据库。 +- 检查并确保源数据库使用的排序规则(collation)与 TiDB 兼容。TiDB 中 utf8mb4 字符集的默认排序规则为 `utf8mb4_bin`,但在 MySQL 8.0 中,默认排序规则为 `utf8mb4_0900_ai_ci`。如果上游 MySQL 使用默认排序规则,由于 TiDB 不兼容 `utf8mb4_0900_ai_ci`,AWS DMS 无法在 TiDB 中创建目标表,也无法迁移数据。为解决此问题,你需要在迁移前将源数据库的排序规则修改为 `utf8mb4_bin`。TiDB 支持的字符集和排序规则完整列表请参见 [Character Set and Collation](https://docs.pingcap.com/tidb/stable/character-set-and-collation)。 +- TiDB 默认包含以下系统数据库:`INFORMATION_SCHEMA`、`PERFORMANCE_SCHEMA`、`mysql`、`sys` 和 `test`。创建 AWS DMS 迁移任务时,需要过滤掉这些系统数据库,不能使用默认的 `%` 选择迁移对象。否则,AWS DMS 会尝试将这些系统数据库从源数据库迁移到目标 TiDB,导致任务失败。为避免此问题,建议填写具体的数据库和表名。 +- 将 AWS DMS 的公网和私网 IP 地址添加到源数据库和目标数据库的 IP 访问列表中。否则,在某些场景下网络连接可能会失败。 +- 使用 [VPC Peerings](/tidb-cloud/set-up-vpc-peering-connections.md#set-up-vpc-peering-on-aws) 或 [Private Endpoint connections](/tidb-cloud/set-up-private-endpoint-connections.md) 连接 AWS DMS 和 TiDB 集群。 +- 建议 AWS DMS 和 TiDB 集群使用同一区域,以获得更好的数据写入性能。 +- 建议使用 AWS DMS `dms.t3.large`(2 vCPU 和 8 GiB 内存)或更高规格的实例。小规格实例可能会导致内存溢出(OOM)错误。 +- AWS DMS 会自动在目标数据库中创建 `awsdms_control` 数据库。 ## 限制 - AWS DMS 不支持复制 `DROP TABLE`。 -- AWS DMS 支持基本的架构迁移,包括创建表和主键。但是,AWS DMS 不会自动在 TiDB Cloud 中创建二级索引、外键或用户账户。如果需要,你必须手动在 TiDB 中创建这些对象,包括带有二级索引的表。更多信息,请参见 [Migration planning for AWS Database Migration Service](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_BestPractices.html#CHAP_SettingUp.MigrationPlanning)。 +- AWS DMS 支持基础的架构迁移,包括创建表和主键。但 AWS DMS 不会自动在 TiDB Cloud 中创建二级索引、外键或用户账户。你需要在 TiDB 中手动创建这些对象,包括带有二级索引的表(如有需要)。更多信息请参见 [Migration planning for AWS Database Migration Service](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_BestPractices.html#CHAP_SettingUp.MigrationPlanning)。 -## 步骤 1. 创建 AWS DMS 复制实例 +## 第 1 步:创建 AWS DMS 复制实例 -1. 在 AWS DMS 控制台中转到[复制实例](https://console.aws.amazon.com/dms/v2/home#replicationInstances)页面,并切换到相应的区域。建议 AWS DMS 使用与 TiDB Cloud 相同的区域。在本文档中,上游和下游数据库以及 DMS 实例都在 **us-west-2** 区域。 +1. 进入 AWS DMS 控制台的 [Replication instances](https://console.aws.amazon.com/dms/v2/home#replicationInstances) 页面,并切换到对应区域。建议 AWS DMS 与 TiDB Cloud 使用同一区域。本文档中,上下游数据库及 DMS 实例均位于 **us-west-2** 区域。 -2. 点击**创建复制实例**。 +2. 点击 **Create replication instance**。 - ![创建复制实例](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-create-instance.png) + ![Create replication instance](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-create-instance.png) 3. 填写实例名称、ARN 和描述。 -4. 填写实例配置: - - **实例类型**:选择适当的实例类型。建议使用 `dms.t3.large` 或更高实例类型以获得更好的性能。 - - **引擎版本**:使用默认配置。 - - **多可用区**:根据业务需求选择**单可用区**或**多可用区**。 +4. 配置实例参数: + - **Instance class**:选择合适的实例规格。建议使用 `dms.t3.large` 或更高规格以获得更好性能。 + - **Engine version**:使用默认配置。 + - **Multi-AZ**:根据业务需求选择 **Single-AZ** 或 **Multi-AZ**。 -5. 在**分配存储(GiB)**字段中配置存储。使用默认配置。 +5. 在 **Allocated storage (GiB)** 字段配置存储空间。使用默认配置即可。 -6. 配置连接和安全性。 - - **网络类型 - 新**:选择 **IPv4**。 - - **IPv4 的虚拟私有云(VPC)**:选择你需要的 VPC。建议使用与上游数据库相同的 VPC 以简化网络配置。 - - **复制子网组**:为你的复制实例选择一个子网组。 - - **公共可访问**:使用默认配置。 +6. 配置网络和安全性。 + - **Network type - new**:选择 **IPv4**。 + - **Virtual private cloud (VPC) for IPv4**:选择所需的 VPC。建议与上游数据库使用同一个 VPC,以简化网络配置。 + - **Replication subnet group**:为复制实例选择一个子网组。 + - **Public accessible**:使用默认配置。 -7. 根据需要配置**高级设置**、**维护**和**标签**。点击**创建复制实例**完成实例创建。 +7. 如有需要,配置 **Advanced settings**、**Maintenance** 和 **Tags**。点击 **Create replication instance** 完成实例创建。 -## 步骤 2. 创建源数据库端点 +## 第 2 步:创建源数据库端点 -1. 在 [AWS DMS 控制台](https://console.aws.amazon.com/dms/v2/home)中,点击你刚刚创建的复制实例。复制公网和私网 IP 地址,如下图所示。 +1. 在 [AWS DMS 控制台](https://console.aws.amazon.com/dms/v2/home) 中,点击刚刚创建的复制实例。复制如下截图所示的公网和私网 IP 地址。 - ![复制公网和私网 IP 地址](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-copy-ip.png) + ![Copy the public and private network IP addresses](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-copy-ip.png) -2. 配置 Amazon RDS 的安全组规则。在本例中,将 AWS DMS 实例的公网和私网 IP 地址添加到安全组中。 +2. 配置 Amazon RDS 的安全组规则。本示例中,将 AWS DMS 实例的公网和私网 IP 地址添加到安全组中。 - ![配置安全组规则](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-rules.png) + ![Configure the security group rules](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-rules.png) -3. 点击**创建端点**以创建源数据库端点。 +3. 点击 **Create endpoint** 创建源数据库端点。 - ![点击创建端点](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-endpoint.png) + ![Click Create endpoint](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-endpoint.png) -4. 在本例中,点击**选择 RDS DB 实例**,然后选择源 RDS 实例。如果源数据库是自托管 MySQL,你可以跳过此步骤,直接在后续步骤中填写信息。 +4. 本示例中,点击 **Select RDS DB instance**,然后选择源 RDS 实例。如果源数据库为自建 MySQL,可以跳过此步骤,在后续步骤中填写相关信息。 - ![选择 RDS DB 实例](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-select-rds.png) + ![Select RDS DB instance](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-select-rds.png) 5. 配置以下信息: - - **端点标识符**:为源端点创建一个标签,以帮助你在后续任务配置中识别它。 - - **描述性 Amazon Resource Name (ARN) - 可选**:为默认 DMS ARN 创建一个友好名称。 - - **源引擎**:选择 **MySQL**。 - - **访问端点数据库**:选择**手动提供访问信息**。 - - **服务器名称**:填写数据提供者的数据服务器名称。你可以从数据库控制台复制它。如果上游是 Amazon RDS 或 Amazon Aurora,名称将自动填充。如果是没有域名的自托管 MySQL,你可以填写 IP 地址。 - - 填写源数据库的**端口**、**用户名**和**密码**。 - - **安全套接字层 (SSL) 模式**:你可以根据需要启用 SSL 模式。 + - **Endpoint identifier**:为源端点创建一个标签,便于后续任务配置时识别。 + - **Descriptive Amazon Resource Name (ARN) - optional**:为默认 DMS ARN 创建一个友好名称。 + - **Source engine**:选择 **MySQL**。 + - **Access to endpoint database**:选择 **Provide access information manually**。 + - **Server name**:填写数据服务器的名称。可从数据库控制台复制。如果上游为 Amazon RDS 或 Amazon Aurora,名称会自动填写。如果是无域名的自建 MySQL,可填写 IP 地址。 + - 填写源数据库的 **Port**、**Username** 和 **Password**。 + - **Secure Socket Layer (SSL) mode**:可根据需要启用 SSL 模式。 - ![填写端点配置](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-endpoint-config.png) + ![Fill in the endpoint configurations](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-endpoint-config.png) -6. 对于**端点设置**、**KMS 密钥**和**标签**,使用默认值。在**测试端点连接(可选)**部分,建议选择与源数据库相同的 VPC 以简化网络配置。选择相应的复制实例,然后点击**运行测试**。状态需要为**成功**。 +6. **Endpoint settings**、**KMS key** 和 **Tags** 使用默认值。在 **Test endpoint connection (optional)** 部分,建议选择与源数据库相同的 VPC,以简化网络配置。选择对应的复制实例,然后点击 **Run test**。状态需为 **successful**。 -7. 点击**创建端点**。 +7. 点击 **Create endpoint**。 - ![点击创建端点](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-connection.png) -## 步骤 3. 创建目标数据库端点 + ![Click Create endpoint](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-connection.png) -1. 在 [AWS DMS 控制台](https://console.aws.amazon.com/dms/v2/home)中,点击你刚刚创建的复制实例。复制公网和私网 IP 地址,如下图所示。 +## 第 3 步:创建目标数据库端点 - ![复制公网和私网 IP 地址](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-copy-ip.png) +1. 在 [AWS DMS 控制台](https://console.aws.amazon.com/dms/v2/home) 中,点击刚刚创建的复制实例。复制如下截图所示的公网和私网 IP 地址。 -2. 在 TiDB Cloud 控制台中,转到[**集群**](https://tidbcloud.com/project/clusters)页面,点击目标集群的名称,然后点击右上角的**连接**以获取 TiDB Cloud 数据库连接信息。 + ![Copy the public and private network IP addresses](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-copy-ip.png) -3. 在对话框中的**步骤 1:创建流量过滤器**下,点击**编辑**,输入你从 AWS DMS 控制台复制的公网和私网 IP 地址,然后点击**更新过滤器**。建议同时将 AWS DMS 复制实例的公网 IP 地址和私网 IP 地址添加到 TiDB 集群的流量过滤器中。否则,在某些情况下 AWS DMS 可能无法连接到 TiDB 集群。 +2. 在 TiDB Cloud 控制台,进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群名称,然后点击右上角的 **Connect** 获取 TiDB Cloud 数据库连接信息。 -4. 点击**下载 CA 证书**以下载 CA 证书。在对话框中的**步骤 3:使用 SQL 客户端连接**下,记下连接字符串中的 `-u`、`-h` 和 `-P` 信息,以供后续使用。 +3. 在弹窗的 **Step 1: Create traffic filter** 下,点击 **Edit**,输入从 AWS DMS 控制台复制的公网和私网 IP 地址,然后点击 **Update Filter**。建议同时将 AWS DMS 复制实例的公网和私网 IP 地址添加到 TiDB 集群流量过滤器,否则在某些场景下 AWS DMS 可能无法连接 TiDB 集群。 -5. 在对话框中点击 **VPC 对等连接**选项卡,然后在**步骤 1:设置 VPC**下点击**添加**,为 TiDB 集群和 AWS DMS 创建 VPC 对等连接。 +4. 点击 **Download CA cert** 下载 CA 证书。在弹窗的 **Step 3: Connect with a SQL client** 下,记录连接串中的 `-u`、`-h` 和 `-P` 信息,后续会用到。 -6. 配置相应的信息。请参见[设置 VPC 对等连接](/tidb-cloud/set-up-vpc-peering-connections.md)。 +5. 点击弹窗中的 **VPC Peering** 标签页,在 **Step 1: Set up VPC** 下点击 **Add**,为 TiDB 集群和 AWS DMS 创建 VPC Peering 连接。 -7. 为 TiDB 集群配置目标端点。 - - **端点类型**:选择**目标端点**。 - - **端点标识符**:为端点填写一个名称。 - - **描述性 Amazon Resource Name (ARN) - 可选**:为默认 DMS ARN 创建一个友好名称。 - - **目标引擎**:选择 **MySQL**。 +6. 配置相关信息,详见 [Set Up VPC Peering Connections](/tidb-cloud/set-up-vpc-peering-connections.md)。 - ![配置目标端点](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-target-endpoint.png) +7. 配置 TiDB 集群的目标端点。 + - **Endpoint type**:选择 **Target endpoint**。 + - **Endpoint identifier**:填写端点名称。 + - **Descriptive Amazon Resource Name (ARN) - optional**:为默认 DMS ARN 创建一个友好名称。 + - **Target engine**:选择 **MySQL**。 -8. 在 [AWS DMS 控制台](https://console.aws.amazon.com/dms/v2/home)中,点击**创建端点**以创建目标数据库端点,然后配置以下信息: - - **服务器名称**:填写你的 TiDB 集群的主机名,即你记录的 `-h` 信息。 - - **端口**:输入你的 TiDB 集群的端口,即你记录的 `-P` 信息。TiDB 集群的默认端口是 4000。 - - **用户名**:输入你的 TiDB 集群的用户名,即你记录的 `-u` 信息。 - - **密码**:输入你的 TiDB 集群的密码。 - - **安全套接字层 (SSL) 模式**:选择 **Verify-ca**。 - - 点击**添加新的 CA 证书**以导入之前从 TiDB Cloud 控制台下载的 CA 文件。 + ![Configure the target endpoint](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-target-endpoint.png) - ![填写目标端点信息](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-target-endpoint2.png) +8. 在 [AWS DMS 控制台](https://console.aws.amazon.com/dms/v2/home) 中,点击 **Create endpoint** 创建目标数据库端点,并配置以下信息: + - **Server name**:填写 TiDB 集群的主机名,即你记录的 `-h` 信息。 + - **Port**:填写 TiDB 集群的端口,即你记录的 `-P` 信息。TiDB 集群默认端口为 4000。 + - **User name**:填写 TiDB 集群的用户名,即你记录的 `-u` 信息。 + - **Password**:填写 TiDB 集群的密码。 + - **Secure Socket Layer (SSL) mode**:选择 **Verify-ca**。 + - 点击 **Add new CA certificate**,导入前面从 TiDB Cloud 控制台下载的 CA 文件。 + + ![Fill in the target endpoint information](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-target-endpoint2.png) 9. 导入 CA 文件。 - ![上传 CA](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-upload-ca.png) + ![Upload CA](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-upload-ca.png) -10. 对于**端点设置**、**KMS 密钥**和**标签**,使用默认值。在**测试端点连接(可选)**部分,选择与源数据库相同的 VPC。选择相应的复制实例,然后点击**运行测试**。状态需要为**成功**。 +10. **Endpoint settings**、**KMS key** 和 **Tags** 使用默认值。在 **Test endpoint connection (optional)** 部分,选择与源数据库相同的 VPC。选择对应的复制实例,然后点击 **Run test**。状态需为 **successful**。 -11. 点击**创建端点**。 +11. 点击 **Create endpoint**。 - ![点击创建端点](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-target-endpoint3.png) + ![Click Create endpoint](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-target-endpoint3.png) -## 步骤 4. 创建数据库迁移任务 +## 第 4 步:创建数据库迁移任务 -1. 在 AWS DMS 控制台中,转到[数据迁移任务](https://console.aws.amazon.com/dms/v2/home#tasks)页面。切换到你的区域。然后点击窗口右上角的**创建任务**。 +1. 在 AWS DMS 控制台,进入 [Data migration tasks](https://console.aws.amazon.com/dms/v2/home#tasks) 页面。切换到你的区域,然后点击窗口右上角的 **Create task**。 - ![创建任务](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-create-task.png) + ![Create task](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-create-task.png) 2. 配置以下信息: - - **任务标识符**:为任务填写一个名称。建议使用容易记住的名称。 - - **描述性 Amazon Resource Name (ARN) - 可选**:为默认 DMS ARN 创建一个友好名称。 - - **复制实例**:选择你刚刚创建的 AWS DMS 实例。 - - **源数据库端点**:选择你刚刚创建的源数据库端点。 - - **目标数据库端点**:选择你刚刚创建的目标数据库端点。 - - **迁移类型**:根据需要选择迁移类型。在本例中,选择**迁移现有数据并复制持续变更**。 + - **Task identifier**:填写任务名称。建议使用易于记忆的名称。 + - **Descriptive Amazon Resource Name (ARN) - optional**:为默认 DMS ARN 创建一个友好名称。 + - **Replication instance**:选择刚刚创建的 AWS DMS 实例。 + - **Source database endpoint**:选择刚刚创建的源数据库端点。 + - **Target database endpoint**:选择刚刚创建的目标数据库端点。 + - **Migration type**:根据需要选择迁移类型。本示例选择 **Migrate existing data and replicate ongoing changes**。 - ![任务配置](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-task-config.png) + ![Task configurations](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-task-config.png) 3. 配置以下信息: - - **编辑模式**:选择**向导**。 - - **源事务的自定义 CDC 停止模式**:使用默认设置。 - - **目标表准备模式**:根据需要选择**不执行任何操作**或其他选项。在本例中,选择**不执行任何操作**。 - - **完成全量加载后停止任务**:使用默认设置。 - - **在复制中包含 LOB 列**:选择**有限 LOB 模式**。 - - **最大 LOB 大小(KB)**:使用默认值 **32**。 - - **开启验证**:根据需要选择。 - - **任务日志**:选择**开启 CloudWatch 日志**以便将来进行故障排除。对相关配置使用默认设置。 + - **Editing mode**:选择 **Wizard**。 + - **Custom CDC stop mode for source transactions**:使用默认设置。 + - **Target table preparation mode**:选择 **Do nothing** 或根据需要选择其他选项。本示例选择 **Do nothing**。 + - **Stop task after full load completes**:使用默认设置。 + - **Include LOB columns in replication**:选择 **Limited LOB mode**。 + - **Maximum LOB size in (KB)**:使用默认值 **32**。 + - **Turn on validation**:根据需要选择。 + - **Task logs**:选择 **Turn on CloudWatch logs** 以便后续排查问题。相关配置使用默认设置。 - ![任务设置](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-task-settings.png) + ![Task settings](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-task-settings.png) -4. 在**表映射**部分,指定要迁移的数据库。 +4. 在 **Table mappings** 部分,指定需要迁移的数据库。 - 架构名称是 Amazon RDS 实例中的数据库名称。**源名称**的默认值是"%",这意味着 Amazon RDS 中的所有数据库都将迁移到 TiDB。这将导致 Amazon RDS 中的系统数据库(如 `mysql` 和 `sys`)被迁移到 TiDB 集群,并导致任务失败。因此,建议填写具体的数据库名称,或过滤掉所有系统数据库。例如,根据以下截图中的设置,只有名为 `franktest` 的数据库及其所有表会被迁移。 + schema 名称即为 Amazon RDS 实例中的数据库名。**Source name** 的默认值为 "%",表示将 Amazon RDS 中所有数据库迁移到 TiDB,这会导致 Amazon RDS 中的 `mysql`、`sys` 等系统数据库也被迁移到 TiDB 集群,进而导致任务失败。因此,建议填写具体的数据库名,或过滤掉所有系统数据库。例如,按照下图设置,仅会迁移名为 `franktest` 的数据库及其所有表。 - ![表映射](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-table-mappings.png) + ![Table mappings](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-table-mappings.png) -5. 点击右下角的**创建任务**。 +5. 点击右下角的 **Create task**。 -6. 返回[数据迁移任务](https://console.aws.amazon.com/dms/v2/home#tasks)页面。切换到你的区域。你可以看到任务的状态和进度。 +6. 返回 [Data migration tasks](https://console.aws.amazon.com/dms/v2/home#tasks) 页面,切换到你的区域,可以查看任务的状态和进度。 - ![任务状态](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-task-status.png) + ![Tasks status](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-task-status.png) -如果在迁移过程中遇到任何问题或失败,你可以在 [CloudWatch](https://console.aws.amazon.com/cloudwatch/home) 中查看日志信息以排除问题。 +如果在迁移过程中遇到任何问题或失败,可以在 [CloudWatch](https://console.aws.amazon.com/cloudwatch/home) 中查看日志信息进行排查。 -![故障排除](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-troubleshooting.png) +![Troubleshooting](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-to-tidb-cloud-troubleshooting.png) -## 另请参阅 +## 参见 -- 如果你想了解更多关于如何将 AWS DMS 连接到 TiDB Cloud Serverless 或 TiDB Cloud Dedicated 的信息,请参见[将 AWS DMS 连接到 TiDB Cloud 集群](/tidb-cloud/tidb-cloud-connect-aws-dms.md)。 +- 如果你想了解更多关于如何将 AWS DMS 连接到 TiDB Cloud Serverless 或 TiDB Cloud Dedicated 的信息,请参见 [Connect AWS DMS to TiDB Cloud clusters](/tidb-cloud/tidb-cloud-connect-aws-dms.md)。 -- 如果你想从 MySQL 兼容数据库(如 Aurora MySQL 和 Amazon Relational Database Service (RDS))迁移到 TiDB Cloud,建议使用 [TiDB Cloud 上的数据迁移](/tidb-cloud/migrate-from-mysql-using-data-migration.md)。 +- 如果你想将 MySQL 兼容数据库(如 Aurora MySQL 和 Amazon Relational Database Service (RDS))迁移到 TiDB Cloud,推荐使用 [Data Migration on TiDB Cloud](/tidb-cloud/migrate-from-mysql-using-data-migration.md)。 -- 如果你想使用 AWS DMS 将 Amazon RDS for Oracle 迁移到 TiDB Cloud Serverless,请参见[使用 AWS DMS 将 Amazon RDS for Oracle 迁移到 TiDB Cloud Serverless](/tidb-cloud/migrate-from-oracle-using-aws-dms.md)。 +- 如果你想使用 AWS DMS 将 Amazon RDS for Oracle 迁移到 TiDB Cloud Serverless,请参见 [Migrate from Amazon RDS for Oracle to TiDB Cloud Serverless Using AWS DMS](/tidb-cloud/migrate-from-oracle-using-aws-dms.md)。 \ No newline at end of file diff --git a/tidb-cloud/migrate-from-oracle-using-aws-dms.md b/tidb-cloud/migrate-from-oracle-using-aws-dms.md index 62469e6a174c9..bda68f26bb801 100644 --- a/tidb-cloud/migrate-from-oracle-using-aws-dms.md +++ b/tidb-cloud/migrate-from-oracle-using-aws-dms.md @@ -1,73 +1,73 @@ --- -title: 使用 AWS DMS 从 Amazon RDS for Oracle 迁移到 TiDB Cloud +title: 使用 AWS DMS 将 Amazon RDS for Oracle 迁移到 TiDB Cloud summary: 了解如何使用 AWS Database Migration Service (AWS DMS) 将数据从 Amazon RDS for Oracle 迁移到 TiDB Cloud Serverless。 --- -# 使用 AWS DMS 从 Amazon RDS for Oracle 迁移到 TiDB Cloud +# 使用 AWS DMS 将 Amazon RDS for Oracle 迁移到 TiDB Cloud -本文档提供了一个分步示例,说明如何使用 AWS Database Migration Service (AWS DMS) 将数据从 Amazon RDS for Oracle 迁移到 [TiDB Cloud Serverless](https://tidbcloud.com/clusters/create-cluster)。 +本文档描述了如何使用 AWS Database Migration Service (AWS DMS) 将数据从 Amazon RDS for Oracle 迁移到 [TiDB Cloud Serverless](https://tidbcloud.com/clusters/create-cluster) 的分步示例。 如果你想了解更多关于 TiDB Cloud 和 AWS DMS 的信息,请参阅以下内容: - [TiDB Cloud](https://docs.pingcap.com/tidbcloud/) -- [TiDB 开发者指南](https://docs.pingcap.com/tidbcloud/dev-guide-overview) -- [AWS DMS 文档](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_GettingStarted.html) +- [TiDB Developer Guide](https://docs.pingcap.com/tidbcloud/dev-guide-overview) +- [AWS DMS Documentation](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_GettingStarted.html) ## 为什么使用 AWS DMS? -AWS DMS 是一项云服务,可用于迁移关系型数据库、数据仓库、NoSQL 数据库和其他类型的数据存储。 +AWS DMS 是一项云服务,可以实现关系型数据库、数据仓库、NoSQL 数据库以及其他类型数据存储的迁移。 -如果你想从异构数据库(如 PostgreSQL、Oracle 和 SQL Server)迁移数据到 TiDB Cloud,建议使用 AWS DMS。 +如果你希望将数据从异构数据库(如 PostgreSQL、Oracle 和 SQL Server)迁移到 TiDB Cloud,推荐使用 AWS DMS。 ## 部署架构 -总体上,需要执行以下步骤: +总体上,按照以下步骤操作: -1. 设置源 Amazon RDS for Oracle。 -2. 设置目标 [TiDB Cloud Serverless](https://tidbcloud.com/project/clusters/create-cluster)。 +1. 搭建源端 Amazon RDS for Oracle。 +2. 搭建目标端 [TiDB Cloud Serverless](https://tidbcloud.com/project/clusters/create-cluster)。 3. 使用 AWS DMS 设置数据迁移(全量加载)。 -下图展示了高级架构。 +下图展示了高层次的架构。 -![架构](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-0.png) +![Architecture](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-0.png) -## 前提条件 +## 前置条件 -开始之前,请阅读以下前提条件: +在开始之前,请阅读以下前置条件: -- [AWS DMS 前提条件](/tidb-cloud/migrate-from-mysql-using-aws-dms.md#prerequisites) -- [AWS Cloud 账户](https://aws.amazon.com) -- [TiDB Cloud 账户](https://tidbcloud.com) +- [AWS DMS 前置条件](/tidb-cloud/migrate-from-mysql-using-aws-dms.md#prerequisites) +- [AWS 云账号](https://aws.amazon.com) +- [TiDB Cloud 账号](https://tidbcloud.com) - [DBeaver](https://dbeaver.io/) 接下来,你将学习如何使用 AWS DMS 将数据从 Amazon RDS for Oracle 迁移到 TiDB Cloud。 ## 步骤 1. 创建 VPC -登录 [AWS 控制台](https://console.aws.amazon.com/vpc/home#vpcs:) 并创建一个 AWS VPC。你稍后需要在此 VPC 中创建 Oracle RDS 和 DMS 实例。 +登录 [AWS 控制台](https://console.aws.amazon.com/vpc/home#vpcs:) 并创建一个 AWS VPC。你需要在该 VPC 中后续创建 Oracle RDS 和 DMS 实例。 -有关如何创建 VPC 的说明,请参阅[创建 VPC](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#Create-VPC)。 +关于如何创建 VPC 的详细说明,请参阅 [创建 VPC](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#Create-VPC)。 -![创建 VPC](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-1.png) +![Create VPC](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-1.png) ## 步骤 2. 创建 Oracle 数据库实例 -在刚刚创建的 VPC 中创建一个 Oracle 数据库实例,记住密码并授予公共访问权限。你必须启用公共访问才能使用 AWS Schema Conversion Tool。请注意,不建议在生产环境中授予公共访问权限。 +在你刚刚创建的 VPC 中创建一个 Oracle 数据库实例,并记住密码,同时授予其公网访问权限。你必须启用公网访问以使用 AWS Schema Conversion Tool。注意,在生产环境中不推荐授予公网访问权限。 -有关如何创建 Oracle 数据库实例的说明,请参阅[创建 Oracle 数据库实例并连接到 Oracle 数据库实例上的数据库](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_GettingStarted.CreatingConnecting.Oracle.html)。 +关于如何创建 Oracle 数据库实例的详细说明,请参阅 [创建 Oracle 数据库实例并连接数据库](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_GettingStarted.CreatingConnecting.Oracle.html)。 -![创建 Oracle RDS](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-2.png) +![Create Oracle RDS](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-2.png) ## 步骤 3. 在 Oracle 中准备表数据 -使用以下脚本在 github_events 表中创建并填充 10000 行数据。你可以使用 github 事件数据集,并从 [GH Archive](https://gharchive.org/) 下载。它包含 10000 行数据。在 Oracle 中执行以下 SQL 脚本。 +使用以下脚本在 github_events 表中创建并填充 10000 行数据。你可以使用 github event 数据集,并从 [GH Archive](https://gharchive.org/) 下载。该数据集包含 10000 行数据。使用以下 SQL 脚本在 Oracle 中执行。 - [table_schema_oracle.sql](https://github.com/pingcap-inc/tidb-integration-script/blob/main/aws-dms/oracle_table_schema.sql) - [oracle_data.sql](https://github.com/pingcap-inc/tidb-integration-script/blob/main/aws-dms/oracle_data.sql) -执行完 SQL 脚本后,检查 Oracle 中的数据。以下示例使用 [DBeaver](https://dbeaver.io/) 查询数据: +执行完 SQL 脚本后,在 Oracle 中检查数据。以下示例使用 [DBeaver](https://dbeaver.io/) 查询数据: -![Oracle RDS 数据](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-3.png) +![Oracle RDS Data](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-3.png) ## 步骤 4. 创建 TiDB Cloud Serverless 集群 @@ -75,83 +75,83 @@ AWS DMS 是一项云服务,可用于迁移关系型数据库、数据仓库、 2. [创建 TiDB Cloud Serverless 集群](/tidb-cloud/tidb-cloud-quickstart.md)。 -3. 在[**集群**](https://tidbcloud.com/project/clusters)页面,点击目标集群名称进入其概览页面。 +3. 在 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群名称进入其概览页面。 -4. 在右上角,点击**连接**。 +4. 在右上角点击 **Connect**。 -5. 点击**生成密码**生成密码并复制生成的密码。 +5. 点击 **Generate Password** 生成密码,并复制生成的密码。 ## 步骤 5. 创建 AWS DMS 复制实例 -1. 在 AWS DMS 控制台中转到[复制实例](https://console.aws.amazon.com/dms/v2/home#replicationInstances)页面,并切换到相应的区域。 +1. 进入 AWS DMS 控制台的 [Replication instances](https://console.aws.amazon.com/dms/v2/home#replicationInstances) 页面,并切换到对应区域。 2. 在 VPC 中创建一个 `dms.t3.large` 的 AWS DMS 复制实例。 - ![创建 AWS DMS 实例](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-8.png) + ![Create AWS DMS Instance](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-8.png) -> **注意:** +> **Note:** > -> 有关创建与 TiDB Cloud Serverless 配合使用的 AWS DMS 复制实例的详细步骤,请参阅[将 AWS DMS 连接到 TiDB Cloud 集群](/tidb-cloud/tidb-cloud-connect-aws-dms.md)。 +> 关于创建可用于 TiDB Cloud Serverless 的 AWS DMS 复制实例的详细步骤,请参阅 [连接 AWS DMS 到 TiDB Cloud 集群](/tidb-cloud/tidb-cloud-connect-aws-dms.md)。 ## 步骤 6. 创建 DMS 端点 -1. 在 [AWS DMS 控制台](https://console.aws.amazon.com/dms/v2/home)中,点击左侧窗格中的 `Endpoints` 菜单项。 +1. 在 [AWS DMS 控制台](https://console.aws.amazon.com/dms/v2/home) 左侧点击 `Endpoints` 菜单项。 2. 创建 Oracle 源端点和 TiDB 目标端点。 - 以下截图显示了源端点的配置。 + 下图展示了源端点的配置。 - ![创建 AWS DMS 源端点](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-9.png) + ![Create AWS DMS Source endpoint](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-9.png) - 以下截图显示了目标端点的配置。 + 下图展示了目标端点的配置。 - ![创建 AWS DMS 目标端点](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-10.png) + ![Create AWS DMS Target endpoint](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-10.png) -> **注意:** +> **Note:** > -> 有关创建 TiDB Cloud Serverless DMS 端点的详细步骤,请参阅[将 AWS DMS 连接到 TiDB Cloud 集群](/tidb-cloud/tidb-cloud-connect-aws-dms.md)。 +> 关于创建 TiDB Cloud Serverless DMS 端点的详细步骤,请参阅 [连接 AWS DMS 到 TiDB Cloud 集群](/tidb-cloud/tidb-cloud-connect-aws-dms.md)。 -## 步骤 7. 迁移架构 +## 步骤 7. 迁移表结构 -在本示例中,由于架构定义简单,AWS DMS 会自动处理架构。 +在本示例中,AWS DMS 会自动处理表结构,因为表结构定义较为简单。 -如果你决定使用 AWS Schema Conversion Tool 迁移架构,请参阅[安装 AWS SCT](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Installing.html#CHAP_Installing.Procedure)。 +如果你决定使用 AWS Schema Conversion Tool 迁移表结构,请参阅 [安装 AWS SCT](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Installing.html#CHAP_Installing.Procedure)。 -更多信息,请参阅[使用 AWS SCT 将源架构迁移到目标数据库](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_GettingStarted.SCT.html)。 +更多信息请参阅 [使用 AWS SCT 将源表结构迁移到目标数据库](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_GettingStarted.SCT.html)。 ## 步骤 8. 创建数据库迁移任务 -1. 在 AWS DMS 控制台中,转到[数据迁移任务](https://console.aws.amazon.com/dms/v2/home#tasks)页面。切换到你的区域。然后点击窗口右上角的**创建任务**。 +1. 在 AWS DMS 控制台,进入 [Data migration tasks](https://console.aws.amazon.com/dms/v2/home#tasks) 页面。切换到你的区域,然后点击窗口右上角的 **Create task**。 - ![创建任务](/media/tidb-cloud/aws-dms-to-tidb-cloud-create-task.png) + ![Create task](/media/tidb-cloud/aws-dms-to-tidb-cloud-create-task.png) -2. 创建数据库迁移任务并指定**选择规则**: +2. 创建数据库迁移任务,并指定 **Selection rules**: - ![创建 AWS DMS 迁移任务](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-11.png) + ![Create AWS DMS migration task](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-11.png) - ![AWS DMS 迁移任务选择规则](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-12.png) + ![AWS DMS migration task selection rules](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-12.png) -3. 创建任务,启动它,然后等待任务完成。 +3. 创建任务,启动任务,然后等待任务完成。 -4. 点击**表统计信息**检查表。架构名称是 `ADMIN`。 +4. 点击 **Table statistics** 检查表。表结构名称为 `ADMIN`。 - ![检查 AWS DMS 迁移任务](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-13.png) + ![Check AWS DMS migration task](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-13.png) ## 步骤 9. 检查下游 TiDB 集群中的数据 -连接到 [TiDB Cloud Serverless 集群](https://tidbcloud.com/clusters/create-cluster)并检查 `admin.github_event` 表数据。如下截图所示,DMS 成功迁移了表 `github_events` 和 10000 行数据。 +连接到 [TiDB Cloud Serverless 集群](https://tidbcloud.com/clusters/create-cluster),检查 `admin.github_event` 表中的数据。如下面截图所示,DMS 已成功迁移表 `github_events` 及 10000 行数据。 -![检查 TiDB 中的数据](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-14.png) +![Check Data In TiDB](/media/tidb-cloud/aws-dms-from-oracle-to-tidb-14.png) ## 总结 -使用 AWS DMS,你可以按照本文档中的示例成功地从任何上游 AWS RDS 数据库迁移数据。 +通过 AWS DMS,你可以按照本文档的示例成功将数据从任意上游 AWS RDS 数据库迁移。 -如果在迁移过程中遇到任何问题或失败,你可以在 [CloudWatch](https://console.aws.amazon.com/cloudwatch/home) 中检查日志信息来排查问题。 +如果在迁移过程中遇到任何问题或失败,可以在 [CloudWatch](https://console.aws.amazon.com/cloudwatch/home) 中查看日志信息以排查问题。 -![故障排除](/media/tidb-cloud/aws-dms-to-tidb-cloud-troubleshooting.png) +![Troubleshooting](/media/tidb-cloud/aws-dms-to-tidb-cloud-troubleshooting.png) -## 另请参阅 +## 参见 - [使用 AWS DMS 从 MySQL 兼容数据库迁移](/tidb-cloud/migrate-from-mysql-using-aws-dms.md) -- [将 AWS DMS 连接到 TiDB Cloud 集群](/tidb-cloud/tidb-cloud-connect-aws-dms.md) +- [连接 AWS DMS 到 TiDB Cloud 集群](/tidb-cloud/tidb-cloud-connect-aws-dms.md) diff --git a/tidb-cloud/migrate-sql-shards.md b/tidb-cloud/migrate-sql-shards.md index 3315564b5470a..3f056f57715bc 100644 --- a/tidb-cloud/migrate-sql-shards.md +++ b/tidb-cloud/migrate-sql-shards.md @@ -1,17 +1,17 @@ --- -title: 将大规模 MySQL 分片数据迁移和合并到 TiDB Cloud -summary: 了解如何将大规模 MySQL 分片数据迁移和合并到 TiDB Cloud。 +title: 将大规模 MySQL 分片数据迁移并合并到 TiDB Cloud +summary: 了解如何将大规模 MySQL 分片数据迁移并合并到 TiDB Cloud。 --- -# 将大规模 MySQL 分片数据迁移和合并到 TiDB Cloud +# 将大规模 MySQL 分片数据迁移并合并到 TiDB Cloud -本文档介绍如何将大规模 MySQL 数据集(例如,超过 1 TiB)从不同分区迁移到 TiDB Cloud。完成全量数据迁移后,你可以根据业务需求使用 [TiDB Data Migration (DM)](https://docs.pingcap.com/tidb/stable/dm-overview) 执行增量迁移。 +本文档介绍如何将大规模 MySQL 数据集(例如,大于 1 TiB)从不同分区迁移到 TiDB Cloud。完成全量数据迁移后,你可以根据业务需求,使用 [TiDB Data Migration (DM)](https://docs.pingcap.com/tidb/stable/dm-overview) 进行增量迁移。 -本文档中的示例使用了跨多个 MySQL 实例的复杂分片迁移任务,并涉及处理自增主键的冲突。本示例中的场景也适用于合并单个 MySQL 实例中不同分片表的数据。 +本文档中的示例使用了跨多个 MySQL 实例的复杂分片迁移任务,并涉及自增主键冲突的处理。本示例场景同样适用于在单个 MySQL 实例内合并不同分片表的数据。 -## 示例环境信息 +## 示例中的环境信息 -本节描述示例中使用的上游集群、DM 和下游集群的基本信息。 +本节介绍示例中所用上游集群、DM 以及下游集群的基本信息。 ### 上游集群 @@ -38,7 +38,7 @@ summary: 了解如何将大规模 MySQL 分片数据迁移和合并到 TiDB Clou ### DM -DM 的版本是 v5.3.0。你需要手动部署 TiDB DM。详细步骤,请参见[使用 TiUP 部署 DM 集群](https://docs.pingcap.com/tidb/stable/deploy-a-dm-cluster-using-tiup)。 +DM 的版本为 v5.3.0。你需要手动部署 TiDB DM。详细步骤参见 [Deploy a DM Cluster Using TiUP](https://docs.pingcap.com/tidb/stable/deploy-a-dm-cluster-using-tiup)。 ### 外部存储 @@ -46,72 +46,73 @@ DM 的版本是 v5.3.0。你需要手动部署 TiDB DM。详细步骤,请参 ### 下游集群 -分片的 schema 和表被合并到表 `store.sales` 中。 -## 从 MySQL 到 TiDB Cloud 执行全量数据迁移 +分片的 schema 和表将被合并到表 `store.sales` 中。 -以下是将 MySQL 分片的全量数据迁移和合并到 TiDB Cloud 的步骤。 +## 从 MySQL 到 TiDB Cloud 的全量数据迁移 -在以下示例中,你只需要将表中的数据导出为 **CSV** 格式。 +以下是将 MySQL 分片的全量数据迁移并合并到 TiDB Cloud 的流程。 -### 步骤 1. 在 Amazon S3 存储桶中创建目录 +在以下示例中,你只需将表中的数据导出为 **CSV** 格式。 -在 Amazon S3 存储桶中创建一个一级目录 `store`(对应数据库级别)和一个二级目录 `sales`(对应表级别)。在 `sales` 中,为每个 MySQL 实例创建一个三级目录(对应 MySQL 实例级别)。例如: +### 步骤 1. 在 Amazon S3 bucket 中创建目录 -- 将 MySQL 实例 1 中的数据迁移到 `s3://dumpling-s3/store/sales/instance01/` -- 将 MySQL 实例 2 中的数据迁移到 `s3://dumpling-s3/store/sales/instance02/` +在 Amazon S3 bucket 中创建一级目录 `store`(对应数据库级别)和二级目录 `sales`(对应表级别)。在 `sales` 下,为每个 MySQL 实例创建三级目录(对应 MySQL 实例级别)。例如: -如果有跨多个实例的分片,你可以为每个数据库创建一个一级目录,为每个分片表创建一个二级目录。然后为每个 MySQL 实例创建一个三级目录,以便于管理。例如,如果你想将 MySQL 实例 1 和 MySQL 实例 2 中的表 `stock_N.product_N` 迁移和合并到 TiDB Cloud 中的表 `stock.products`,你可以创建以下目录: +- 将 MySQL 实例 1 的数据迁移到 `s3://dumpling-s3/store/sales/instance01/` +- 将 MySQL 实例 2 的数据迁移到 `s3://dumpling-s3/store/sales/instance02/` + +如果存在跨多个实例的分片,可以为每个数据库创建一个一级目录,为每个分片表创建一个二级目录,然后为每个 MySQL 实例创建一个三级目录以便管理。例如,如果你希望将 MySQL 实例 1 和实例 2 的 `stock_N.product_N` 表合并迁移到 TiDB Cloud 的 `stock.products` 表,可以创建如下目录: - `s3://dumpling-s3/stock/products/instance01/` - `s3://dumpling-s3/stock/products/instance02/` -### 步骤 2. 使用 Dumpling 将数据导出到 Amazon S3 +### 步骤 2. 使用 Dumpling 导出数据到 Amazon S3 -有关如何安装 Dumpling 的信息,请参见 [Dumpling 简介](https://docs.pingcap.com/tidb/stable/dumpling-overview)。 +关于如何安装 Dumpling,参见 [Dumpling Introduction](https://docs.pingcap.com/tidb/stable/dumpling-overview)。 -使用 Dumpling 将数据导出到 Amazon S3 时,请注意以下事项: +使用 Dumpling 导出数据到 Amazon S3 时,注意以下事项: -- 为上游集群启用 binlog。 +- 为上游集群开启 binlog。 - 选择正确的 Amazon S3 目录和区域。 -- 通过配置 `-t` 选项选择适当的并发度,以最小化对上游集群的影响,或直接从备份数据库导出。有关如何使用此参数的更多信息,请参见 [Dumpling 参数列表](https://docs.pingcap.com/tidb/stable/dumpling-overview#option-list-of-dumpling)。 -- 为 `--filetype csv` 和 `--no-schemas` 设置适当的值。有关如何使用这些参数的更多信息,请参见 [Dumpling 参数列表](https://docs.pingcap.com/tidb/stable/dumpling-overview#option-list-of-dumpling)。 +- 通过配置 `-t` 选项选择合适的并发度,以最小化对上游集群的影响,或直接从备份库导出。关于该参数的更多用法,参见 [Option list of Dumpling](https://docs.pingcap.com/tidb/stable/dumpling-overview#option-list-of-dumpling)。 +- 为 `--filetype csv` 和 `--no-schemas` 设置合适的值。关于这些参数的更多用法,参见 [Option list of Dumpling](https://docs.pingcap.com/tidb/stable/dumpling-overview#option-list-of-dumpling)。 -CSV 文件的命名规则如下: +CSV 文件命名规则如下: -- 如果一个表的数据被分成多个 CSV 文件,在这些 CSV 文件后面添加数字后缀。例如,`${db_name}.${table_name}.000001.csv` 和 `${db_name}.${table_name}.000002.csv`。数字后缀可以不连续但必须按升序排列。你还需要在数字前添加额外的零,以确保所有后缀的长度相同。 +- 如果一个表的数据被分割成多个 CSV 文件,需为这些 CSV 文件添加数字后缀。例如,`${db_name}.${table_name}.000001.csv` 和 `${db_name}.${table_name}.000002.csv`。数字后缀可以不连续,但必须递增。同时需要在数字前补零,保证所有后缀长度一致。 -> **注意:** +> **Note:** > -> 如果在某些情况下无法按照上述规则更新 CSV 文件名(例如,CSV 文件链接也被其他程序使用),你可以保持文件名不变,并在[步骤 5](#步骤-5-执行数据导入任务) 中使用**映射设置**将源数据导入到单个目标表。 +> 如果在某些情况下无法按照上述规则更新 CSV 文件名(例如,CSV 文件链接也被你的其他程序使用),可以保持文件名不变,并在 [步骤 5](#step-5-perform-the-data-import-task) 的 **Mapping Settings** 中,将源数据导入到单一目标表。 -要将数据导出到 Amazon S3,请执行以下操作: +导出数据到 Amazon S3 的操作如下: -1. 获取 Amazon S3 存储桶的 `AWS_ACCESS_KEY_ID` 和 `AWS_SECRET_ACCESS_KEY`。 +1. 获取 Amazon S3 bucket 的 `AWS_ACCESS_KEY_ID` 和 `AWS_SECRET_ACCESS_KEY`。 ```shell [root@localhost ~]# export AWS_ACCESS_KEY_ID={your_aws_access_key_id} [root@localhost ~]# export AWS_SECRET_ACCESS_KEY= {your_aws_secret_access_key} ``` -2. 将数据从 MySQL 实例 1 导出到 Amazon S3 存储桶中的 `s3://dumpling-s3/store/sales/instance01/` 目录。 +2. 将 MySQL 实例 1 的数据导出到 Amazon S3 bucket 的 `s3://dumpling-s3/store/sales/instance01/` 目录。 ```shell [root@localhost ~]# tiup dumpling -u {username} -p {password} -P {port} -h {mysql01-ip} -B store_01,store_02 -r 20000 --filetype csv --no-schemas -o "s3://dumpling-s3/store/sales/instance01/" --s3.region "ap-northeast-1" ``` - 有关参数的更多信息,请参见 [Dumpling 参数列表](https://docs.pingcap.com/tidb/stable/dumpling-overview#option-list-of-dumpling)。 + 关于参数的详细说明,参见 [Option list of Dumpling](https://docs.pingcap.com/tidb/stable/dumpling-overview#option-list-of-dumpling)。 -3. 将数据从 MySQL 实例 2 导出到 Amazon S3 存储桶中的 `s3://dumpling-s3/store/sales/instance02/` 目录。 +3. 将 MySQL 实例 2 的数据导出到 Amazon S3 bucket 的 `s3://dumpling-s3/store/sales/instance02/` 目录。 ```shell [root@localhost ~]# tiup dumpling -u {username} -p {password} -P {port} -h {mysql02-ip} -B store_01,store_02 -r 20000 --filetype csv --no-schemas -o "s3://dumpling-s3/store/sales/instance02/" --s3.region "ap-northeast-1" ``` -详细步骤,请参见[导出数据到 Amazon S3 云存储](https://docs.pingcap.com/tidb/stable/dumpling-overview#export-data-to-amazon-s3-cloud-storage)。 +详细步骤参见 [Export data to Amazon S3 cloud storage](https://docs.pingcap.com/tidb/stable/dumpling-overview#export-data-to-amazon-s3-cloud-storage)。 ### 步骤 3. 在 TiDB Cloud 集群中创建 schema -按照以下步骤在 TiDB Cloud 集群中创建 schema: +在 TiDB Cloud 集群中创建 schema,示例如下: ```sql mysql> CREATE DATABASE store; @@ -120,7 +121,7 @@ mysql> use store; Database changed ``` -在本示例中,上游表 `sale_01` 和 `sale_02` 的列 ID 是自增主键。在下游数据库中合并分片表时可能会发生冲突。执行以下 SQL 语句将 ID 列设置为普通索引而不是主键: +在本示例中,上游表 `sale_01` 和 `sale_02` 的 id 列为自增主键。合并分片表到下游数据库时可能会发生冲突。执行以下 SQL,将 id 列设置为普通索引而非主键: ```sql mysql> CREATE TABLE `sales` ( @@ -133,10 +134,11 @@ mysql> CREATE TABLE `sales` ( Query OK, 0 rows affected (0.17 sec) ``` -有关解决此类冲突的解决方案,请参见[移除列的 PRIMARY KEY 属性](https://docs.pingcap.com/tidb/stable/shard-merge-best-practices#remove-the-primary-key-attribute-from-the-column)。 -### 步骤 4. 配置 Amazon S3 访问 +关于此类冲突的解决方案,参见 [Remove the PRIMARY KEY attribute from the column](https://docs.pingcap.com/tidb/stable/shard-merge-best-practices#remove-the-primary-key-attribute-from-the-column)。 + +### 步骤 4. 配置 Amazon S3 访问权限 -按照[配置 Amazon S3 访问](/tidb-cloud/dedicated-external-storage.md#configure-amazon-s3-access)中的说明获取访问源数据的角色 ARN。 +按照 [Configure Amazon S3 access](/tidb-cloud/dedicated-external-storage.md#configure-amazon-s3-access) 的说明,获取访问源数据所需的 role ARN。 以下示例仅列出关键策略配置。请将 Amazon S3 路径替换为你自己的值。 @@ -171,99 +173,100 @@ Query OK, 0 rows affected (0.17 sec) ### 步骤 5. 执行数据导入任务 -配置 Amazon S3 访问后,你可以在 TiDB Cloud 控制台中执行数据导入任务,步骤如下: +配置好 Amazon S3 访问权限后,你可以在 TiDB Cloud 控制台执行数据导入任务,步骤如下: -1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 + > 你可以通过左上角的下拉框切换组织、项目和集群。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入概览页,然后点击左侧导航栏的 **Data** > **Import**。 -2. 选择**从云存储导入数据**,然后点击 **Amazon S3**。 +2. 选择 **Import data from Cloud Storage**,然后点击 **Amazon S3**。 -3. 在**从 Amazon S3 导入数据**页面,填写以下信息: +3. 在 **Import Data from Amazon S3** 页面,填写以下信息: - - **导入文件数量**:对于 TiDB Cloud Serverless,选择**多个文件**。TiDB Cloud Dedicated 中不提供此字段。 - - **包含 Schema 文件**:选择**否**。 - - **数据格式**:选择 **CSV**。 - - **文件夹 URI**:填写源数据的存储桶 URI。你可以使用对应表的二级目录,本例中为 `s3://dumpling-s3/store/sales/`,这样 TiDB Cloud 可以一次性将所有 MySQL 实例中的数据导入并合并到 `store.sales` 中。 - - **存储桶访问** > **AWS Role ARN**:输入你获取的 Role-ARN。 + - **Import File Count**:对于 TiDB Cloud Serverless,选择 **Multiple files**。该字段在 TiDB Cloud Dedicated 中不可用。 + - **Included Schema Files**:选择 **No**。 + - **Data Format**:选择 **CSV**。 + - **Folder URI**:填写源数据的 bucket URI。本例中可以使用对应表的二级目录 `s3://dumpling-s3/store/sales/`,这样 TiDB Cloud 可以一次性导入并合并所有 MySQL 实例的数据到 `store.sales`。 + - **Bucket Access** > **AWS Role ARN**:填写你获取到的 Role-ARN。 - 如果存储桶的位置与你的集群不同,请确认跨区域合规性。 + 如果 bucket 的位置与集群不同,请确认跨区域合规性。 - TiDB Cloud 开始验证是否可以访问指定存储桶 URI 中的数据。验证后,TiDB Cloud 会使用默认的文件命名模式尝试扫描数据源中的所有文件,并在下一页的左侧返回扫描摘要结果。如果遇到 `AccessDenied` 错误,请参见[排查从 S3 导入数据时的访问被拒绝错误](/tidb-cloud/troubleshoot-import-access-denied-error.md)。 + TiDB Cloud 会开始验证是否能访问指定 bucket URI 的数据。验证通过后,TiDB Cloud 会尝试使用默认文件命名模式扫描数据源中的所有文件,并在下一页左侧返回扫描摘要结果。如果遇到 `AccessDenied` 错误,参见 [Troubleshoot Access Denied Errors during Data Import from S3](/tidb-cloud/troubleshoot-import-access-denied-error.md)。 -4. 点击**连接**。 +4. 点击 **Connect**。 -5. 在**目标**部分,选择目标数据库和表。 +5. 在 **Destination** 部分,选择目标数据库和表。 - 导入多个文件时,你可以使用**高级设置** > **映射设置**为每个目标表及其对应的 CSV 文件定义自定义映射规则。之后,数据源文件将使用提供的自定义映射规则重新扫描。 + 导入多个文件时,可以通过 **Advanced Settings** > **Mapping Settings** 为每个目标表及其对应的 CSV 文件定义自定义映射规则。之后,数据源文件会根据提供的自定义映射规则重新扫描。 - 在**源文件 URI 和名称**中输入源文件 URI 和名称时,确保其格式为 `s3://[bucket_name]/[data_source_folder]/[file_name].csv`。例如,`s3://sampledata/ingest/TableName.01.csv`。 + 在 **Source File URIs and Names** 中输入源文件 URI 和名称时,确保格式为 `s3://[bucket_name]/[data_source_folder]/[file_name].csv`。例如,`s3://sampledata/ingest/TableName.01.csv`。 - 你也可以使用通配符来匹配源文件。例如: + 你也可以使用通配符匹配源文件。例如: - - `s3://[bucket_name]/[data_source_folder]/my-data?.csv`:该文件夹中以 `my-data` 开头后跟一个字符的所有 CSV 文件(如 `my-data1.csv` 和 `my-data2.csv`)将被导入到同一个目标表中。 + - `s3://[bucket_name]/[data_source_folder]/my-data?.csv`:该目录下所有以 `my-data` 开头,后跟一个字符的 CSV 文件(如 `my-data1.csv` 和 `my-data2.csv`)都将被导入到同一个目标表。 - - `s3://[bucket_name]/[data_source_folder]/my-data*.csv`:该文件夹中以 `my-data` 开头的所有 CSV 文件将被导入到同一个目标表中。 + - `s3://[bucket_name]/[data_source_folder]/my-data*.csv`:该目录下所有以 `my-data` 开头的 CSV 文件都将被导入到同一个目标表。 - 注意,仅支持 `?` 和 `*` 通配符。 + 注意,仅支持 `?` 和 `*`。 - > **注意:** + > **Note:** > > URI 必须包含数据源文件夹。 -6. 如果需要,编辑 CSV 配置。 +6. 如有需要,编辑 CSV 配置。 - 你也可以点击**编辑 CSV 配置**来配置反斜杠转义、分隔符和定界符,以实现更精细的控制。 + 你也可以点击 **Edit CSV configuration**,对反斜杠转义、分隔符和定界符进行更细粒度的控制。 - > **注意:** + > **Note:** > - > 对于分隔符、定界符和空值的配置,你可以使用字母数字字符和某些特殊字符。支持的特殊字符包括 `\t`、`\b`、`\n`、`\r`、`\f` 和 `\u0001`。 + > 分隔符、定界符和 null 的配置支持字母数字和部分特殊字符。支持的特殊字符包括 `\t`、`\b`、`\n`、`\r`、`\f` 和 `\u0001`。 -7. 点击**开始导入**。 +7. 点击 **Start Import**。 -8. 当导入进度显示**已完成**时,检查导入的表。 +8. 当导入进度显示 **Completed** 时,检查导入的表。 -数据导入后,如果你想移除 TiDB Cloud 的 Amazon S3 访问权限,只需删除你添加的策略即可。 -## 从 MySQL 到 TiDB Cloud 执行增量数据复制 +数据导入完成后,如果你希望移除 TiDB Cloud 的 Amazon S3 访问权限,只需删除你添加的策略即可。 -要基于 binlog 从上游集群的指定位置复制数据变更到 TiDB Cloud,你可以使用 TiDB Data Migration (DM) 执行增量复制。 +## 从 MySQL 到 TiDB Cloud 的增量数据同步 -### 开始之前 +要基于 binlog,将上游集群指定位置的数据变更同步到 TiDB Cloud,可以使用 TiDB Data Migration (DM) 进行增量同步。 -如果你想迁移增量数据并合并 MySQL 分片到 TiDB Cloud,你需要手动部署 TiDB DM,因为 TiDB Cloud 目前不支持迁移和合并 MySQL 分片。详细步骤,请参见[使用 TiUP 部署 DM 集群](https://docs.pingcap.com/tidb/stable/deploy-a-dm-cluster-using-tiup)。 +### 开始前准备 + +如果你希望迁移增量数据并合并 MySQL 分片到 TiDB Cloud,需要手动部署 TiDB DM,因为 TiDB Cloud 目前尚不支持迁移和合并 MySQL 分片。详细步骤参见 [Deploy a DM Cluster Using TiUP](https://docs.pingcap.com/tidb/stable/deploy-a-dm-cluster-using-tiup)。 ### 步骤 1. 添加数据源 -1. 创建一个新的数据源文件 `dm-source1.yaml` 以将上游数据源配置到 DM 中。添加以下内容: +1. 新建数据源文件 `dm-source1.yaml`,将上游数据源配置到 DM。内容如下: ```yaml - # MySQL 配置。 + # MySQL Configuration. source-id: "mysql-replica-01" - # 指定 DM-worker 是否使用 GTID(全局事务标识符)拉取 binlog。 - # 前提是你已经在上游 MySQL 中启用了 GTID。 - # 如果你已经配置上游数据库服务在不同节点之间自动切换主节点,则必须启用 GTID。 + # Specifies whether DM-worker pulls binlogs with GTID (Global Transaction Identifier). + # The prerequisite is that you have already enabled GTID in the upstream MySQL. + # If you have configured the upstream database service to switch master between different nodes automatically, you must enable GTID. enable-gtid: true from: - host: "${host}" # 例如:192.168.10.101 + host: "${host}" # For example: 192.168.10.101 user: "user01" - password: "${password}" # 支持明文密码,但不推荐。建议使用 dmctl encrypt 加密明文密码。 - port: ${port} # 例如:3307 + password: "${password}" # Plaintext passwords are supported but not recommended. It is recommended that you use dmctl encrypt to encrypt plaintext passwords. + port: ${port} # For example: 3307 ``` -2. 创建另一个新的数据源文件 `dm-source2.yaml`,并添加以下内容: +2. 新建另一个数据源文件 `dm-source2.yaml`,内容如下: ```yaml - # MySQL 配置。 + # MySQL Configuration. source-id: "mysql-replica-02" - # 指定 DM-worker 是否使用 GTID(全局事务标识符)拉取 binlog。 - # 前提是你已经在上游 MySQL 中启用了 GTID。 - # 如果你已经配置上游数据库服务在不同节点之间自动切换主节点,则必须启用 GTID。 + # Specifies whether DM-worker pulls binlogs with GTID (Global Transaction Identifier). + # The prerequisite is that you have already enabled GTID in the upstream MySQL. + # If you have configured the upstream database service to switch master between different nodes automatically, you must enable GTID. enable-gtid: true from: host: "192.168.10.102" @@ -272,20 +275,20 @@ Query OK, 0 rows affected (0.17 sec) port: 3308 ``` -3. 在终端中运行以下命令。使用 `tiup dmctl` 将第一个数据源配置加载到 DM 集群中: +3. 在终端运行以下命令,使用 `tiup dmctl` 将第一个数据源配置加载到 DM 集群: ```shell [root@localhost ~]# tiup dmctl --master-addr ${advertise-addr} operate-source create dm-source1.yaml ``` - 上述命令中使用的参数说明如下: + 上述命令参数说明如下: - |参数 |说明 | + |Parameter |Description | |- |- | - |`--master-addr` |要连接的 DM 集群中任一 DM-master 节点的 `{advertise-addr}`。例如:192.168.11.110:9261| + |`--master-addr` |要连接的集群中任意 DM-master 节点的 `{advertise-addr}`,如:192.168.11.110:9261| |`operate-source create`|将数据源加载到 DM 集群。| - 以下是示例输出: + 示例输出如下: ```shell tiup is checking updates for component dmctl ... @@ -307,13 +310,13 @@ Query OK, 0 rows affected (0.17 sec) ``` -4. 在终端中运行以下命令。使用 `tiup dmctl` 将第二个数据源配置加载到 DM 集群中: +4. 在终端运行以下命令,使用 `tiup dmctl` 将第二个数据源配置加载到 DM 集群: ```shell [root@localhost ~]# tiup dmctl --master-addr 192.168.11.110:9261 operate-source create dm-source2.yaml ``` - 以下是示例输出: + 示例输出如下: ```shell tiup is checking updates for component dmctl ... @@ -333,11 +336,12 @@ Query OK, 0 rows affected (0.17 sec) ] } ``` -### 步骤 2. 创建复制任务 -1. 为复制任务创建一个 `test-task1.yaml` 文件。 +### 步骤 2. 创建同步任务 + +1. 新建同步任务配置文件 `test-task1.yaml`。 -2. 在 Dumpling 导出的 MySQL 实例 1 的元数据文件中找到起始点。例如: +2. 在 Dumpling 导出的 MySQL 实例 1 的 metadata 文件中找到起始点。例如: ```toml Started dump at: 2022-05-25 10:16:26 @@ -348,7 +352,7 @@ Query OK, 0 rows affected (0.17 sec) Finished dump at: 2022-05-25 10:16:27 ``` -3. 在 Dumpling 导出的 MySQL 实例 2 的元数据文件中找到起始点。例如: +3. 在 Dumpling 导出的 MySQL 实例 2 的 metadata 文件中找到起始点。例如: ```toml Started dump at: 2022-05-25 10:20:32 @@ -359,25 +363,25 @@ Query OK, 0 rows affected (0.17 sec) Finished dump at: 2022-05-25 10:20:32 ``` -4. 编辑任务配置文件 `test-task1`,为每个数据源配置增量复制模式和复制起始点。 +4. 编辑任务配置文件 `test-task1`,为每个数据源配置增量同步模式和同步起始点。 ```yaml - ## ********* 任务配置 ********* + ## ********* Task Configuration ********* name: test-task1 shard-mode: "pessimistic" - # 任务模式。"incremental" 模式仅执行增量数据迁移。 + # Task mode. The "incremental" mode only performs incremental data migration. task-mode: incremental # timezone: "UTC" - ## ******** 数据源配置 ********** - ## (可选)如果你需要增量复制已经在全量数据迁移中迁移的数据,则需要启用安全模式以避免增量数据迁移错误。 - ## 这种情况在以下场景中很常见:全量迁移数据不属于数据源的一致性快照,之后 DM 从早于全量迁移的位置开始复制增量数据。 - syncers: # 同步处理单元的运行配置。 - global: # 配置名称。 - safe-mode: false # # 如果此字段设置为 true,DM 会将数据源的 INSERT 更改为目标数据库的 REPLACE, - # # 并将数据源的 UPDATE 更改为目标数据库的 DELETE 和 REPLACE。 - # # 这是为了确保当表结构包含主键或唯一索引时,DML 语句可以重复导入。 - # # 在启动或恢复增量迁移任务的第一分钟,DM 会自动启用安全模式。 + ## ******** Data Source Configuration ********** + ## (Optional) If you need to incrementally replicate data that has already been migrated in the full data migration, you need to enable the safe mode to avoid the incremental data migration error. + ## This scenario is common in the following case: the full migration data does not belong to the data source's consistency snapshot, and after that, DM starts to replicate incremental data from a position earlier than the full migration. + syncers: # The running configurations of the sync processing unit. + global: # Configuration name. + safe-mode: false # # If this field is set to true, DM changes INSERT of the data source to REPLACE for the target database, + # # and changes UPDATE of the data source to DELETE and REPLACE for the target database. + # # This is to ensure that when the table schema contains a primary key or unique index, DML statements can be imported repeatedly. + # # In the first minute of starting or resuming an incremental migration task, DM automatically enables the safe mode. mysql-instances: - source-id: "mysql-replica-01" block-allow-list: "bw-rule-1" @@ -398,14 +402,14 @@ Query OK, 0 rows affected (0.17 sec) binlog-pos: 1312659 binlog-gtid: "cd21245e-bb10-11ec-ae16-fec83cf2b903:1-4036" - ## ******** TiDB Cloud 上目标 TiDB 集群的配置 ********** - target-database: # TiDB Cloud 上的目标 TiDB 集群 + ## ******** Configuration of the target TiDB cluster on TiDB Cloud ********** + target-database: # The target TiDB cluster on TiDB Cloud host: "tidb.xxxxxxx.xxxxxxxxx.ap-northeast-1.prod.aws.tidbcloud.com" port: 4000 user: "root" - password: "${password}" # 如果密码不为空,建议使用 dmctl 加密的密文。 + password: "${password}" # If the password is not empty, it is recommended to use a dmctl-encrypted cipher. - ## ******** 功能配置 ********** + ## ******** Function Configuration ********** routes: store-route-rule: schema-pattern: "store_*" @@ -429,19 +433,19 @@ Query OK, 0 rows affected (0.17 sec) bw-rule-1: do-dbs: ["store_*"] - ## ******** 忽略检查项 ********** + ## ******** Ignore check items ********** ignore-checking-items: ["table_schema","auto_increment_ID"] ``` -有关详细的任务配置,请参见 [DM 任务配置](https://docs.pingcap.com/tidb/stable/task-configuration-file-full)。 +关于任务配置的详细说明,参见 [DM Task Configurations](https://docs.pingcap.com/tidb/stable/task-configuration-file-full)。 -为了使数据复制任务顺利运行,DM 会在任务开始时自动触发预检查并返回检查结果。DM 仅在预检查通过后才开始复制。要手动触发预检查,请运行 check-task 命令: +为保证数据同步任务顺利运行,DM 会在任务启动时自动触发预检查并返回检查结果。只有预检查通过后,DM 才会启动同步。你也可以手动触发预检查,命令如下: ```shell [root@localhost ~]# tiup dmctl --master-addr 192.168.11.110:9261 check-task dm-task.yaml ``` -以下是示例输出: +示例输出如下: ```shell tiup is checking updates for component dmctl ... @@ -454,22 +458,22 @@ Starting component `dmctl`: /root/.tiup/components/dmctl/${tidb_version}/dmctl/d } ``` -### 步骤 3. 启动复制任务 +### 步骤 3. 启动同步任务 -使用 `tiup dmctl` 运行以下命令来启动数据复制任务: +使用 `tiup dmctl` 运行以下命令,启动数据同步任务: ```shell [root@localhost ~]# tiup dmctl --master-addr ${advertise-addr} start-task dm-task.yaml ``` -上述命令中使用的参数说明如下: +上述命令参数说明如下: -|参数 |说明 | +|Parameter |Description | |- |- | -|`--master-addr` |要连接的 DM 集群中任一 DM-master 节点的 `{advertise-addr}`。例如:192.168.11.110:9261| +|`--master-addr` |要连接的集群中任意 DM-master 节点的 `{advertise-addr}`,如:192.168.11.110:9261| |`start-task` |启动迁移任务。| -以下是示例输出: +示例输出如下: ```shell tiup is checking updates for component dmctl ... @@ -498,19 +502,19 @@ Starting component `dmctl`: /root/.tiup/components/dmctl/${tidb_version}/dmctl/d } ``` -如果任务启动失败,请检查提示消息并修复配置。之后,你可以重新运行上述命令来启动任务。 +如果任务启动失败,请根据提示信息检查并修正配置,然后重新运行上述命令启动任务。 -如果遇到任何问题,请参考 [DM 错误处理](https://docs.pingcap.com/tidb/stable/dm-error-handling) 和 [DM 常见问题](https://docs.pingcap.com/tidb/stable/dm-faq)。 +如遇问题,可参考 [DM error handling](https://docs.pingcap.com/tidb/stable/dm-error-handling) 和 [DM FAQ](https://docs.pingcap.com/tidb/stable/dm-faq)。 -### 步骤 4. 检查复制任务状态 +### 步骤 4. 查看同步任务状态 -要了解 DM 集群是否有正在进行的复制任务并查看任务状态,请使用 `tiup dmctl` 运行 `query-status` 命令: +要了解 DM 集群是否有正在运行的同步任务及其状态,可使用 `tiup dmctl` 运行 `query-status` 命令: ```shell [root@localhost ~]# tiup dmctl --master-addr 192.168.11.110:9261 query-status test-task1 ``` -以下是示例输出: +示例输出如下: ```shell { @@ -596,4 +600,4 @@ Starting component `dmctl`: /root/.tiup/components/dmctl/${tidb_version}/dmctl/d } ``` -有关结果的详细解释,请参见[查询状态](https://docs.pingcap.com/tidb/stable/dm-query-status)。 +关于结果的详细解读,参见 [Query Status](https://docs.pingcap.com/tidb/stable/dm-query-status)。 \ No newline at end of file diff --git a/tidb-cloud/monitor-datadog-integration.md b/tidb-cloud/monitor-datadog-integration.md index cc6696ff92f25..0e3e267d0922d 100644 --- a/tidb-cloud/monitor-datadog-integration.md +++ b/tidb-cloud/monitor-datadog-integration.md @@ -1,70 +1,150 @@ --- -title: 将 TiDB Cloud 与 Datadog 集成(Beta) -summary: 了解如何通过 Datadog 集成监控 TiDB 集群。 +title: 将 TiDB Cloud 集成到 Datadog(预览版) +summary: 了解如何通过 Datadog 集成监控你的 TiDB 集群。 --- -# 将 TiDB Cloud 与 Datadog 集成(Beta) +# 将 TiDB Cloud 集成到 Datadog(预览版) -TiDB Cloud 支持 Datadog 集成(beta)。你可以配置 TiDB Cloud 将 TiDB 集群的指标数据发送到 [Datadog](https://www.datadoghq.com/)。之后,你可以直接在 Datadog 仪表板中查看这些指标。 +TiDB Cloud 支持 Datadog 集成(预览版)。你可以配置 TiDB Cloud,将你的 TiDB 集群的监控指标发送到 [Datadog](https://www.datadoghq.com/)。之后,你可以直接在 Datadog 仪表盘中查看这些指标。 + +## Datadog 集成版本 + +自 2022 年 3 月 4 日起,TiDB Cloud 已支持 Datadog 集成(Beta)。从 2025 年 7 月 31 日起,TiDB Cloud 推出了增强的预览版集成。 + +- **Datadog integration (Preview)**:如果在 2025 年 7 月 31 日前,你的组织内没有未删除的 Datadog 或 New Relic 集成,TiDB Cloud 会为你的组织提供 Datadog 集成的预览版,以体验最新的增强功能。 +- **Datadog integration (Beta)**:如果在 2025 年 7 月 31 日前,你的组织内至少有一个未删除的 Datadog 或 New Relic 集成,TiDB Cloud 会保留现有和新建的集成为 Beta 版本,以避免影响当前的仪表盘。我们也会主动与你联系,讨论合适的迁移方案和时间表。 ## 前提条件 -- 要将 TiDB Cloud 与 Datadog 集成,你必须拥有 Datadog 账户和 [Datadog API 密钥](https://app.datadoghq.com/organization-settings/api-keys)。首次创建 Datadog 账户时,Datadog 会授予你一个 API 密钥。 +- 要将 TiDB Cloud 集成到 Datadog,你必须拥有 Datadog 账号和 [Datadog API key](https://app.datadoghq.com/organization-settings/api-keys)。首次创建 Datadog 账号时,Datadog 会为你分配一个 API key。 - 如果你没有 Datadog 账户,请在 [https://app.datadoghq.com/signup](https://app.datadoghq.com/signup) 注册。 + 如果你还没有 Datadog 账号,请在 [https://app.datadoghq.com/signup](https://app.datadoghq.com/signup) 注册。 -- 要编辑 TiDB Cloud 的第三方集成设置,你必须在 TiDB Cloud 中拥有组织的 `Organization Owner` 访问权限或目标项目的 `Project Member` 访问权限。 +- 要为 TiDB Cloud 设置第三方监控指标集成,你必须在 TiDB Cloud 中拥有 `Organization Owner` 或 `Project Owner` 权限。要通过提供的链接访问集成页面或已配置的仪表盘,你至少需要 `Project Viewer` 角色,以访问 TiDB Cloud 项目下的目标集群。 ## 限制 -- 你不能在 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群中使用 Datadog 集成。 +- 你无法在 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群中使用 Datadog 集成。 - 当集群状态为 **CREATING**、**RESTORING**、**PAUSED** 或 **RESUMING** 时,Datadog 集成不可用。 -## 步骤 +- 当带有 Datadog 集成的集群被删除时,其关联的集成服务也会被移除。 + +## 操作步骤 + +### 步骤 1. 使用你的 Datadog API Key 进行集成 + +根据你的 [Datadog 集成版本](#datadog-集成版本),访问集成页面的步骤有所不同。 + + +
+ +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,进入你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群名称进入其概览页面。 +2. 在左侧导航栏,点击 **Settings** > **Integrations**。 +3. 在 **Integrations** 页面,点击 **Integration to Datadog (PREVIEW)**。 +4. 输入你的 Datadog API key 并选择你的 Datadog 站点。 +5. 点击 **Test Integration**。 + + - 如果测试成功,会显示 **Confirm** 按钮。 + - 如果测试失败,会显示错误信息。请根据提示进行排查并重试集成。 + +6. 点击 **Confirm** 完成集成。 + +
+
-### 步骤 1. 与你的 Datadog API 密钥集成 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的下拉框切换到你的目标项目。 +2. 在左侧导航栏,点击 **Project Settings** > **Integrations**。 +3. 在 **Integrations** 页面,点击 **Integration to Datadog (BETA)**。 +4. 输入你的 Datadog API key 并选择你的 Datadog 站点。 +5. 点击 **Test Integration**。 -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标项目。 -2. 在左侧导航栏中,点击**项目设置** > **集成**。 -3. 在**集成**页面上,点击 **Datadog 集成(BETA)**。 -4. 输入你的 Datadog API 密钥并选择 Datadog 的站点。 -5. 点击**测试集成**。 + - 如果测试成功,会显示 **Confirm** 按钮。 + - 如果测试失败,会显示错误信息。请根据提示进行排查并重试集成。 - - 如果测试成功,将显示**确认**按钮。 - - 如果测试失败,将显示错误消息。按照消息进行故障排除并重试集成。 +6. 点击 **Confirm** 完成集成。 -6. 点击**确认**以完成集成。 +
+
### 步骤 2. 在 Datadog 中安装 TiDB Cloud 集成 +根据你的 [Datadog 集成版本](#datadog-集成版本),操作步骤有所不同。 + + +
+ +在 Datadog 合并待处理的 [PR](https://github.com/DataDog/integrations-extras/pull/2751) 后,新的 TiDB Cloud 仪表盘将在 Datadog 中可用。在此之前,你可以通过以下步骤手动导入仪表盘: + +1. 在 [这里](https://github.com/pingcap/diag/blob/integration/integration/dashboards/datadog-dashboard.json) 下载新仪表盘的 JSON 文件。 +2. 登录 [Datadog](https://app.datadoghq.com),点击左侧导航栏的 **Dashboards**,然后点击右上角的 **+ New Dashboard**。 +3. 在弹出的对话框中,点击 **New Dashboard** 创建一个新的空白仪表盘。 +4. 在新建的仪表盘页面,点击右上角的 **Configure**,在弹出的面板底部点击 **Import dashboard JSON...**。 +5. 在弹出的对话框中,上传下载的 JSON 文件,完成仪表盘的设置。 + +
+
+ 1. 登录 [Datadog](https://app.datadoghq.com)。 -2. 在 Datadog 中转到 **TiDB Cloud 集成**页面([https://app.datadoghq.com/account/settings#integrations/tidb-cloud](https://app.datadoghq.com/account/settings#integrations/tidb-cloud))。 -3. 在**配置**标签中,点击**安装集成**。[**TiDBCloud 集群概览**](https://app.datadoghq.com/dash/integration/30586/tidbcloud-cluster-overview)仪表板将显示在你的[**仪表板列表**](https://app.datadoghq.com/dashboard/lists)中。 +2. 进入 Datadog 的 [**TiDB Cloud Integration** 页面](https://app.datadoghq.com/account/settings#integrations/tidb-cloud)。 +3. 在 **Configuration** 标签页,点击 **Install Integration**。 [**TiDB Cloud Cluster Overview**](https://app.datadoghq.com/dash/integration/30586/tidbcloud-cluster-overview) 仪表盘会显示在你的 [**Dashboard List**](https://app.datadoghq.com/dashboard/lists) 中。 + +
+
-## 预构建仪表板 +## 查看预置仪表盘 -点击集成中 **Datadog** 卡片的**仪表板**链接。你可以看到 TiDB 集群的预构建仪表板。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,进入 **Integrations** 页面。 +2. 根据你的 [Datadog 集成版本](#datadog-集成版本),执行以下操作之一: -## Datadog 可用的指标 + - 对于 Datadog integration (Beta),点击 **Datadog** 区域的 **Dashboard** 链接。 + - 对于 Datadog integration (Preview),点击 **Datadog** 区域的 **Dashboard** 链接,在打开的页面左侧导航栏点击 **Dashboard**,然后点击 **TiDB Cloud Dynamic Tracker**,即可查看包含完整指标的新仪表盘。 -Datadog 跟踪 TiDB 集群的以下指标数据。 + >**Note:** + > + > 对于 Datadog integration (Preview),请注意以下事项: + > + > - 在 Datadog 合并待处理的 [PR](https://github.com/DataDog/integrations-extras/pull/2751) 之前,**Dashboard** 链接会跳转到旧版仪表盘,该仪表盘不包含预览版引入的最新指标。 + > - 一旦待处理的 [PR](https://github.com/DataDog/integrations-extras/pull/2751) 被合并,**Datadog** 区域的 **Dashboard** 链接将跳转到新版仪表盘。 + +## Datadog 可用指标 + +Datadog 会跟踪你的 TiDB 集群的以下指标。 | 指标名称 | 指标类型 | 标签 | 描述 | | :------------| :---------- | :------| :----------------------------------------------------- | -| tidb_cloud.db_database_time| gauge | sql_type: Select\|Insert\|...
cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | TiDB 中运行的所有 SQL 语句每秒消耗的总时间,包括所有进程的 CPU 时间和非空闲等待时间。 | -| tidb_cloud.db_query_per_second| gauge | type: Select\|Insert\|...
cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | 所有 TiDB 实例每秒执行的 SQL 语句数量,按 SELECT、INSERT、UPDATE 和其他类型的语句计数。 | -| tidb_cloud.db_average_query_duration| gauge | sql_type: Select\|Insert\|...
cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | 从客户端的网络请求发送到 TiDB 到 TiDB 执行后将请求返回给客户端的时间间隔。 | -| tidb_cloud.db_failed_queries| gauge | type: executor:xxxx\|parser:xxxx\|...
cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | 根据每个 TiDB 实例每秒发生的 SQL 执行错误(如语法错误和主键冲突)统计的错误类型。 | -| tidb_cloud.db_total_connection| gauge | cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | TiDB 服务器中的当前连接数。 | -| tidb_cloud.db_active_connections| gauge | cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | 活动连接数。 | +| tidb_cloud.db_database_time| gauge | sql_type: Select\|Insert\|...
cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | 每秒在 TiDB 中运行的所有 SQL 语句消耗的总时间,包括所有进程的 CPU 时间和非空闲等待时间。 | +| tidb_cloud.db_query_per_second| gauge | type: Select\|Insert\|...
cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | 所有 TiDB 实例每秒执行的 SQL 语句数量,按语句类型(`SELECT`、`INSERT` 或 `UPDATE`)统计。 | +| tidb_cloud.db_average_query_duration| gauge | sql_type: Select\|Insert\|...
cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | 客户端网络请求发送到 TiDB 与 TiDB 执行后返回请求给客户端之间的持续时间。 | +| tidb_cloud.db_failed_queries| gauge | type: executor:xxxx\|parser:xxxx\|...
cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | 按每个 TiDB 实例每秒发生的 SQL 执行错误类型(如语法错误、主键冲突)进行统计。 | +| tidb_cloud.db_total_connection| gauge | cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | 当前 TiDB 服务器的连接数。 | +| tidb_cloud.db_active_connections| gauge | cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | 活跃连接数。 | | tidb_cloud.db_disconnections| gauge | result: ok\|error\|undetermined
cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | 断开连接的客户端数量。 | -| tidb_cloud.db_command_per_second| gauge | type: Query\|StmtPrepare\|...
cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | TiDB 每秒处理的命令数,根据命令执行结果的成功或失败进行分类。 | -| tidb_cloud.db_queries_using_plan_cache_ops| gauge | cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | 每秒使用[执行计划缓存](/sql-prepared-plan-cache.md)的查询统计。执行计划缓存仅支持预处理语句命令。 | -| tidb_cloud.db_transaction_per_second| gauge | txn_mode: pessimistic\|optimistic
type: abort\|commit\|...
cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | 每秒执行的事务数。 | -| tidb_cloud.node_storage_used_bytes | gauge | cluster_name: ``
instance: tikv-0\|tikv-1…\|tiflash-0\|tiflash-1…
component: tikv\|tiflash | TiKV/TiFlash 节点的磁盘使用量,以字节为单位。 | -| tidb_cloud.node_storage_capacity_bytes | gauge | cluster_name: ``
instance: tikv-0\|tikv-1…\|tiflash-0\|tiflash-1…
component: tikv\|tiflash | TiKV/TiFlash 节点的磁盘容量,以字节为单位。 | -| tidb_cloud.node_cpu_seconds_total | count | cluster_name: ``
instance: tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…
component: tidb\|tikv\|tiflash | TiDB/TiKV/TiFlash 节点的 CPU 使用率。 | -| tidb_cloud.node_cpu_capacity_cores | gauge | cluster_name: ``
instance: tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…
component: tidb\|tikv\|tiflash | TiDB/TiKV/TiFlash 节点的 CPU 核心限制。 | -| tidb_cloud.node_memory_used_bytes | gauge | cluster_name: ``
instance: tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…
component: tidb\|tikv\|tiflash | TiDB/TiKV/TiFlash 节点的已用内存,以字节为单位。 | -| tidb_cloud.node_memory_capacity_bytes | gauge | cluster_name: ``
instance: tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…
component: tidb\|tikv\|tiflash | TiDB/TiKV/TiFlash 节点的内存容量,以字节为单位。 | +| tidb_cloud.db_command_per_second| gauge | type: Query\|StmtPrepare\|...
cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | TiDB 每秒处理的命令数,按命令执行结果的成功或失败分类。 | +| tidb_cloud.db_queries_using_plan_cache_ops| gauge | cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | 每秒使用 [Plan Cache](/sql-prepared-plan-cache.md) 的查询统计。执行计划缓存仅支持 prepared statement 命令。 | +| tidb_cloud.db_transaction_per_second| gauge | txn_mode: pessimistic\|optimistic
type: abort\|commit\|...
cluster_name: ``
instance: tidb-0\|tidb-1…
component: `tidb` | 每秒执行的事务数量。 | +| tidb_cloud.node_storage_used_bytes | gauge | cluster_name: ``
instance: tikv-0\|tikv-1…\|tiflash-0\|tiflash-1…
component: tikv\|tiflash | TiKV/TiFlash 节点的磁盘使用量(字节)。 | +| tidb_cloud.node_storage_capacity_bytes | gauge | cluster_name: ``
instance: tikv-0\|tikv-1…\|tiflash-0\|tiflash-1…
component: tikv\|tiflash | TiKV/TiFlash 节点的磁盘容量(字节)。 | +| tidb_cloud.node_cpu_seconds_total | count | cluster_name: ``
instance: tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…
component: tidb\|tikv\|tiflash | TiDB/TiKV/TiFlash 节点的 CPU 使用量。 | +| tidb_cloud.node_cpu_capacity_cores | gauge | cluster_name: ``
instance: tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…
component: tidb\|tikv\|tiflash | TiDB/TiKV/TiFlash 节点的 CPU 核心数上限。 | +| tidb_cloud.node_memory_used_bytes | gauge | cluster_name: ``
instance: tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…
component: tidb\|tikv\|tiflash | TiDB/TiKV/TiFlash 节点已用内存(字节)。 | +| tidb_cloud.node_memory_capacity_bytes | gauge | cluster_name: ``
instance: tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…
component: tidb\|tikv\|tiflash | TiDB/TiKV/TiFlash 节点的内存容量(字节)。 | + +对于 Datadog integration (Preview),还可用以下附加指标: + +| 指标名称 | 指标类型 | 标签 | 描述 | +| :------------| :---------- | :------| :----------------------------------------------------- | +| tidbcloud.node_storage_available_bytes | gauge | instance: `tidb-0\|tidb-1\|...`
component: `tikv\|tiflash`
cluster_name: `` | TiKV/TiFlash 节点可用磁盘空间(字节)。 | +| tidbcloud.disk_read_latency | gauge | instance: `tidb-0\|tidb-1\|...`
component: `tikv\|tiflash`
cluster_name: ``
`device`: `nvme.*\|dm.*` | 每个存储设备的读延迟(秒)。 | +| tidbcloud.disk_write_latency | gauge | instance: `tidb-0\|tidb-1\|...`
component: `tikv\|tiflash`
cluster_name: ``
`device`: `nvme.*\|dm.*` | 每个存储设备的写延迟(秒)。 | +| tidbcloud.kv_request_duration | histogram | instance: `tidb-0\|tidb-1\|...`
component: `tikv`
cluster_name: ``
`type`: `BatchGet\|Commit\|Prewrite\|...` | 按类型统计 TiKV 请求的持续时间(秒)。 | +| tidbcloud.component_uptime | gauge | instance: `tidb-0\|tidb-1\|...`
component: `tidb\|tikv\|tiflash`
cluster_name: `` | TiDB 组件的运行时长(秒)。 | +| tidbcloud.ticdc_owner_checkpoint_ts_lag | gauge | changefeed_id: ``
cluster_name: ``| changefeed owner 的 checkpoint 时间戳延迟(秒)。 | +| tidbcloud.ticdc_owner_resolved_ts_lag | gauge | changefeed_id: ``
cluster_name: `` | changefeed owner 的 resolved 时间戳延迟(秒)。 | +| tidbcloud.changefeed_status | gauge | changefeed_id: ``
cluster_name: `` | Changefeed 状态:
`-1`: Unknown
`0`: Normal
`1`: Warning
`2`: Failed
`3`: Stopped
`4`: Finished
`6`: Warning
`7`: Other | +| tidbcloud.resource_manager_resource_unit_read_request_unit | gauge | cluster_name: ``
resource_group: `` | Resource Manager 消耗的读请求单元(RU)。 | +| tidbcloud.resource_manager_resource_unit_write_request_unit | gauge | cluster_name: ``
resource_group: `` | Resource Manager 消耗的写请求单元(RU)。 | +| tidb_cloud.dm_task_state | gauge | instance: `instance`
task: `task`
cluster_name: `` | 数据迁移任务状态:
0: Invalid
1: New
2: Running
3: Paused
4: Stopped
5: Finished
15: Error | +| tidb_cloud.dm_syncer_replication_lag_bucket | gauge | instance: `instance`
cluster_name: `` | 数据迁移的复制延迟(bucket)。 | +| tidb_cloud.dm_syncer_replication_lag_gauge | gauge | instance: `instance`
task: `task`
cluster_name: `` | 数据迁移的复制延迟(gauge)。 | +| tidb_cloud.dm_relay_read_error_count | gauge | instance: `instance`
cluster_name: `` | 从主库读取 binlog 失败次数。 | \ No newline at end of file diff --git a/tidb-cloud/monitor-new-relic-integration.md b/tidb-cloud/monitor-new-relic-integration.md index fb861408beaab..e05e8f92ed7c7 100644 --- a/tidb-cloud/monitor-new-relic-integration.md +++ b/tidb-cloud/monitor-new-relic-integration.md @@ -1,68 +1,171 @@ --- -title: 将 TiDB Cloud 与 New Relic 集成(Beta) -summary: 了解如何使用 New Relic 集成监控你的 TiDB 集群。 +title: 将 TiDB Cloud 集成到 New Relic(预览版) +summary: 了解如何通过 New Relic 集成监控你的 TiDB 集群。 --- -# 将 TiDB Cloud 与 New Relic 集成(Beta) +# 将 TiDB Cloud 集成到 New Relic(预览版) -TiDB Cloud 支持 New Relic 集成(beta)。你可以配置 TiDB Cloud 将 TiDB 集群的指标数据发送到 [New Relic](https://newrelic.com/)。之后,你可以直接在 New Relic 仪表板中查看这些指标。 +TiDB Cloud 支持 New Relic 集成(预览版)。你可以配置 TiDB Cloud,将你的 TiDB 集群的监控指标发送到 [New Relic](https://newrelic.com/)。之后,你可以直接在 New Relic 的仪表盘中查看这些指标。 -## 前提条件 +## New Relic 集成版本 -- 要将 TiDB Cloud 与 New Relic 集成,你必须拥有 New Relic 账号和 [New Relic API 密钥](https://one.newrelic.com/admin-portal/api-keys/home?)。首次创建 New Relic 账号时,New Relic 会授予你一个 API 密钥。 +自 2023 年 4 月 11 日起,TiDB Cloud 支持 New Relic 集成(Beta 版)。从 2025 年 7 月 31 日起,TiDB Cloud 推出了增强的预览版集成。 - 如果你没有 New Relic 账号,请在[此处](https://newrelic.com/signup)注册。 +- **New Relic integration (Preview)**:如果在 2025 年 7 月 31 日前,你的组织内没有未删除的 Datadog 或 New Relic 集成,TiDB Cloud 将提供 New Relic 集成的预览版,让你体验最新的增强功能。 +- **New Relic integration (Beta)**:如果在 2025 年 7 月 31 日前,你的组织内至少有一个未删除的 Datadog 或 New Relic 集成,TiDB Cloud 会保留现有和新集成的 Beta 版本,以避免影响当前的仪表盘。我们也会主动与你联系,讨论合适的迁移方案和时间表。 -- 要编辑 TiDB Cloud 的第三方集成设置,你必须拥有组织的**组织所有者**访问权限或目标项目的**项目成员**访问权限。 +## 前置条件 + +- 要将 TiDB Cloud 集成到 New Relic,你必须拥有一个 [New Relic](https://newrelic.com/) 账号,并[创建一个 `Ingest - License` 类型的 New Relic API 密钥](https://one.newrelic.com/admin-portal/api-keys/home?)。 + + 如果你还没有 New Relic 账号,请在[这里](https://newrelic.com/signup)注册。 + +- 要为 TiDB Cloud 设置第三方监控指标集成,你必须拥有 TiDB Cloud 的 `Organization Owner` 或 `Project Owner` 权限。要通过提供的链接查看集成页面或访问已配置的仪表盘,你至少需要 `Project Viewer` 角色,以访问 TiDB Cloud 项目下的目标集群。 ## 限制 -你不能在 [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless)中使用 New Relic 集成。 +- 你不能在 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群中使用 New Relic 集成。 + +- 当集群状态为 **CREATING**、**RESTORING**、**PAUSED** 或 **RESUMING** 时,New Relic 集成不可用。 + +- 当带有 New Relic 集成的集群被删除时,其关联的集成服务也会被移除。 + +## 操作步骤 + +### 步骤 1. 使用你的 New Relic API Key 进行集成 + +根据你的 [New Relic 集成版本](#new-relic-集成版本),访问集成页面的步骤有所不同。 + + +
+ +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群名称,进入其概览页面。 +2. 在左侧导航栏,点击 **Settings** > **Integrations**。 +3. 在 **Integrations** 页面,点击 **Integration to New Relic (Preview)**。 +4. 输入你的 New Relic API Key,并选择 New Relic 的站点。 +5. 点击 **Test Integration**。 + + - 如果测试成功,会显示 **Confirm** 按钮。 + - 如果测试失败,会显示错误信息。请根据提示排查问题并重试集成。 + +6. 点击 **Confirm** 完成集成。 + +
+
+ +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的下拉框切换到你的目标项目。 +2. 在左侧导航栏,点击 **Project Settings** > **Integrations**。 +3. 在 **Integrations** 页面,点击 **Integration to New Relic (BETA)**。 +4. 输入你的 New Relic API Key,并选择 New Relic 的站点。 +5. 点击 **Test Integration**。 + + - 如果测试成功,会显示 **Confirm** 按钮。 + - 如果测试失败,会显示错误信息。请根据提示排查问题并重试集成。 + +6. 点击 **Confirm** 完成集成。 -## 步骤 +
+
-### 步骤 1. 与你的 New Relic API 密钥集成 +### 步骤 2. 在 New Relic 中添加 TiDB Cloud 仪表盘 -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标项目。 -2. 在左侧导航栏中,点击**项目设置** > **集成**。 -3. 在**集成**页面上,点击 **New Relic 集成(BETA)**。 -4. 输入你的 New Relic API 密钥并选择 New Relic 的站点。 -5. 点击**测试集成**。 +根据你的 [New Relic 集成版本](#new-relic-集成版本),操作步骤有所不同。 - - 如果测试成功,将显示**确认**按钮。 - - 如果测试失败,将显示错误消息。按照消息进行故障排除并重试集成。 + +
-6. 点击**确认**完成集成。 +在 New Relic 合并待处理的 [PR](https://github.com/newrelic/newrelic-quickstarts/pull/2681) 后,将会有新的 TiDB Cloud 仪表盘可用。在此之前,你可以通过以下步骤手动导入仪表盘: -### 步骤 2. 在 New Relic 中添加 TiDB Cloud 仪表板 +1. 准备新仪表盘的 JSON 文件。 + + 1. 在[这里](https://github.com/pingcap/diag/blob/integration/integration/dashboards/newrelic-dashboard.json)下载模板 JSON 文件。 + 2. 在 JSON 文件的第 4 行添加 `"permissions": "PUBLIC_READ_WRITE"`,如下所示: + + ```json + { + "name": "TiDB Cloud Dynamic Tracker", + "description": null, + "permissions": "PUBLIC_READ_WRITE", + ... + } + ``` + + 3. 在 JSON 文件的所有 `"accountIds": []` 字段中,添加你的 New Relic 账号 ID。 + + 例如: + + ```json + "accountIds": [ + 1234567 + ], + ``` + + > **注意**: + > + > 为避免集成报错,请确保你的账号 ID 已添加到 JSON 文件中所有的 `"accountIds"` 字段。 + +2. 登录 [New Relic](https://one.newrelic.com/),点击左侧导航栏的 **Dashboards**,然后点击右上角的 **Import dashboard**。 +3. 在弹出的对话框中,将准备好的 JSON 文件内容全部粘贴到文本区域,然后点击 **Import dashboard**。 + +
+
1. 登录 [New Relic](https://one.newrelic.com/)。 -2. 点击**添加数据**,搜索 `TiDB Cloud`,然后转到 **TiDB Cloud 监控**页面。或者,你可以点击[链接](https://one.newrelic.com/marketplace?state=79bf274b-0c01-7960-c85c-3046ca96568e)直接访问该页面。 -3. 选择你的账号 ID 并在 New Relic 中创建仪表板。 +2. 点击 **Add Data**,搜索 `TiDB Cloud`,然后进入 **TiDB Cloud Monitoring** 页面。你也可以直接点击[此链接](https://one.newrelic.com/marketplace?state=79bf274b-0c01-7960-c85c-3046ca96568e)访问该页面。 +3. 选择你的账号 ID,并在 New Relic 中创建仪表盘。 -## 预构建仪表板 +
+
-点击集成中 **New Relic** 卡片中的**仪表板**链接。你可以看到 TiDB 集群的预构建仪表板。 +## 查看预置仪表盘 -## New Relic 可用的指标 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,进入 **Integrations** 页面。 -New Relic 跟踪你的 TiDB 集群的以下指标数据。 +2. 在 **New Relic** 区域点击 **Dashboard** 链接,查看你的 TiDB 集群的预置仪表盘。 + +3. 根据你的 [New Relic 集成版本](#new-relic-集成版本),执行以下操作之一: + + - 对于 New Relic integration (Preview),点击 **TiDB Cloud Dynamic Tracker** 查看新仪表盘。 + - 对于 New Relic integration (Beta),点击 **TiDB Cloud Monitoring** 查看旧版仪表盘。 + +## New Relic 可用指标 + +New Relic 会跟踪你的 TiDB 集群的以下指标。 | 指标名称 | 指标类型 | 标签 | 描述 | | :------------| :---------- | :------| :----------------------------------------------------- | -| tidb_cloud.db_database_time| gauge | sql_type: Select\|Insert\|...

cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | TiDB 中运行的所有 SQL 语句每秒消耗的总时间,包括所有进程的 CPU 时间和非空闲等待时间。 | -| tidb_cloud.db_query_per_second| gauge | type: Select\|Insert\|...

cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | 所有 TiDB 实例每秒执行的 SQL 语句数量,按 `SELECT`、`INSERT`、`UPDATE` 等类型的语句计数。 | -| tidb_cloud.db_average_query_duration| gauge | sql_type: Select\|Insert\|...

cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | 从客户端的网络请求发送到 TiDB 到 TiDB 执行后将请求返回给客户端的时间间隔。 | -| tidb_cloud.db_failed_queries| gauge | type: executor:xxxx\|parser:xxxx\|...

cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | 根据每个 TiDB 实例每秒发生的 SQL 执行错误(如语法错误和主键冲突)统计的错误类型。 | -| tidb_cloud.db_total_connection| gauge | cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | TiDB 服务器中的当前连接数。 | -| tidb_cloud.db_active_connections| gauge | cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | 活动连接数。 | +| tidb_cloud.db_database_time| gauge | sql_type: Select\|Insert\|...

cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | 每秒在 TiDB 上运行的所有 SQL 语句消耗的总时间,包括所有进程的 CPU 时间和非空闲等待时间。 | +| tidb_cloud.db_query_per_second| gauge | type: Select\|Insert\|...

cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | 所有 TiDB 实例每秒执行的 SQL 语句数量,按 `SELECT`、`INSERT`、`UPDATE` 等类型统计。 | +| tidb_cloud.db_average_query_duration| gauge | sql_type: Select\|Insert\|...

cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | 客户端网络请求发送到 TiDB 与 TiDB 执行后返回给客户端之间的耗时。 | +| tidb_cloud.db_failed_queries| gauge | type: executor:xxxx\|parser:xxxx\|...

cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | 每秒每个 TiDB 实例发生的 SQL 执行错误的类型统计(如语法错误、主键冲突等)。 | +| tidb_cloud.db_total_connection| gauge | cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | 当前 TiDB 服务器的连接数。 | +| tidb_cloud.db_active_connections| gauge | cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | 活跃连接数。 | | tidb_cloud.db_disconnections| gauge | result: ok\|error\|undetermined

cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | 断开连接的客户端数量。 | -| tidb_cloud.db_command_per_second| gauge | type: Query\|StmtPrepare\|...

cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | TiDB 每秒处理的命令数量,根据命令执行结果的成功或失败进行分类。 | -| tidb_cloud.db_queries_using_plan_cache_ops| gauge | cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | 每秒使用[执行计划缓存](/sql-prepared-plan-cache.md)的查询统计。执行计划缓存仅支持预处理语句命令。 | +| tidb_cloud.db_command_per_second| gauge | type: Query\|StmtPrepare\|...

cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | TiDB 每秒处理的命令数,按命令执行结果的成功或失败分类。 | +| tidb_cloud.db_queries_using_plan_cache_ops| gauge | cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | 每秒使用 [Plan Cache](/sql-prepared-plan-cache.md) 的查询统计。执行计划缓存仅支持 prepared statement 命令。 | | tidb_cloud.db_transaction_per_second| gauge | txn_mode: pessimistic\|optimistic

type: abort\|commit\|...

cluster_name: ``

instance: tidb-0\|tidb-1…

component: `tidb` | 每秒执行的事务数。 | -| tidb_cloud.node_storage_used_bytes | gauge | cluster_name: ``

instance: tikv-0\|tikv-1…\|tiflash-0\|tiflash-1…

component: tikv\|tiflash | TiKV/TiFlash 节点的磁盘使用量,以字节为单位。 | -| tidb_cloud.node_storage_capacity_bytes | gauge | cluster_name: ``

instance: tikv-0\|tikv-1…\|tiflash-0\|tiflash-1…

component: tikv\|tiflash | TiKV/TiFlash 节点的磁盘容量,以字节为单位。 | -| tidb_cloud.node_cpu_seconds_total | count | cluster_name: ``

instance: tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…

component: tidb\|tikv\|tiflash | TiDB/TiKV/TiFlash 节点的 CPU 使用率。 | -| tidb_cloud.node_cpu_capacity_cores | gauge | cluster_name: ``

instance: tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…

component: tidb\|tikv\|tiflash | TiDB/TiKV/TiFlash 节点的 CPU 核心限制。 | -| tidb_cloud.node_memory_used_bytes | gauge | cluster_name: ``

instance: tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…

component: tidb\|tikv\|tiflash | TiDB/TiKV/TiFlash 节点的已用内存,以字节为单位。 | -| tidb_cloud.node_memory_capacity_bytes | gauge | cluster_name: ``

instance: tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…

component: tidb\|tikv\|tiflash | TiDB/TiKV/TiFlash 节点的内存容量,以字节为单位。 | +| tidb_cloud.node_storage_used_bytes | gauge | cluster_name: ``

instance: tikv-0\|tikv-1…\|tiflash-0\|tiflash-1…

component: tikv\|tiflash | TiKV/TiFlash 节点的磁盘使用量(字节)。 | +| tidb_cloud.node_storage_capacity_bytes | gauge | cluster_name: ``

instance: tikv-0\|tikv-1…\|tiflash-0\|tiflash-1…

component: tikv\|tiflash | TiKV/TiFlash 节点的磁盘容量(字节)。 | +| tidb_cloud.node_cpu_seconds_total | count | cluster_name: ``

instance: tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…

component: tidb\|tikv\|tiflash | TiDB/TiKV/TiFlash 节点的 CPU 使用量。 | +| tidb_cloud.node_cpu_capacity_cores | gauge | cluster_name: ``

instance: tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…

component: tidb\|tikv\|tiflash | TiDB/TiKV/TiFlash 节点的 CPU 核心数上限。 | +| tidb_cloud.node_memory_used_bytes | gauge | cluster_name: ``

instance: tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…

component: tidb\|tikv\|tiflash | TiDB/TiKV/TiFlash 节点已用内存(字节)。 | +| tidb_cloud.node_memory_capacity_bytes | gauge | cluster_name: ``

instance: tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…

component: tidb\|tikv\|tiflash | TiDB/TiKV/TiFlash 节点的内存容量(字节)。 | + +对于 New Relic integration (Preview),还支持以下额外指标: + +| 指标名称 | 指标类型 | 标签 | 描述 | +| :------------| :---------- | :------| :----------------------------------------------------- | +| tidbcloud.node_storage_available_bytes | gauge | instance: `tidb-0\|tidb-1\|...`
component: `tikv\|tiflash`
cluster_name: `` | TiKV 或 TiFlash 节点可用磁盘空间(字节)。 | +| tidbcloud.disk_read_latency | gauge | instance: `tidb-0\|tidb-1\|...`
component: `tikv\|tiflash`
cluster_name: ``
`device`: `nvme.*\|dm.*` | 每个存储设备的读延迟(秒)。 | +| tidbcloud.disk_write_latency | gauge | instance: `tidb-0\|tidb-1\|...`
component: `tikv\|tiflash`
cluster_name: ``
`device`: `nvme.*\|dm.*` | 每个存储设备的写延迟(秒)。 | +| tidbcloud.kv_request_duration | histogram | instance: `tidb-0\|tidb-1\|...`
component: `tikv`
cluster_name: ``
`type`: `BatchGet\|Commit\|Prewrite\|...` | TiKV 按类型请求的耗时(秒)。 | +| tidbcloud.component_uptime | gauge | instance: `tidb-0\|tidb-1\|...`
component: `tidb\|tikv\|tiflash`
cluster_name: `` | TiDB 组件的运行时长(秒)。 | +| tidbcloud.ticdc_owner_checkpoint_ts_lag | gauge | changefeed_id: ``
cluster_name: ``| changefeed owner 的 checkpoint 时间戳延迟(秒)。 | +| tidbcloud.ticdc_owner_resolved_ts_lag | gauge | changefeed_id: ``
cluster_name: `` | changefeed owner 的 resolved 时间戳延迟(秒)。 | +| tidbcloud.changefeed_status | gauge | changefeed_id: ``
cluster_name: `` | Changefeed 状态:
`-1`: Unknown
`0`: Normal
`1`: Warning
`2`: Failed
`3`: Stopped
`4`: Finished
`6`: Warning
`7`: Other | +| tidbcloud.resource_manager_resource_unit_read_request_unit | gauge | cluster_name: ``
resource_group: `` | Resource Manager 消耗的读请求单元(RU)。 | +| tidbcloud.resource_manager_resource_unit_write_request_unit | gauge | cluster_name: ``
resource_group: `` | Resource Manager 消耗的写请求单元(RU)。 | +| tidb_cloud.dm_task_state | gauge | instance: `instance`
task: `task`
cluster_name: `` | 数据迁移任务状态:
0: Invalid
1: New
2: Running
3: Paused
4: Stopped
5: Finished
15: Error | +| tidb_cloud.dm_syncer_replication_lag_bucket | gauge | instance: `instance`
cluster_name: `` | 数据迁移的同步延迟(bucket)。 | +| tidb_cloud.dm_syncer_replication_lag_gauge | gauge | instance: `instance`
task: `task`
cluster_name: `` | 数据迁移的同步延迟(gauge)。 | +| tidb_cloud.dm_relay_read_error_count | gauge | instance: `instance`
cluster_name: `` | 从主库读取 binlog 失败次数。 | \ No newline at end of file diff --git a/tidb-cloud/monitor-prometheus-and-grafana-integration.md b/tidb-cloud/monitor-prometheus-and-grafana-integration.md index 9622c4f78ab7f..2c5ed198f8688 100644 --- a/tidb-cloud/monitor-prometheus-and-grafana-integration.md +++ b/tidb-cloud/monitor-prometheus-and-grafana-integration.md @@ -1,23 +1,23 @@ --- -title: 将 TiDB Cloud 与 Prometheus 和 Grafana 集成(Beta) +title: 集成 TiDB Cloud 与 Prometheus 和 Grafana(Beta) summary: 了解如何通过 Prometheus 和 Grafana 集成监控你的 TiDB 集群。 --- -# 将 TiDB Cloud 与 Prometheus 和 Grafana 集成(Beta) +# 集成 TiDB Cloud 与 Prometheus 和 Grafana(Beta) -TiDB Cloud 提供了一个 [Prometheus](https://prometheus.io/) API 端点(beta)。如果你有 Prometheus 服务,可以轻松地从该端点监控 TiDB Cloud 的关键指标。 +TiDB Cloud 提供了一个 [Prometheus](https://prometheus.io/) API 端点(Beta)。如果你拥有 Prometheus 服务,可以轻松地通过该端点监控 TiDB Cloud 的关键指标。 -本文档描述如何配置你的 Prometheus 服务以从 TiDB Cloud 端点读取关键指标,以及如何使用 [Grafana](https://grafana.com/) 查看这些指标。 +本文档介绍了如何配置 Prometheus 服务以从 TiDB Cloud 端点读取关键指标,以及如何使用 [Grafana](https://grafana.com/) 查看这些指标。 ## 前提条件 -- 要将 TiDB Cloud 与 Prometheus 集成,你必须有一个自托管或托管的 Prometheus 服务。 +- 若要将 TiDB Cloud 与 Prometheus 集成,你必须拥有自托管或托管的 Prometheus 服务。 -- 要编辑 TiDB Cloud 的第三方集成设置,你必须在 TiDB Cloud 中拥有组织的 `Organization Owner` 访问权限或目标项目的 `Project Member` 访问权限。 +- 若要编辑 TiDB Cloud 的第三方集成设置,你必须拥有组织的 **Organization Owner** 权限,或在 TiDB Cloud 中拥有目标项目的 **Project Member** 权限。 ## 限制 -- 你不能在 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群中使用 Prometheus 和 Grafana 集成。 +- 你无法在 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群中使用 Prometheus 和 Grafana 集成。 - 当集群状态为 **CREATING**、**RESTORING**、**PAUSED** 或 **RESUMING** 时,Prometheus 和 Grafana 集成不可用。 @@ -25,87 +25,87 @@ TiDB Cloud 提供了一个 [Prometheus](https://prometheus.io/) API 端点(bet ### 步骤 1. 获取 Prometheus 的 scrape_config 文件 -在配置 Prometheus 服务以读取 TiDB Cloud 的指标之前,你需要先在 TiDB Cloud 中生成一个 `scrape_config` YAML 文件。`scrape_config` 文件包含一个唯一的持有者令牌,允许 Prometheus 服务监控当前项目中的任何数据库集群。 +在配置 Prometheus 服务以读取 TiDB Cloud 指标之前,你需要先在 TiDB Cloud 中生成一个 `scrape_config` YAML 文件。该 `scrape_config` 文件包含一个唯一的 bearer token,允许 Prometheus 服务监控当前项目中的所有数据库集群。 要获取 Prometheus 的 `scrape_config` 文件,请执行以下操作: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标项目。 -2. 在左侧导航栏中,点击 **Project Settings** > **Integrations**。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,使用左上角的下拉框切换到你的目标项目。 +2. 在左侧导航栏,点击 **Project Settings** > **Integrations**。 3. 在 **Integrations** 页面,点击 **Integration to Prometheus (BETA)**。 -4. 点击 **Add File** 为当前项目生成并显示 scrape_config 文件。 +4. 点击 **Add File**,为当前项目生成并显示 scrape_config 文件。 -5. 复制 `scrape_config` 文件内容以供后续使用。 +5. 复制 `scrape_config` 文件的内容,以备后续使用。 > **注意:** > - > 出于安全考虑,TiDB Cloud 只会显示一次新生成的 `scrape_config` 文件。确保在关闭文件窗口之前复制内容。如果忘记复制,你需要在 TiDB Cloud 中删除 `scrape_config` 文件并生成一个新文件。要删除 `scrape_config` 文件,选择该文件,点击 **...**,然后点击 **Delete**。 + > 出于安全考虑,TiDB Cloud 只会显示新生成的 `scrape_config` 文件一次。请确保在关闭文件窗口前复制内容。如果忘记复制,需要在 TiDB Cloud 中删除该 `scrape_config` 文件并重新生成。要删除 `scrape_config` 文件,选择该文件,点击 **...**,然后点击 **Delete**。 -### 步骤 2. 与 Prometheus 集成 +### 步骤 2. 集成 Prometheus -1. 在 Prometheus 服务指定的监控目录中,找到 Prometheus 配置文件。 +1. 在你的 Prometheus 服务指定的监控目录中,找到 Prometheus 配置文件。 例如,`/etc/prometheus/prometheus.yml`。 2. 在 Prometheus 配置文件中,找到 `scrape_configs` 部分,然后将从 TiDB Cloud 获取的 `scrape_config` 文件内容复制到该部分。 -3. 在你的 Prometheus 服务中,检查 **Status** > **Targets** 以确认新的 `scrape_config` 文件已被读取。如果没有,你可能需要重启 Prometheus 服务。 +3. 在你的 Prometheus 服务中,检查 **Status** > **Targets**,确认新的 `scrape_config` 文件已被读取。如果没有,你可能需要重启 Prometheus 服务。 -### 步骤 3. 使用 Grafana GUI 仪表板可视化指标 +### 步骤 3. 使用 Grafana GUI 仪表盘可视化指标 -在你的 Prometheus 服务从 TiDB Cloud 读取指标后,你可以按照以下步骤使用 Grafana GUI 仪表板来可视化指标: +当你的 Prometheus 服务已从 TiDB Cloud 读取指标后,可以按如下方式使用 Grafana GUI 仪表盘进行可视化: -1. 在[这里](https://github.com/pingcap/docs/blob/master/tidb-cloud/monitor-prometheus-and-grafana-integration-grafana-dashboard-UI.json)下载 TiDB Cloud 的 Grafana 仪表板 JSON。 +1. 在 [此处](https://github.com/pingcap/docs/blob/master/tidb-cloud/monitor-prometheus-and-grafana-integration-grafana-dashboard-UI.json) 下载 TiDB Cloud 的 Grafana 仪表盘 JSON 文件。 -2. [将此 JSON 导入到你自己的 Grafana GUI](https://grafana.com/docs/grafana/v8.5/dashboards/export-import/#import-dashboard) 以可视化指标。 +2. [将该 JSON 导入到你自己的 Grafana GUI](https://grafana.com/docs/grafana/v8.5/dashboards/export-import/#import-dashboard) 以可视化指标。 > **注意:** > - > 如果你已经在使用 Prometheus 和 Grafana 监控 TiDB Cloud,并想要整合新可用的指标,建议你创建一个新的仪表板,而不是直接更新现有仪表板的 JSON。 + > 如果你已经在使用 Prometheus 和 Grafana 监控 TiDB Cloud,并希望引入新提供的指标,建议新建一个仪表盘,而不是直接更新现有仪表盘的 JSON。 -3. (可选)根据需要自定义仪表板,例如添加或删除面板、更改数据源和修改显示选项。 +3. (可选)根据需要自定义仪表盘,例如添加或移除面板、变更数据源、修改显示选项等。 -有关如何使用 Grafana 的更多信息,请参见 [Grafana 文档](https://grafana.com/docs/grafana/latest/getting-started/getting-started-prometheus/)。 +关于如何使用 Grafana 的更多信息,请参见 [Grafana 文档](https://grafana.com/docs/grafana/latest/getting-started/getting-started-prometheus/)。 -## 轮换 scrape_config 的最佳实践 +## scrape_config 的轮换最佳实践 -为了提高数据安全性,定期轮换 `scrape_config` 文件持有者令牌是一般的最佳实践。 +为提升数据安全性,建议定期轮换 `scrape_config` 文件中的 bearer token。 -1. 按照[步骤 1](#步骤-1-获取-prometheus-的-scrape_config-文件)为 Prometheus 创建一个新的 `scrape_config` 文件。 +1. 按照 [步骤 1](#step-1-get-a-scrape_config-file-for-prometheus) 为 Prometheus 创建新的 `scrape_config` 文件。 2. 将新文件的内容添加到你的 Prometheus 配置文件中。 -3. 一旦确认你的 Prometheus 服务仍然能够从 TiDB Cloud 读取数据,从你的 Prometheus 配置文件中删除旧的 `scrape_config` 文件内容。 -4. 在你项目的 **Integrations** 页面上,删除相应的旧 `scrape_config` 文件,以阻止其他人使用它从 TiDB Cloud Prometheus 端点读取数据。 +3. 确认 Prometheus 服务仍能从 TiDB Cloud 读取数据后,从 Prometheus 配置文件中移除旧的 `scrape_config` 文件内容。 +4. 在项目的 **Integrations** 页面,删除对应的旧 `scrape_config` 文件,防止他人使用其读取 TiDB Cloud Prometheus 端点。 -## Prometheus 可用的指标 +## Prometheus 可用指标 -Prometheus 跟踪你的 TiDB 集群的以下指标数据。 +Prometheus 会跟踪你的 TiDB 集群的以下指标数据。 -| 指标名称 | 指标类型 | 标签 | 描述 | +| 指标名称 | 指标类型 | 标签 | 描述 | |:--- |:--- |:--- |:--- | | tidbcloud_db_queries_total| count | sql_type: `Select\|Insert\|...`
cluster_name: ``
instance: `tidb-0\|tidb-1…`
component: `tidb` | 执行的语句总数 | | tidbcloud_db_failed_queries_total | count | type: `planner:xxx\|executor:2345\|...`
cluster_name: ``
instance: `tidb-0\|tidb-1…`
component: `tidb` | 执行错误的总数 | -| tidbcloud_db_connections | gauge | cluster_name: ``
instance: `tidb-0\|tidb-1…`
component: `tidb` | TiDB 服务器中的当前连接数 | -| tidbcloud_db_query_duration_seconds | histogram | sql_type: `Select\|Insert\|...`
cluster_name: ``
instance: `tidb-0\|tidb-1…`
component: `tidb` | 语句的持续时间直方图 | -| tidbcloud_changefeed_latency | gauge | changefeed_id | 变更数据捕获上游和下游之间的数据复制延迟 | -| tidbcloud_changefeed_checkpoint_ts | gauge | changefeed_id | 变更数据捕获的检查点时间戳,表示成功写入下游的最大 TSO(时间戳预言机) | -| tidbcloud_changefeed_replica_rows | gauge | changefeed_id | 变更数据捕获每秒写入下游的复制行数 | -| tidbcloud_node_storage_used_bytes | gauge | cluster_name: ``
instance: `tikv-0\|tikv-1…\|tiflash-0\|tiflash-1…`
component: `tikv\|tiflash` | TiKV/TiFlash 节点的磁盘使用字节数 | +| tidbcloud_db_connections | gauge | cluster_name: ``
instance: `tidb-0\|tidb-1…`
component: `tidb` | 当前 TiDB 服务器的连接数 | +| tidbcloud_db_query_duration_seconds | histogram | sql_type: `Select\|Insert\|...`
cluster_name: ``
instance: `tidb-0\|tidb-1…`
component: `tidb` | 语句的耗时直方图 | +| tidbcloud_changefeed_latency | gauge | changefeed_id | changefeed 上游与下游之间的数据同步延迟 | +| tidbcloud_changefeed_checkpoint_ts | gauge | changefeed_id | changefeed 的检查点时间戳,表示已成功写入下游的最大 TSO(Timestamp Oracle)| +| tidbcloud_changefeed_replica_rows | gauge | changefeed_id | changefeed 每秒写入下游的同步行数 | +| tidbcloud_node_storage_used_bytes | gauge | cluster_name: ``
instance: `tikv-0\|tikv-1…\|tiflash-0\|tiflash-1…`
component: `tikv\|tiflash` | TiKV/TiFlash 节点的磁盘已用字节数 | | tidbcloud_node_storage_capacity_bytes | gauge | cluster_name: ``
instance: `tikv-0\|tikv-1…\|tiflash-0\|tiflash-1…`
component: `tikv\|tiflash` | TiKV/TiFlash 节点的磁盘容量字节数 | -| tidbcloud_node_cpu_seconds_total | count | cluster_name: ``
instance: `tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…`
component: `tidb\|tikv\|tiflash` | TiDB/TiKV/TiFlash 节点的 CPU 使用率 | -| tidbcloud_node_cpu_capacity_cores | gauge | cluster_name: ``
instance: `tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…`
component: `tidb\|tikv\|tiflash` | TiDB/TiKV/TiFlash 节点的 CPU 限制核心数 | +| tidbcloud_node_cpu_seconds_total | count | cluster_name: ``
instance: `tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…`
component: `tidb\|tikv\|tiflash` | TiDB/TiKV/TiFlash 节点的 CPU 使用量 | +| tidbcloud_node_cpu_capacity_cores | gauge | cluster_name: ``
instance: `tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…`
component: `tidb\|tikv\|tiflash` | TiDB/TiKV/TiFlash 节点的 CPU 限制核数 | | tidbcloud_node_memory_used_bytes | gauge | cluster_name: ``
instance: `tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…`
component: `tidb\|tikv\|tiflash` | TiDB/TiKV/TiFlash 节点的已用内存字节数 | | tidbcloud_node_memory_capacity_bytes | gauge | cluster_name: ``
instance: `tidb-0\|tidb-1…\|tikv-0…\|tiflash-0…`
component: `tidb\|tikv\|tiflash` | TiDB/TiKV/TiFlash 节点的内存容量字节数 | -| tidbcloud_node_storage_available_bytes | gauge | instance: `tidb-0\|tidb-1\|...`
component: `tikv\|tiflash`
cluster_name: `` | TiKV/TiFlash 节点的可用磁盘空间字节数 | -| tidbcloud_disk_read_latency | histogram | instance: `tidb-0\|tidb-1\|...`
component: `tikv\|tiflash`
cluster_name: ``
`device`: `nvme.*\|dm.*` | 每个存储设备的读取延迟(秒) | -| tidbcloud_disk_write_latency | histogram | instance: `tidb-0\|tidb-1\|...`
component: `tikv\|tiflash`
cluster_name: ``
`device`: `nvme.*\|dm.*` | 每个存储设备的写入延迟(秒) | -| tidbcloud_kv_request_duration | histogram | instance: `tidb-0\|tidb-1\|...`
component: `tikv`
cluster_name: ``
`type`: `BatchGet\|Commit\|Prewrite\|...` | 按类型划分的 TiKV 请求持续时间(秒) | -| tidbcloud_component_uptime | histogram | instance: `tidb-0\|tidb-1\|...`
component: `tidb\|tikv\|pd\|...`
cluster_name: `` | TiDB 组件的运行时间(秒) | -| tidbcloud_ticdc_owner_resolved_ts_lag | gauge | changefeed_id: ``
cluster_name: `` | 变更数据捕获所有者的已解析时间戳延迟(秒) | -| tidbcloud_changefeed_status | gauge | changefeed_id: ``
cluster_name: `` | 变更数据捕获状态:
`-1`: 未知
`0`: 正常
`1`: 警告
`2`: 失败
`3`: 已停止
`4`: 已完成
`6`: 警告
`7`: 其他 | -| tidbcloud_resource_manager_resource_unit_read_request_unit | gauge | cluster_name: ``
resource_group: `` | 资源管理器消耗的读请求单位 | -| tidbcloud_resource_manager_resource_unit_write_request_unit | gauge | cluster_name: ``
resource_group: `` | 资源管理器消耗的写请求单位 | +| tidbcloud_node_storage_available_bytes | gauge | instance: `tidb-0\|tidb-1\|...`
component: `tikv\|tiflash`
cluster_name: `` | TiKV/TiFlash 节点可用磁盘空间(字节)| +| tidbcloud_disk_read_latency | histogram | instance: `tidb-0\|tidb-1\|...`
component: `tikv\|tiflash`
cluster_name: ``
`device`: `nvme.*\|dm.*` | 每个存储设备的读延迟(秒)| +| tidbcloud_disk_write_latency | histogram | instance: `tidb-0\|tidb-1\|...`
component: `tikv\|tiflash`
cluster_name: ``
`device`: `nvme.*\|dm.*` | 每个存储设备的写延迟(秒)| +| tidbcloud_kv_request_duration | histogram | instance: `tidb-0\|tidb-1\|...`
component: `tikv`
cluster_name: ``
`type`: `BatchGet\|Commit\|Prewrite\|...` | TiKV 按类型请求的耗时(秒)| +| tidbcloud_component_uptime | histogram | instance: `tidb-0\|tidb-1\|...`
component: `tidb\|tikv\|tiflash`
cluster_name: `` | TiDB 组件的运行时长(秒)| +| tidbcloud_ticdc_owner_resolved_ts_lag | gauge | changefeed_id: ``
cluster_name: `` | changefeed owner 的 resolved timestamp 延迟(秒)| +| tidbcloud_changefeed_status | gauge | changefeed_id: ``
cluster_name: `` | changefeed 状态:
`-1`: 未知
`0`: 正常
`1`: 警告
`2`: 失败
`3`: 已停止
`4`: 已完成
`6`: 警告
`7`: 其他 | +| tidbcloud_resource_manager_resource_unit_read_request_unit | gauge | cluster_name: ``
resource_group: `` | Resource Manager 消耗的读请求单元 | +| tidbcloud_resource_manager_resource_unit_write_request_unit | gauge | cluster_name: ``
resource_group: `` | Resource Manager 消耗的写请求单元 | ## 常见问题 -- 为什么同一指标在同一时间在 Grafana 和 TiDB Cloud 控制台上显示的值不同? +- 为什么同一指标在 Grafana 和 TiDB Cloud 控制台上同时显示的数值不同? - Grafana 和 TiDB Cloud 之间的聚合计算逻辑不同,因此显示的聚合值可能会有所不同。你可以调整 Grafana 中的 `mini step` 配置以获取更细粒度的指标值。 + 因为 Grafana 和 TiDB Cloud 的聚合计算逻辑不同,所以显示的聚合值可能会有差异。你可以调整 Grafana 中的 `mini step` 配置,以获得更细粒度的指标值。 \ No newline at end of file diff --git a/tidb-cloud/monitoring-concepts.md b/tidb-cloud/monitoring-concepts.md index 427012c784841..4eaf418367452 100644 --- a/tidb-cloud/monitoring-concepts.md +++ b/tidb-cloud/monitoring-concepts.md @@ -1,21 +1,21 @@ --- -title: 监控 +title: Monitoring summary: 了解 TiDB Cloud 的监控概念。 --- -# 监控 +# Monitoring -TiDB Cloud 的监控功能提供了工具和集成,使你能够监督集群性能、跟踪活动并及时响应问题。 +TiDB Cloud 的监控为你提供了工具和集成,能够监督集群性能、跟踪活动,并及时响应问题。 ## 内置指标 -内置指标是指 TiDB Cloud 在**指标**页面上收集和展示的一整套集群标准指标。通过这些指标,你可以轻松识别性能问题,并确定当前的数据库部署是否满足你的需求。 +内置指标是指 TiDB Cloud 收集并在 **Metrics** 页面展示的集群全套标准指标。通过这些指标,你可以轻松识别性能问题,并判断当前的数据库部署是否满足你的需求。 -更多信息,请参阅 [TiDB Cloud 内置指标](/tidb-cloud/built-in-monitoring.md)。 +更多信息,参见 [TiDB Cloud Built-in Metrics](/tidb-cloud/built-in-monitoring.md)。 ## 内置告警 -内置告警是指 TiDB Cloud 提供的集群告警机制,用于帮助你监控集群。目前,TiDB Cloud 提供以下三种类型的告警: +内置告警是指 TiDB Cloud 提供的集群告警机制,帮助你监控集群。目前,TiDB Cloud 提供以下三类告警: - 资源使用告警 @@ -23,26 +23,22 @@ TiDB Cloud 的监控功能提供了工具和集成,使你能够监督集群性 - Changefeed 告警 -在 TiDB Cloud 控制台的告警页面,你可以查看集群的告警、编辑告警规则,以及订阅告警通知邮件。 +在 TiDB Cloud 控制台的 Alerts 页面,你可以查看集群的告警、编辑告警规则,并订阅告警通知邮件。 -更多信息,请参阅 [TiDB Cloud 内置告警](/tidb-cloud/monitor-built-in-alerting.md)。 +更多信息,参见 [TiDB Cloud Built-in Alerting](/tidb-cloud/monitor-built-in-alerting.md)。 ## 集群事件 -在 TiDB Cloud 中,事件表示 TiDB Cloud 集群的变更。TiDB Cloud 在集群级别记录历史事件,以帮助你跟踪集群活动。你可以在**事件**页面查看记录的事件,包括事件类型、状态、消息、触发时间和触发用户。 +在 TiDB Cloud 中,事件表示你的 TiDB Cloud 集群发生的变更。TiDB Cloud 会在集群级别记录历史事件,帮助你跟踪集群活动。你可以在 **Events** 页面查看已记录的事件,包括事件类型、状态、消息、触发时间和触发用户。 -更多信息,请参阅 [TiDB Cloud 集群事件](/tidb-cloud/tidb-cloud-events.md)。 +更多信息,参见 [TiDB Cloud Cluster Event](/tidb-cloud/tidb-cloud-events.md)。 -## 第三方指标集成(Beta) +## 第三方指标集成 -TiDB Cloud 允许你集成以下任何第三方指标服务,以接收 TiDB Cloud 告警并查看 TiDB 集群的性能指标。 +TiDB Cloud 允许你集成以下任意第三方指标服务,以接收 TiDB Cloud 告警并查看 TiDB 集群的性能指标。 -- Datadog 集成 +- [Datadog 集成(预览版)](/tidb-cloud/monitor-datadog-integration.md) -- Prometheus 和 Grafana 集成 +- [Prometheus 和 Grafana 集成(Beta)](/tidb-cloud/monitor-prometheus-and-grafana-integration.md) -- New Relic 集成 - -目前,这些第三方指标集成处于 beta 阶段。 - -更多信息,请参阅[第三方指标集成(Beta)](/tidb-cloud/third-party-monitoring-integrations.md)。 +- [New Relic 集成(预览版)](/tidb-cloud/monitor-new-relic-integration.md) \ No newline at end of file diff --git a/tidb-cloud/notifications.md b/tidb-cloud/notifications.md index 3340a53b153db..53b18ccacd025 100644 --- a/tidb-cloud/notifications.md +++ b/tidb-cloud/notifications.md @@ -1,56 +1,56 @@ --- title: TiDB Cloud 控制台中的通知 -summary: 了解 TiDB Cloud 控制台中的通知,包括通知类型、用途以及如何查看它们。 +summary: 了解 TiDB Cloud 控制台中的通知,包括通知类型、用途以及如何查看通知。 --- # TiDB Cloud 控制台中的通知 -[TiDB Cloud 控制台](https://tidbcloud.com/)提供通知功能,让你了解重要更新、系统消息、产品变更、账单提醒和其他相关信息。这些通知帮助你在不离开控制台的情况下及时了解最新情况并采取必要的操作。 +[TiDB Cloud 控制台](https://tidbcloud.com/) 会通过通知让你及时了解重要更新、系统消息、产品变更、账单提醒及其他相关信息。这些通知帮助你随时掌握最新动态,并在不离开控制台的情况下采取必要操作。 ## 通知类型 你可能会在 TiDB Cloud 控制台中收到不同类型的通知,例如: -- **信息通知** +- **Informational notifications** - 提供有用的更新信息,如功能使用提示、应用变更或即将发生的事件提醒。 + 提供有用的更新信息,如功能使用提示、应用变更或即将到来的事件提醒。 -- **操作通知** +- **Actionable notifications** - 提示你执行特定操作,如添加信用卡。 + 提示你执行特定操作,例如添加信用卡。 -- **警报通知** +- **Alert notifications** - 通知你需要立即关注的重要问题或紧急事件,如系统错误、安全警告或重要更新。 + 通知你存在需要立即关注的关键问题或紧急事件,例如系统错误、安全警告或重要更新。 -- **账单通知** +- **Billing notifications** - 提供有关账单相关活动的更新,如信用额度和折扣更新。 + 提供与账单相关的活动更新,例如积分和折扣的变动。 -- **反馈通知** +- **Feedback notifications** - 请求你对某个功能的使用体验提供反馈,如对最近的交互进行评分或完成调查。 + 请求你对某个功能的使用体验进行反馈,例如对最近的交互进行评分或完成调查问卷。 ## 通知列表 -下表列出了 TiDB Cloud 中可用的通知,以及它们的触发事件和接收者: +下表列出了 TiDB Cloud 中可用的通知类型,以及它们的触发事件和接收人: -| 通知 | 触发事件 | 通知接收者 | +| Notification | Trigger event | Notification recipient | | --- | --- | --- | -| TiDB Cloud Serverless 集群创建 | 创建了一个 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。 | 所有项目成员 | -| TiDB Cloud Serverless 集群删除 | 删除了一个 TiDB Cloud Serverless 集群。 | 所有项目成员 | -| TiDB Cloud Dedicated 集群创建 | 创建了一个 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群。 | 所有项目成员 | -| TiDB Cloud Dedicated 集群删除 | 删除了一个 TiDB Cloud Dedicated 集群。 | 所有项目成员 | -| 组织预算阈值警报 | 达到组织[预算阈值](/tidb-cloud/tidb-cloud-budget.md)。 | `组织所有者`、`组织账单管理员`和`组织账单查看者` | -| 项目预算阈值警报 | 达到项目[预算阈值](/tidb-cloud/tidb-cloud-budget.md)。 | `组织所有者`、`组织账单管理员`、`组织账单查看者`和`项目所有者` | -| Serverless 集群支出限额阈值警报 | 达到组织中 TiDB Cloud Serverless 集群的[支出限额阈值](/tidb-cloud/manage-serverless-spend-limit.md)。 | `组织所有者`、`组织账单管理员`、`组织账单查看者`和`项目所有者` | -| 信用额度更新 | 组织的[信用额度](/tidb-cloud/tidb-cloud-billing.md#credits)被应用、完全使用、收回或过期。 | `组织所有者`、`组织账单管理员`和`组织账单查看者` | -| 折扣更新 | 组织的[折扣](/tidb-cloud/tidb-cloud-billing.md#discounts)被应用、收回或过期。 | `组织所有者`、`组织账单管理员`和`组织账单查看者` | -| 云市场更新 | 组织通过云服务提供商市场进行订阅或取消订阅。 | 所有组织成员 | -| 支持计划更新 | 组织的支持计划订阅发生变更。 | 所有组织成员 | +| TiDB Cloud Serverless cluster creation | 创建了一个 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。 | 所有项目成员 | +| TiDB Cloud Serverless cluster deletion | 删除了一个 TiDB Cloud Serverless 集群。 | 所有项目成员 | +| TiDB Cloud Dedicated cluster creation | 创建了一个 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群。 | 所有项目成员 | +| TiDB Cloud Dedicated cluster deletion | 删除了一个 TiDB Cloud Dedicated 集群。 | 所有项目成员 | +| Organization Budget threshold alert | 达到组织的 [预算阈值](/tidb-cloud/tidb-cloud-budget.md)。 | `Organization Owner`、`Organization Billing Manager` 和 `Organization Billing Viewer` | +| Project Budget threshold alert | 达到项目的 [预算阈值](/tidb-cloud/tidb-cloud-budget.md)。 | `Organization Owner`、`Organization Billing Manager`、`Organization Billing Viewer` 和 `Project Owner` | +| Serverless cluster spending limit threshold alert | 组织内 TiDB Cloud Serverless 集群的 [消费限额阈值](/tidb-cloud/manage-serverless-spend-limit.md) 达到。 | `Organization Owner`、`Organization Billing Manager`、`Organization Billing Viewer` 和 `Project Owner` | +| Credits update | 组织的 [Credits](/tidb-cloud/tidb-cloud-billing.md#credits) 被应用、全部用完、回收或过期。 | `Organization Owner`、`Organization Billing Manager` 和 `Organization Billing Viewer` | +| Discount update | 组织的 [Discounts](/tidb-cloud/tidb-cloud-billing.md#discounts) 被应用、回收或过期。 | `Organization Owner`、`Organization Billing Manager` 和 `Organization Billing Viewer` | +| Marketplace update | 组织通过云服务商市场订阅或取消订阅。 | 所有组织成员 | +| Support plan update | 组织的支持计划订阅发生变更。 | 所有组织成员 | ## 查看通知 -要查看通知,请点击 [TiDB Cloud 控制台](https://tidbcloud.com/)左下角的**通知**。 +要查看通知,请点击 [TiDB Cloud 控制台](https://tidbcloud.com/) 左下角的 **Notification**。 -当有新通知时,**通知**旁边会显示一个数字,表示有多少条未读通知。 +当有新通知时,**Notification** 旁会显示一个数字,表示有多少条未读通知。 \ No newline at end of file diff --git a/tidb-cloud/pause-or-resume-tidb-cluster.md b/tidb-cloud/pause-or-resume-tidb-cluster.md index dcd8c34145245..f37d930621fe8 100644 --- a/tidb-cloud/pause-or-resume-tidb-cluster.md +++ b/tidb-cloud/pause-or-resume-tidb-cluster.md @@ -1,62 +1,62 @@ --- -title: 暂停或恢复 TiDB Cloud Dedicated 集群 -summary: 了解如何暂停或恢复 TiDB Cloud Dedicated 集群。 +title: 暂停或恢复 TiDB Cloud 专属集群 +summary: 了解如何暂停或恢复 TiDB Cloud 专属集群。 --- -# 暂停或恢复 TiDB Cloud Dedicated 集群 +# 暂停或恢复 TiDB Cloud 专属集群 -在 TiDB Cloud 中,你可以轻松地暂停和恢复不需要持续运行的 TiDB Cloud Dedicated 集群。 +你可以在 TiDB Cloud 中轻松暂停和恢复并非始终运行的 TiDB Cloud 专属集群。 -暂停操作不会影响集群中存储的数据,仅会停止收集监控信息和计算资源的消耗。暂停后,你可以随时恢复集群。 +暂停操作不会影响存储在集群中的数据,只是停止监控信息的收集和计算资源的消耗。暂停后,你可以随时恢复集群。 -与备份和恢复相比,暂停和恢复集群所需时间更短,并且可以保留集群信息(包括集群版本、集群配置和 TiDB 用户账户)。 +与备份和恢复相比,暂停和恢复集群所需时间更短,并且会保留你的集群信息(包括集群版本、集群配置和 TiDB 用户账户)。 > **注意:** > -> 你不能暂停 [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless)。 +> 你无法暂停 [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless)。 -## 限制条件 +## 限制 -- 只有当集群处于 **Available**(可用)状态时,你才能暂停集群。如果集群处于其他状态(如 **Modifying**),你必须等待当前操作完成后才能暂停集群。 -- 当数据导入任务正在进行时,你不能暂停集群。你可以等待导入任务完成或取消导入任务。 -- 当备份任务正在进行时,你不能暂停集群。你可以等待当前备份任务完成或[删除正在运行的备份任务](/tidb-cloud/backup-and-restore.md#delete-a-running-backup-job)。 -- 如果集群有任何 [changefeeds](/tidb-cloud/changefeed-overview.md),你不能暂停集群。你需要在暂停集群之前[删除现有的 changefeeds](/tidb-cloud/changefeed-overview.md#delete-a-changefeed)。 +- 只有当集群处于 **Available** 状态时,你才能暂停集群。如果集群处于 **Modifying** 等其他状态,你必须等待当前操作完成后才能暂停集群。 +- 当有数据导入任务正在进行时,无法暂停集群。你可以等待导入任务完成或取消导入任务。 +- 当有备份任务正在进行时,无法暂停集群。你可以等待当前备份任务完成或[删除正在运行的备份任务](/tidb-cloud/backup-and-restore.md#delete-a-running-backup-job)。 +- 如果集群存在任何 [changefeeds](/tidb-cloud/changefeed-overview.md),则无法暂停集群。你需要[删除现有的 changefeed](/tidb-cloud/changefeed-overview.md#delete-a-changefeed) 后才能暂停集群。 ## 暂停 TiDB 集群 暂停时长和行为取决于你的组织创建日期: -- 2024 年 11 月 12 日之后创建的组织遵循标准暂停行为,最长暂停时间为 7 天。 -- 2024 年 11 月 12 日或之前创建的组织遵循兼容暂停行为,允许更长的暂停时间。这些组织将逐步过渡到标准的 7 天限制。 +- 2024 年 11 月 12 日之后创建的组织,采用标准暂停行为,最长暂停时长为 7 天。 +- 2024 年 11 月 12 日及之前创建的组织,采用兼容暂停行为,允许更长的暂停时长。这些组织将逐步过渡到标准的 7 天限制。 -
+
-当集群被暂停时,请注意以下几点: +当集群被暂停时,请注意以下事项: -- TiDB Cloud 停止收集集群的监控信息。 -- 你无法从集群读取或写入数据。 +- TiDB Cloud 停止收集该集群的监控信息。 +- 你无法从集群中读取或写入数据。 - 你无法导入或备份数据。 - 仅收取以下费用: - 节点存储费用 - 数据备份费用 -- TiDB Cloud 停止集群的[自动备份](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup)。 -- 最长暂停时间为 7 天。如果你在 7 天内没有手动恢复集群,TiDB Cloud 将自动恢复它。 -- 你可以在集群概览页面查看自动恢复计划。TiDB Cloud 将在集群自动恢复前 24 小时向组织所有者和项目所有者发送通知邮件。 +- TiDB Cloud 停止该集群的[自动备份](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup)。 +- 最长暂停时长为 7 天。如果你未在 7 天内手动恢复集群,TiDB Cloud 会自动恢复集群。 +- 你可以在集群概览页面查看自动恢复的计划。TiDB Cloud 会在集群自动恢复前 24 小时,向组织所有者和项目所有者发送通知邮件。
-
+
> **注意:** > -> 如果你的组织是在 2024 年 11 月 12 日之前创建的,你的集群仍然遵循兼容暂停行为。TiDB Cloud 将在过渡到新的标准暂停行为之前通知你。 +> 如果你的组织是在 2024 年 11 月 12 日之前创建的,集群仍采用兼容暂停行为。TiDB Cloud 会在过渡到新的标准暂停行为前通知你。 -当集群被暂停时,请注意以下几点: +当集群被暂停时,请注意以下事项: -- TiDB Cloud 停止收集集群的监控信息。 -- 你无法从集群读取或写入数据。 +- TiDB Cloud 停止收集该集群的监控信息。 +- 你无法从集群中读取或写入数据。 - 你无法导入或备份数据。 - TiDB Cloud 不会自动恢复已暂停的集群。 - 仅收取以下费用: @@ -64,49 +64,49 @@ summary: 了解如何暂停或恢复 TiDB Cloud Dedicated 集群。 - 节点存储费用 - 数据备份费用 -- TiDB Cloud 停止集群的[自动备份](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup)。 +- TiDB Cloud 停止该集群的[自动备份](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup)。
-要暂停集群,请按照以下步骤操作: +暂停集群的步骤如下: -1. 在 TiDB Cloud 控制台中,导航到项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 -2. 在要暂停的集群所在行,点击 **...**。 +1. 在 TiDB Cloud 控制台,进入你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 +2. 在你想要暂停的集群所在行,点击 **...**。 > **提示:** > - > 或者,你可以在 **Clusters** 页面上点击要暂停的集群名称,然后点击右上角的 **...**。 + > 你也可以在 **Clusters** 页面点击你想要暂停的集群名称,然后在右上角点击 **...**。 3. 在下拉菜单中点击 **Pause**。 - 此时会显示 **Pause your cluster** 对话框。 + 此时会弹出 **Pause your cluster** 对话框。 -4. 在对话框中,点击 **Pause** 确认你的选择。 +4. 在对话框中点击 **Pause** 以确认你的选择。 - 点击 **Pause** 后,集群将首先进入 **Pausing** 状态。一旦暂停操作完成,集群将转换为 **Paused** 状态。 + 点击 **Pause** 后,集群会先进入 **Pausing** 状态。暂停操作完成后,集群会变为 **Paused** 状态。 -你也可以使用 TiDB Cloud API 暂停集群。目前,TiDB Cloud API 仍处于测试阶段。更多信息,请参见 [TiDB Cloud API 文档](https://docs.pingcap.com/tidbcloud/api/v1beta)。 +你也可以通过 TiDB Cloud API 暂停集群。目前,TiDB Cloud API 仍处于 beta 阶段。更多信息请参见 [TiDB Cloud API Documentation](https://docs.pingcap.com/tidbcloud/api/v1beta)。 ## 恢复 TiDB 集群 -暂停的集群恢复后,请注意以下几点: +暂停的集群恢复后,请注意以下事项: -- TiDB Cloud 恢复收集集群的监控信息,你可以从集群读取或写入数据。 +- TiDB Cloud 恢复收集该集群的监控信息,你可以从集群中读取或写入数据。 - TiDB Cloud 恢复收取计算和存储费用。 -- TiDB Cloud 恢复集群的[自动备份](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup)。 +- TiDB Cloud 恢复该集群的[自动备份](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup)。 -要恢复已暂停的集群,请按照以下步骤操作: +恢复已暂停集群的步骤如下: -1. 在 TiDB Cloud 控制台中,导航到项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 -2. 对于要恢复的集群,点击 **Resume**。此时会显示 **Resume your cluster** 对话框。 +1. 在 TiDB Cloud 控制台,进入你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 +2. 在你想要恢复的集群所在行,点击 **Resume**。此时会弹出 **Resume your cluster** 对话框。 > **注意:** > - > 你不能恢复处于 **Pausing** 状态的集群。 + > 处于 **Pausing** 状态的集群无法恢复。 -3. 在对话框中,点击 **Resume** 确认你的选择。集群状态将变为 **Resuming**。 +3. 在对话框中点击 **Resume** 以确认你的选择。集群状态会变为 **Resuming**。 -根据集群大小,恢复集群可能需要几分钟时间。集群恢复后,集群状态将从 **Resuming** 变为 **Available**。 +根据你的集群规模,恢复集群可能需要几分钟。集群恢复后,状态会从 **Resuming** 变为 **Available**。 -你也可以使用 TiDB Cloud API 恢复集群。目前,TiDB Cloud API 仍处于测试阶段。更多信息,请参见 [TiDB Cloud API 文档](https://docs.pingcap.com/tidbcloud/api/v1beta)。 +你也可以通过 TiDB Cloud API 恢复集群。目前,TiDB Cloud API 仍处于 beta 阶段。更多信息请参见 [TiDB Cloud API Documentation](https://docs.pingcap.com/tidbcloud/api/v1beta)。 \ No newline at end of file diff --git a/tidb-cloud/release-notes-2023.md b/tidb-cloud/release-notes-2023.md index d589e629d057e..2fbd114b7e93a 100644 --- a/tidb-cloud/release-notes-2023.md +++ b/tidb-cloud/release-notes-2023.md @@ -5,999 +5,999 @@ summary: 了解 2023 年 TiDB Cloud 的发布说明。 # 2023 年 TiDB Cloud 发布说明 -本页列出了 2023 年 [TiDB Cloud](https://www.pingcap.com/tidb-cloud/) 的发布说明。 +本页面列出了 [TiDB Cloud](https://www.pingcap.com/tidb-cloud/) 在 2023 年的发布说明。 ## 2023 年 12 月 5 日 -**常规变更** +**通用变更** -- [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 允许你恢复失败的 Changefeed,从而节省你重新创建 Changefeed 的精力。 +- [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 支持恢复失败的 changefeed,无需重新创建,节省操作成本。 - 更多信息,请参见 [Changefeed 状态](/tidb-cloud/changefeed-overview.md#changefeed-states)。 + 详情参见 [Changefeed 状态](/tidb-cloud/changefeed-overview.md#changefeed-states)。 **控制台变更** -- 增强 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 的连接体验。 +- 优化 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 的连接体验。 - 优化 **连接** 对话框界面,为 TiDB Cloud Serverless 用户提供更流畅、更高效的连接体验。 此外,TiDB Cloud Serverless 引入了更多客户端类型,并允许你选择所需的连接分支。 + 优化 **Connect** 对话框界面,为 TiDB Cloud Serverless 用户提供更流畅、高效的连接体验。此外,TiDB Cloud Serverless 新增了更多客户端类型,并允许你选择所需分支进行连接。 - 更多信息,请参见 [连接到 TiDB Cloud Serverless](/tidb-cloud/connect-via-standard-connection-serverless.md)。 + 详情参见 [连接到 TiDB Cloud Serverless](/tidb-cloud/connect-via-standard-connection-serverless.md)。 ## 2023 年 11 月 28 日 -**常规变更** +**通用变更** -- [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 支持从备份恢复 SQL 绑定。 +- [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 支持从备份中恢复 SQL 绑定。 - TiDB Cloud Dedicated 现在默认在从备份恢复时恢复用户帐户和 SQL 绑定。此增强功能适用于 v6.2.0 或更高版本的集群,从而简化了数据恢复过程。SQL 绑定的恢复确保了与查询相关的配置和优化的顺利重新集成,为你提供更全面、更高效的恢复体验。 + 现在,TiDB Cloud 专属集群在从备份恢复时默认恢复用户账户和 SQL 绑定。该增强适用于 v6.2.0 及以上版本的集群,简化了数据恢复流程。SQL 绑定的恢复确保查询相关配置和优化的顺利回归,为你提供更全面、高效的恢复体验。 - 有关更多信息,请参阅[备份和恢复 TiDB Cloud Dedicated 数据](/tidb-cloud/backup-and-restore.md)。 + 详情参见 [备份与恢复 TiDB Cloud 专属集群数据](/tidb-cloud/backup-and-restore.md)。 **控制台变更** -- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 支持监控 SQL 语句 RU 成本。 +- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 支持监控 SQL 语句的 RU 消耗。 - TiDB Cloud Serverless 现在提供有关每个 SQL 语句的[请求单元 (RU)](/tidb-cloud/tidb-cloud-glossary.md#request-unit)的详细信息。你可以查看每个 SQL 语句的**总 RU** 和**平均 RU** 成本。此功能可帮助你识别和分析 RU 成本,从而为你的运营提供潜在的成本节省机会。 + 现在,TiDB Cloud Serverless 提供每条 SQL 语句的 [请求单位(RU)](/tidb-cloud/tidb-cloud-glossary.md#request-unit) 详细信息。你可以查看每条 SQL 语句的 **Total RU** 和 **Mean RU** 消耗。该功能有助于你识别和分析 RU 消耗,为运营成本优化提供参考。 - 要查看你的 SQL 语句 RU 详细信息,请导航到[你的 TiDB Cloud Serverless 集群](https://tidbcloud.com/project/clusters)的**诊断**页面,然后单击 **SQL 语句**选项卡。 + 查看 SQL 语句 RU 详情,请前往 [你的 TiDB Cloud Serverless 集群](https://tidbcloud.com/project/clusters) 的 **Diagnosis** 页面,并点击 **SQL Statement** 标签页。 ## 2023 年 11 月 21 日 -**常规变更** +**通用变更** -- [数据迁移](/tidb-cloud/migrate-from-mysql-using-data-migration.md) 支持在 Google Cloud 上部署的 TiDB 集群的高速物理模式。 +- [数据迁移](/tidb-cloud/migrate-from-mysql-using-data-migration.md) 支持 Google Cloud 上部署的 TiDB 集群的高速物理模式。 - 现在,你可以对部署在 AWS 和 Google Cloud 上的 TiDB 集群使用物理模式。物理模式的迁移速度最高可达 110 MiB/s,比逻辑模式快 2.4 倍。改进后的性能适用于将大型数据集快速迁移到 TiDB Cloud。 + 现在,你可以在 AWS 和 Google Cloud 上部署的 TiDB 集群使用物理模式。物理模式的迁移速度可达 110 MiB/s,是逻辑模式的 2.4 倍。该性能提升适用于大规模数据集的快速迁移至 TiDB Cloud。 - 有关更多信息,请参阅[迁移现有数据和增量数据](/tidb-cloud/migrate-from-mysql-using-data-migration.md#migrate-existing-data-and-incremental-data)。 + 详情参见 [迁移现有数据和增量数据](/tidb-cloud/migrate-from-mysql-using-data-migration.md#migrate-existing-data-and-incremental-data)。 ## 2023 年 11 月 14 日 -**常规变更** +**通用变更** -- 当你从 TiDB Cloud Dedicated 集群恢复数据时,默认行为现在从不恢复用户帐户修改为恢复所有用户帐户。 +- 从 TiDB Cloud 专属集群恢复数据时,默认行为由不恢复用户账户改为恢复所有用户账户。 - 更多信息,请参阅 [备份和恢复 TiDB Cloud Dedicated 数据](/tidb-cloud/backup-and-restore.md)。 + 详情参见 [备份与恢复 TiDB Cloud 专属集群数据](/tidb-cloud/backup-and-restore.md)。 -- 引入 changefeed 的事件过滤器。 +- 引入 changefeed 事件过滤器。 - 此增强功能使你能够通过 [TiDB Cloud 控制台](https://tidbcloud.com/) 轻松管理 changefeed 的事件过滤器,从而简化了从 changefeed 中排除特定事件的过程,并更好地控制下游数据复制。 + 该增强支持你直接在 [TiDB Cloud 控制台](https://tidbcloud.com/) 管理 changefeed 的事件过滤器,简化了排除特定事件的流程,并为下游数据同步提供更好的控制。 - 更多信息,请参阅 [Changefeed](/tidb-cloud/changefeed-overview.md#edit-a-changefeed)。 + 详情参见 [Changefeed](/tidb-cloud/changefeed-overview.md#edit-a-changefeed)。 ## 2023 年 11 月 7 日 -**常规变更** +**通用变更** -- 添加以下资源使用率警报。 默认情况下,新警报处于禁用状态。 你可以根据需要启用它们。 +- 新增以下资源使用率告警,默认关闭。你可按需开启。 - - TiDB 节点的最大内存利用率在 10 分钟内超过 70% - - TiKV 节点的最大内存利用率在 10 分钟内超过 70% - - TiDB 节点的最大 CPU 利用率在 10 分钟内超过 80% - - TiKV 节点的最大 CPU 利用率在 10 分钟内超过 80% + - TiDB 节点最大内存使用率超过 70% 持续 10 分钟 + - TiKV 节点最大内存使用率超过 70% 持续 10 分钟 + - TiDB 节点最大 CPU 使用率超过 80% 持续 10 分钟 + - TiKV 节点最大 CPU 使用率超过 80% 持续 10 分钟 - 有关更多信息,请参阅 [TiDB Cloud 内置警报](/tidb-cloud/monitor-built-in-alerting.md#resource-usage-alerts)。 + 详情参见 [TiDB Cloud 内置告警](/tidb-cloud/monitor-built-in-alerting.md#resource-usage-alerts)。 ## 2023 年 10 月 31 日 -**常规变更** +**通用变更** -- 支持在 TiDB Cloud 控制台中直接升级到企业支持计划,无需联系销售。 +- 支持在 TiDB Cloud 控制台直接升级为企业支持计划,无需联系销售。 - 更多信息,请参见 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 + 详情参见 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 ## 2023 年 10 月 25 日 -**常规变更** +**通用变更** -- [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 支持 Google Cloud 上的双区域备份(beta)。 +- [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 支持 Google Cloud 上的双区域备份(Beta)。 - 托管在 Google Cloud 上的 TiDB Cloud Dedicated 集群可以与 Google Cloud Storage 无缝协作。 与 Google Cloud Storage 的 [双区域](https://cloud.google.com/storage/docs/locations#location-dr) 功能类似,你在 TiDB Cloud Dedicated 中用于双区域的区域对必须位于同一多区域内。 例如,东京和大阪位于同一多区域 `ASIA` 中,因此它们可以一起用于双区域存储。 + 部署在 Google Cloud 上的 TiDB Cloud 专属集群可无缝对接 Google Cloud Storage。与 Google Cloud Storage 的 [Dual-regions](https://cloud.google.com/storage/docs/locations#location-dr) 功能类似,TiDB Cloud 专属集群的双区域需在同一多区域内。例如,东京和大阪同属 `ASIA` 多区域,可共同用于双区域存储。 - 有关更多信息,请参阅 [备份和恢复 TiDB Cloud Dedicated 数据](/tidb-cloud/backup-and-restore.md#turn-on-dual-region-backup)。 + 详情参见 [开启双区域备份](/tidb-cloud/backup-and-restore.md#turn-on-dual-region-backup)。 -- [将数据变更日志流式传输到 Apache Kafka](/tidb-cloud/changefeed-sink-to-apache-kafka.md) 的功能现已正式发布 (GA)。 +- [将数据变更日志流式写入 Apache Kafka](/tidb-cloud/changefeed-sink-to-apache-kafka.md) 功能现已正式发布(GA)。 - 经过 10 个月的成功 Beta 试用后,将数据变更日志从 TiDB Cloud 流式传输到 Apache Kafka 的功能已正式发布。 将数据从 TiDB 流式传输到消息队列是数据集成场景中的常见需求。 你可以使用 Kafka sink 与其他数据处理系统(例如 Snowflake)集成或支持业务消费。 + 经过 10 个月的 Beta 试用,该功能现已正式可用。将 TiDB Cloud 的数据变更日志流式写入 Apache Kafka 是数据集成场景的常见需求。你可以通过 Kafka sink 集成其他数据处理系统(如 Snowflake)或支持业务消费。 - 有关更多信息,请参阅 [Changefeed 概述](/tidb-cloud/changefeed-overview.md)。 + 详情参见 [Changefeed 概览](/tidb-cloud/changefeed-overview.md)。 ## 2023 年 10 月 11 日 -**常规变更** +**通用变更** -- 支持 [双区域备份 (beta)](/tidb-cloud/backup-and-restore.md#turn-on-dual-region-backup),适用于部署在 AWS 上的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群。 +- 支持 [AWS 上部署的 TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的 [双区域备份(Beta)](/tidb-cloud/backup-and-restore.md#turn-on-dual-region-backup)。 - 你现在可以在云提供商内的地理区域之间复制备份。此功能提供了一个额外的数据保护层和灾难恢复能力。 + 你现在可以在云服务商的不同地理区域间复制备份。该功能为数据保护和灾难恢复提供了额外保障。 - 更多信息,请参阅 [备份和恢复 TiDB Cloud Dedicated 数据](/tidb-cloud/backup-and-restore.md)。 + 详情参见 [备份与恢复 TiDB Cloud 专属集群数据](/tidb-cloud/backup-and-restore.md)。 -- 数据迁移现在支持物理模式和逻辑模式来迁移现有数据。 +- 数据迁移现已支持物理模式和逻辑模式迁移现有数据。 - 在物理模式下,迁移速度可以达到 110 MiB/s。与逻辑模式下的 45 MiB/s 相比,迁移性能得到了显着提高。 + 物理模式下,迁移速度可达 110 MiB/s,相较逻辑模式的 45 MiB/s,性能大幅提升。 - 更多信息,请参阅 [迁移现有数据和增量数据](/tidb-cloud/migrate-from-mysql-using-data-migration.md#migrate-existing-data-and-incremental-data)。 + 详情参见 [迁移现有数据和增量数据](/tidb-cloud/migrate-from-mysql-using-data-migration.md#migrate-existing-data-and-incremental-data)。 ## 2023 年 10 月 10 日 -**常规变更** +**通用变更** -- 支持在 [Vercel 预览部署](https://vercel.com/docs/deployments/preview-deployments) 中使用 TiDB Cloud Serverless 分支,通过 TiDB Cloud Vercel 集成。 +- 支持在 [Vercel 预览部署](https://vercel.com/docs/deployments/preview-deployments) 中使用 TiDB Cloud Serverless 分支,并集成 TiDB Cloud Vercel。 - 更多信息,请参考 [连接 TiDB Cloud Serverless 分支](/tidb-cloud/integrate-tidbcloud-with-vercel.md#connect-with-tidb-cloud-serverless-branching)。 + 详情参见 [通过分支连接 TiDB Cloud Serverless](/tidb-cloud/integrate-tidbcloud-with-vercel.md#connect-with-branching)。 ## 2023 年 9 月 28 日 **API 变更** -- 引入 TiDB Cloud 账单 API 端点,用于检索特定组织在给定月份的账单。 +- 新增 TiDB Cloud 账单 API 接口,可获取指定组织某月账单。 - 此账单 API 端点在 TiDB Cloud API v1beta1 中发布,这是 TiDB Cloud 的最新 API 版本。 有关更多信息,请参阅 [API 文档 (v1beta1)](https://docs.pingcap.com/tidbcloud/api/v1beta1#tag/Billing)。 + 该账单 API 接口在 TiDB Cloud API v1beta1 版本中发布。详情参见 [API 文档(v1beta1)](https://docs.pingcap.com/tidbcloud/api/v1beta1#tag/Billing)。 ## 2023 年 9 月 19 日 -**常规变更** +**通用变更** -- 从 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群中移除 2 vCPU 的 TiDB 和 TiKV 节点。 +- 移除 [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的 2 vCPU TiDB 和 TiKV 节点选项。 - **创建集群**页面或**修改集群**页面不再提供 2 vCPU 选项。 + 2 vCPU 选项已不再出现在 **Create Cluster** 或 **Modify Cluster** 页面。 -- 发布适用于 JavaScript 的 [TiDB Cloud serverless driver (beta)](/tidb-cloud/serverless-driver.md)。 +- 发布 [JavaScript 版 TiDB Cloud serverless driver(Beta)](/tidb-cloud/serverless-driver.md)。 - 适用于 JavaScript 的 TiDB Cloud serverless driver 允许你通过 HTTPS 连接到你的 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。 它在 TCP 连接受限的边缘环境中特别有用,例如 [Vercel Edge Function](https://vercel.com/docs/functions/edge-functions) 和 [Cloudflare Workers](https://workers.cloudflare.com/)。 + 该驱动允许你通过 HTTPS 连接 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群,特别适用于 TCP 连接受限的边缘环境,如 [Vercel Edge Function](https://vercel.com/docs/functions/edge-functions) 和 [Cloudflare Workers](https://workers.cloudflare.com/)。 - 有关更多信息,请参阅 [TiDB Cloud serverless driver (beta)](/tidb-cloud/serverless-driver.md)。 + 详情参见 [TiDB Cloud serverless driver(Beta)](/tidb-cloud/serverless-driver.md)。 **控制台变更** -- 对于 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群,你可以在**本月用量**面板中或设置消费限额时获得成本估算。 +- 对于 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群,你可以在 **Usage This Month** 面板或设置消费上限时获取费用预估。 ## 2023 年 9 月 5 日 -**常规变更** +**通用变更** -- [数据服务 (beta)](https://tidbcloud.com/project/data-service) 支持为每个 API 密钥自定义速率限制,以满足不同情况下的特定速率限制要求。 +- [数据服务(Beta)](https://tidbcloud.com/project/data-service) 支持为每个 API key 自定义限流,以满足不同场景下的限流需求。 - 你可以在[创建](/tidb-cloud/data-service-api-key.md#create-an-api-key)或[编辑](/tidb-cloud/data-service-api-key.md#edit-an-api-key)密钥时调整 API 密钥的速率限制。 + 你可以在 [创建](/tidb-cloud/data-service-api-key.md#create-an-api-key) 或 [编辑](/tidb-cloud/data-service-api-key.md#edit-an-api-key) API key 时调整限流。 - 有关更多信息,请参见[速率限制](/tidb-cloud/data-service-api-key.md#rate-limiting)。 + 详情参见 [限流](/tidb-cloud/data-service-api-key.md#rate-limiting)。 -- 支持 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的新 AWS 区域:圣保罗 (sa-east-1)。 +- [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 新增支持 AWS 区域:圣保罗(sa-east-1)。 -- 支持为每个 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的 IP 访问列表添加最多 100 个 IP 地址。 +- 每个 [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的 IP 访问列表支持最多添加 100 个 IP 地址。 - 有关更多信息,请参见[配置 IP 访问列表](/tidb-cloud/configure-ip-access-list.md)。 + 详情参见 [配置 IP 访问列表](/tidb-cloud/configure-ip-access-list.md)。 **控制台变更** -- 为 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群引入 **Events** 页面,该页面提供集群主要变更的记录。 +- 为 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群引入 **Events** 页面,记录集群主要变更。 - 在此页面上,你可以查看过去 7 天的事件历史记录,并跟踪重要详细信息,例如触发时间和发起操作的用户。 + 你可以在该页面查看最近 7 天的事件历史,追踪触发时间和操作用户等重要信息。 - 有关更多信息,请参见 [TiDB Cloud 集群事件](/tidb-cloud/tidb-cloud-events.md)。 + 详情参见 [TiDB Cloud 集群事件](/tidb-cloud/tidb-cloud-events.md)。 **API 变更** -- 发布多个 TiDB Cloud API 端点,用于管理 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的 [AWS PrivateLink](https://aws.amazon.com/privatelink/?privatelink-blogs.sort-by=item.additionalFields.createdDate&privatelink-blogs.sort-order=desc) 或 [Google Cloud Private Service Connect](https://cloud.google.com/vpc/docs/private-service-connect): +- 发布多项 TiDB Cloud API 接口,用于管理 [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的 [AWS PrivateLink](https://aws.amazon.com/privatelink/?privatelink-blogs.sort-by=item.additionalFields.createdDate&privatelink-blogs.sort-order=desc) 或 [Google Cloud Private Service Connect](https://cloud.google.com/vpc/docs/private-service-connect): - 为集群创建私有端点服务 - - 检索集群的私有端点服务信息 + - 获取集群的私有端点服务信息 - 为集群创建私有端点 - 列出集群的所有私有端点 - - 列出项目中的所有私有端点 + - 列出项目下的所有私有端点 - 删除集群的私有端点 - 有关更多信息,请参阅 [API 文档](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Cluster)。 + 详情参见 [API 文档](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Cluster)。 ## 2023 年 8 月 23 日 -**常规变更** +**通用变更** -- 支持 Google Cloud [Private Service Connect](https://cloud.google.com/vpc/docs/private-service-connect),用于 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群。 +- [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 支持 Google Cloud [Private Service Connect](https://cloud.google.com/vpc/docs/private-service-connect)。 - 现在,你可以创建一个私有端点,并与托管在 Google Cloud 上的 TiDB Cloud Dedicated 集群建立安全连接。 + 你现在可以为部署在 Google Cloud 上的 TiDB Cloud 专属集群创建私有端点并建立安全连接。 主要优势: - - 直观的操作:只需几个步骤即可帮助你创建私有端点。 - - 增强的安全性:建立安全连接以保护你的数据。 - - 改进的性能:提供低延迟和高带宽的连接。 + - 操作直观:仅需几步即可创建私有端点。 + - 安全增强:建立安全连接,保护你的数据。 + - 性能提升:提供低延迟、高带宽的连接。 - 有关更多信息,请参见 [通过 Google Cloud 上的私有端点连接](/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md)。 + 详情参见 [通过 Google Cloud 私有端点连接](/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md)。 -- 支持使用 Changefeed 将数据从 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群流式传输到 [Google Cloud Storage (GCS)](https://cloud.google.com/storage)。 +- 支持通过 changefeed 将 [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的数据流式写入 [Google Cloud Storage (GCS)](https://cloud.google.com/storage)。 - 现在,你可以使用自己的帐户的存储桶并提供精确定制的权限,将数据从 TiDB Cloud 流式传输到 GCS。 将数据复制到 GCS 后,你可以根据需要分析数据中的更改。 + 你可以使用自己的 GCS 存储桶并精确配置权限,将数据流式复制到 GCS,之后可按需分析数据变更。 - 有关更多信息,请参见 [Sink to Cloud Storage](/tidb-cloud/changefeed-sink-to-cloud-storage.md)。 + 详情参见 [流式写入云存储](/tidb-cloud/changefeed-sink-to-cloud-storage.md)。 ## 2023 年 8 月 15 日 -**常规变更** +**通用变更** -- [数据服务(beta)](https://tidbcloud.com/project/data-service) 支持对 `GET` 请求进行分页,以改善开发体验。 +- [数据服务(Beta)](https://tidbcloud.com/project/data-service) 支持 `GET` 请求的分页,提升开发体验。 - 对于 `GET` 请求,你可以通过在**高级属性**中启用**分页**,并在调用端点时将 `page` 和 `page_size` 指定为查询参数来对结果进行分页。 例如,要获取每页 10 个项目的第二页,你可以使用以下命令: + 对于 `GET` 请求,你可以在 **Advance Properties** 启用 **Pagination**,并在调用接口时通过查询参数指定 `page` 和 `page_size`。例如,获取第 2 页且每页 10 条数据: ```bash curl --digest --user ':' \ --request GET 'https://.data.tidbcloud.com/api/v1beta/app//endpoint/?page=2&page_size=10' ``` - 请注意,此功能仅适用于最后一个查询是 `SELECT` 语句的 `GET` 请求。 + 该功能仅适用于最后一条查询为 `SELECT` 语句的 `GET` 请求。 - 有关更多信息,请参见 [调用端点](/tidb-cloud/data-service-manage-endpoint.md#call-an-endpoint)。 + 详情参见 [调用接口](/tidb-cloud/data-service-manage-endpoint.md#call-an-endpoint)。 -- [数据服务(beta)](https://tidbcloud.com/project/data-service) 支持缓存 `GET` 请求的端点响应,并指定生存时间 (TTL)。 +- [数据服务(Beta)](https://tidbcloud.com/project/data-service) 支持为 `GET` 请求的接口响应设置缓存及 TTL。 - 此功能可降低数据库负载并优化端点延迟。 + 该功能可降低数据库负载,优化接口延迟。 - 对于使用 `GET` 请求方法的端点,你可以启用**缓存响应**并在**高级属性**中配置缓存的 TTL 期限。 + 对于使用 `GET` 方法的接口,你可以在 **Advance Properties** 启用 **Cache Response** 并配置缓存 TTL。 - 有关更多信息,请参见 [高级属性](/tidb-cloud/data-service-manage-endpoint.md#advanced-properties)。 + 详情参见 [高级属性](/tidb-cloud/data-service-manage-endpoint.md#advanced-properties)。 -- 禁用为在 AWS 上托管并在 2023 年 8 月 15 日之后创建的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群进行的负载均衡改进,包括: +- 对 2023 年 8 月 15 日后在 AWS 上创建的 [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 禁用负载均衡改进,包括: - - 当你横向扩展在 AWS 上托管的 TiDB 节点时,禁用自动将现有连接迁移到新的 TiDB 节点。 - - 当你横向缩减在 AWS 上托管的 TiDB 节点时,禁用自动将现有连接迁移到可用的 TiDB 节点。 + - 禁用 TiDB 节点扩容时自动迁移现有连接到新节点。 + - 禁用 TiDB 节点缩容时自动迁移现有连接到可用节点。 - 此更改避免了混合部署的资源争用,并且不会影响已启用此改进的现有集群。 如果你想为新集群启用负载均衡改进,请联系 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 + 此变更避免混合部署资源争用,不影响已启用该改进的现有集群。如需为新集群启用负载均衡改进,请联系 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 ## 2023 年 8 月 8 日 -**常规变更** +**通用变更** -- [数据服务 (beta)](https://tidbcloud.com/project/data-service) 现在支持基本身份验证。 +- [数据服务(Beta)](https://tidbcloud.com/project/data-service) 现支持 Basic 认证。 - 你可以在请求中使用 ['Basic' HTTP 身份验证](https://datatracker.ietf.org/doc/html/rfc7617),并将你的公钥作为用户名,私钥作为密码提供。 与摘要身份验证相比,基本身份验证更简单,可以在调用数据服务端点时实现更直接的用法。 + 你可以在请求中将公钥作为用户名、私钥作为密码,使用 ['Basic' HTTP 认证](https://datatracker.ietf.org/doc/html/rfc7617)。与 Digest 认证相比,Basic 认证更简单,便于调用数据服务接口。 - 有关更多信息,请参阅 [调用端点](/tidb-cloud/data-service-manage-endpoint.md#call-an-endpoint)。 + 详情参见 [调用接口](/tidb-cloud/data-service-manage-endpoint.md#call-an-endpoint)。 ## 2023 年 8 月 1 日 -**常规变更** +**通用变更** -- 支持 TiDB Cloud 中数据应用的 OpenAPI 规范 [数据服务](https://tidbcloud.com/project/data-service)。 +- TiDB Cloud [数据服务](https://tidbcloud.com/project/data-service) 支持 Data App 的 OpenAPI 规范。 - TiDB Cloud 数据服务为每个数据应用提供自动生成的 OpenAPI 文档。 在文档中,你可以查看端点、参数和响应,并试用这些端点。 + TiDB Cloud 数据服务为每个 Data App 自动生成 OpenAPI 文档。你可以在文档中查看接口、参数和响应,并直接试用接口。 - 你还可以下载 YAML 或 JSON 格式的数据应用及其已部署端点的 OpenAPI 规范 (OAS)。 OAS 提供标准化的 API 文档、简化的集成和简单的代码生成,从而实现更快的开发和改进的协作。 + 你还可以下载 Data App 及其已部署接口的 OpenAPI 规范(OAS),支持 YAML 或 JSON 格式。OAS 提供标准化 API 文档、简化集成和便捷代码生成,加快开发和协作。 - 有关更多信息,请参阅 [使用 OpenAPI 规范](/tidb-cloud/data-service-manage-data-app.md#use-the-openapi-specification) 和 [将 OpenAPI 规范与 Next.js 结合使用](/tidb-cloud/data-service-oas-with-nextjs.md)。 + 详情参见 [使用 OpenAPI 规范](/tidb-cloud/data-service-manage-data-app.md#use-the-openapi-specification) 及 [结合 Next.js 使用 OpenAPI 规范](/tidb-cloud/data-service-oas-with-nextjs.md)。 -- 支持在 [Postman](https://www.postman.com/) 中运行数据应用。 +- 支持在 [Postman](https://www.postman.com/) 运行 Data App。 - Postman 集成使你能够将数据应用的端点作为集合导入到你首选的工作区中。 然后,你可以受益于增强的协作和无缝的 API 测试,并支持 Postman Web 和桌面应用程序。 + Postman 集成支持将 Data App 的接口作为集合导入你的工作区,便于协作和无缝 API 测试,支持 Postman Web 和桌面应用。 - 有关更多信息,请参阅 [在 Postman 中运行数据应用](/tidb-cloud/data-service-postman-integration.md)。 + 详情参见 [在 Postman 运行 Data App](/tidb-cloud/data-service-postman-integration.md)。 -- 为 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群引入新的 **暂停中** 状态,允许以经济高效的方式暂停,在此期间不收取任何费用。 +- [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 新增 **Pausing** 状态,暂停期间无需付费。 - 当你单击 TiDB Cloud Dedicated 集群的**暂停**时,该集群将首先进入**暂停中**状态。 暂停操作完成后,集群状态将转换为**已暂停**。 + 当你点击 **Pause**,集群会先进入 **Pausing** 状态,暂停完成后状态变为 **Paused**。 - 只有在集群状态转换为**已暂停**后才能恢复集群,这解决了因快速单击**暂停**和**恢复**而导致的异常恢复问题。 + 只有在状态变为 **Paused** 后才能恢复集群,解决了因频繁点击 **Pause** 和 **Resume** 导致的异常恢复问题。 - 有关更多信息,请参阅 [暂停或恢复 TiDB Cloud Dedicated 集群](/tidb-cloud/pause-or-resume-tidb-cluster.md)。 + 详情参见 [暂停或恢复 TiDB Cloud 专属集群](/tidb-cloud/pause-or-resume-tidb-cluster.md)。 ## 2023 年 7 月 26 日 -**常规变更** +**通用变更** -- 在 TiDB Cloud [数据服务](https://tidbcloud.com/project/data-service) 中引入一项强大的功能:自动端点生成。 +- TiDB Cloud [数据服务](https://tidbcloud.com/project/data-service) 引入自动生成接口功能。 - 开发者现在可以轻松地通过最少的点击和配置来创建 HTTP 端点。 消除重复的样板代码,简化并加速端点创建,并减少潜在的错误。 + 开发者可通过极少的点击和配置,轻松创建 HTTP 接口。无需重复编写样板代码,简化并加速接口创建,减少潜在错误。 - 有关如何使用此功能的更多信息,请参见 [自动生成端点](/tidb-cloud/data-service-manage-endpoint.md#generate-an-endpoint-automatically)。 + 详情参见 [自动生成接口](/tidb-cloud/data-service-manage-endpoint.md#generate-an-endpoint-automatically)。 -- 支持 TiDB Cloud [数据服务](https://tidbcloud.com/project/data-service) 中端点的 `PUT` 和 `DELETE` 请求方法。 +- TiDB Cloud [数据服务](https://tidbcloud.com/project/data-service) 支持接口的 `PUT` 和 `DELETE` 请求方法。 - - 使用 `PUT` 方法更新或修改数据,类似于 `UPDATE` 语句。 - - 使用 `DELETE` 方法删除数据,类似于 `DELETE` 语句。 + - `PUT` 用于更新或修改数据,类似 `UPDATE` 语句。 + - `DELETE` 用于删除数据,类似 `DELETE` 语句。 - 有关更多信息,请参见 [配置属性](/tidb-cloud/data-service-manage-endpoint.md#configure-properties)。 + 详情参见 [配置属性](/tidb-cloud/data-service-manage-endpoint.md#configure-properties)。 -- 支持 TiDB Cloud [数据服务](https://tidbcloud.com/project/data-service) 中 `POST`、`PUT` 和 `DELETE` 请求方法的**批量操作**。 +- TiDB Cloud [数据服务](https://tidbcloud.com/project/data-service) 支持 `POST`、`PUT`、`DELETE` 方法的 **批量操作**。 - 当为端点启用**批量操作**时,你将能够在单个请求中对多行执行操作。 例如,你可以使用单个 `POST` 请求插入多行数据。 + 启用 **Batch Operation** 后,可在单次请求中操作多行数据。例如,使用单个 `POST` 请求插入多行数据。 - 有关更多信息,请参见 [高级属性](/tidb-cloud/data-service-manage-endpoint.md#advanced-properties)。 + 详情参见 [高级属性](/tidb-cloud/data-service-manage-endpoint.md#advanced-properties)。 ## 2023 年 7 月 25 日 -**常规变更** +**通用变更** -- 将新的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v6.5.3](https://docs.pingcap.com/tidb/v6.5/release-6.5.3) 升级到 [v7.1.1](https://docs.pingcap.com/tidb/v7.1/release-7.1.1)。 +- 新建 [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的默认 TiDB 版本由 [v6.5.3](https://docs.pingcap.com/tidb/v6.5/release-6.5.3) 升级至 [v7.1.1](https://docs.pingcap.com/tidb/v7.1/release-7.1.1)。 **控制台变更** -- 通过优化支持条目,简化 TiDB Cloud 用户对 PingCAP 支持的访问。改进包括: +- 优化 TiDB Cloud 用户访问 PingCAP 支持的入口,包括: - - 在左下角的 中添加 **支持** 入口。 - - 改进 [TiDB Cloud 控制台](https://tidbcloud.com/) 右下角的 **?** 图标的菜单,使其更直观。 + - 在左下角 处新增 **Support** 入口。 + - 优化 [TiDB Cloud 控制台](https://tidbcloud.com/) 右下角 **?** 图标菜单,使其更直观。 - 更多信息,请参阅 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 + 详情参见 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 ## 2023 年 7 月 18 日 -**常规变更** +**通用变更** -- 优化了组织级别和项目级别的基于角色的访问控制,使你可以向用户授予具有最低权限的角色,从而提高安全性、合规性和生产力。 +- 优化组织级和项目级的基于角色的访问控制(RBAC),可为用户分配最小权限角色,提升安全性、合规性和生产力。 - - 组织角色包括 `Organization Owner`、`Organization Billing Admin`、`Organization Console Audit Admin` 和 `Organization Member`。 - - 项目角色包括 `Project Owner`、`Project Data Access Read-Write` 和 `Project Data Access Read-Only`。 - - 要管理项目中的集群(例如集群创建、修改和删除),你需要担任 `Organization Owner` 或 `Project Owner` 角色。 + - 组织角色包括:`Organization Owner`、`Organization Billing Admin`、`Organization Console Audit Admin`、`Organization Member`。 + - 项目角色包括:`Project Owner`、`Project Data Access Read-Write`、`Project Data Access Read-Only`。 + - 管理项目中的集群(如创建、修改、删除集群)需具备 `Organization Owner` 或 `Project Owner` 角色。 - 有关不同角色的权限的更多信息,请参阅 [用户角色](/tidb-cloud/manage-user-access.md#user-roles)。 + 各角色权限详情参见 [用户角色](/tidb-cloud/manage-user-access.md#user-roles)。 -- 支持用于在 AWS 上托管的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的客户管理的加密密钥 (CMEK) 功能(beta)。 +- [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated)(AWS)支持客户自管加密密钥(CMEK)(Beta)。 - 你可以创建基于 AWS KMS 的 CMEK,以直接从 TiDB Cloud 控制台加密存储在 EBS 和 S3 中的数据。这确保了客户数据使用客户管理的密钥进行加密,从而增强了安全性。 + 你可基于 AWS KMS 创建 CMEK,对 EBS 和 S3 中的数据进行加密,密钥由客户自主管理,提升安全性。 - 请注意,此功能仍有局限性,仅应要求提供。要申请此功能,请联系 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 + 该功能有一定限制,仅支持申请开通。如需申请,请联系 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 -- 优化 TiDB Cloud 中的导入功能,旨在增强数据导入体验。已进行以下改进: +- 优化 TiDB Cloud 的导入功能,提升数据导入体验,具体改进如下: - - 统一 TiDB Cloud Serverless 的导入入口:整合了导入数据的入口,使你可以无缝地在导入本地文件和从 Amazon S3 导入文件之间切换。 - - 简化配置:从 Amazon S3 导入数据现在只需要一个步骤,从而节省了时间和精力。 - - 增强的 CSV 配置:CSV 配置设置现在位于文件类型选项下,使你可以更轻松地快速配置必要的参数。 - - 增强的目标表选择:支持通过单击复选框来选择所需的数据导入目标表。此改进消除了对复杂表达式的需求,并简化了目标表选择。 - - 改进的显示信息:解决了与导入过程中显示的不准确信息相关的问题。此外,已删除“预览”功能,以防止不完整的数据显示并避免误导性信息。 - - 改进的源文件映射:支持定义源文件和目标表之间的映射关系。它解决了修改源文件名以满足特定命名要求的挑战。 + - Serverless 集群统一导入入口:整合本地文件和 Amazon S3 文件导入入口,便于切换。 + - 配置简化:从 Amazon S3 导入数据仅需一步,节省时间。 + - CSV 配置增强:CSV 配置项移至文件类型选项下,便于快速配置参数。 + - 目标表选择优化:支持通过勾选选择目标表,无需复杂表达式,简化操作。 + - 展示信息优化:修复导入过程中的信息不准确问题,移除预览功能,避免数据不全和误导。 + - 源文件映射改进:支持自定义源文件与目标表的映射关系,无需修改源文件名以适配命名要求。 ## 2023 年 7 月 11 日 -**常规变更** +**通用变更** -- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 现已正式发布 (Generally Available)。 +- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 现已正式发布(GA)。 -- 推出 TiDB Bot (beta),这是一个由 OpenAI 提供支持的聊天机器人,提供多语言支持、24/7 实时响应和集成的文档访问。 +- 引入 TiDB Bot(Beta),基于 OpenAI 的聊天机器人,支持多语言、7x24 实时响应和文档集成。 - TiDB Bot 为你提供以下好处: + TiDB Bot 带来如下优势: - - 持续支持:始终可用以协助和回答你的问题,从而增强支持体验。 - - 提高效率:自动响应减少延迟,从而提高整体运营效率。 - - 无缝文档访问:直接访问 TiDB Cloud 文档,以便轻松检索信息和快速解决问题。 + - 持续支持:随时为你解答问题,提升支持体验。 + - 提高效率:自动化响应降低延迟,提升整体运维效率。 + - 无缝文档访问:可直接访问 TiDB Cloud 文档,便于信息检索和问题解决。 - 要使用 TiDB Bot,请单击 [TiDB Cloud 控制台](https://tidbcloud.com) 右下角的 **?**,然后选择 **Ask TiDB Bot** 开始聊天。 + 使用方法:在 [TiDB Cloud 控制台](https://tidbcloud.com) 右下角点击 **?**,选择 **Ask TiDB Bot** 开始对话。 -- 支持 [分支功能 (beta)](/tidb-cloud/branch-overview.md),适用于 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。 +- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群支持 [分支功能(Beta)](/tidb-cloud/branch-overview.md)。 - TiDB Cloud 允许你为 TiDB Cloud Serverless 集群创建分支。集群的分支是一个独立的实例,其中包含来自原始集群的数据的分叉副本。它提供了一个隔离的环境,允许你连接到它并自由地进行实验,而不必担心影响原始集群。 + 你可以为 TiDB Cloud Serverless 集群创建分支。分支是原集群数据的分叉副本,提供隔离环境,便于自由实验而不影响原集群。 - 你可以使用 [TiDB Cloud 控制台](/tidb-cloud/branch-manage.md) 或 [TiDB Cloud CLI](/tidb-cloud/ticloud-branch-create.md) 为 2023 年 7 月 5 日之后创建的 TiDB Cloud Serverless 集群创建分支。 + 2023 年 7 月 5 日后创建的 Serverless 集群可通过 [TiDB Cloud 控制台](/tidb-cloud/branch-manage.md) 或 [TiDB Cloud CLI](/tidb-cloud/ticloud-branch-create.md) 创建分支。 - 如果你使用 GitHub 进行应用程序开发,则可以将 TiDB Cloud Serverless 分支集成到你的 GitHub CI/CD 管道中,这使你可以自动使用分支测试你的拉取请求,而不会影响生产数据库。有关更多信息,请参见 [将 TiDB Cloud Serverless 分支(Beta)与 GitHub 集成](/tidb-cloud/branch-github-integration.md)。 + 若你使用 GitHub 进行应用开发,可将分支集成到 CI/CD 流程,实现 PR 自动测试且不影响生产库。详情参见 [与 GitHub 集成 TiDB Cloud Serverless 分支(Beta)](/tidb-cloud/branch-github-integration.md)。 -- 支持 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的每周备份。有关更多信息,请参见 [备份和恢复 TiDB Cloud Dedicated 数据](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup)。 +- [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 支持每周备份。详情参见 [开启自动备份](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup)。 -## 2023 年 7 月 4 日 +## 2023 年 7 月 4 日 -**常规变更** +**通用变更** -- 支持 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的时间点恢复 (PITR)(测试版)。 +- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群支持时间点恢复(PITR)(Beta)。 - 现在,你可以将 TiDB Cloud Serverless 集群恢复到过去 90 天内的任何时间点。此功能增强了 TiDB Cloud Serverless 集群的数据恢复能力。例如,当发生数据写入错误并且你想要将数据恢复到较早的状态时,可以使用 PITR。 + 你可以将 Serverless 集群恢复到过去 90 天内的任意时间点,提升数据恢复能力。例如,数据写入出错时可用 PITR 恢复到早期状态。 - 有关更多信息,请参阅[备份和恢复 TiDB Cloud Serverless 数据](/tidb-cloud/backup-and-restore-serverless.md#restore)。 + 详情参见 [备份与恢复 TiDB Cloud Serverless 数据](/tidb-cloud/backup-and-restore-serverless.md#restore)。 **控制台变更** -- 增强了 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的集群概览页面上的**本月用量**面板,以提供更清晰的当前资源使用情况视图。 +- 优化 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群概览页的 **Usage This Month** 面板,资源使用情况更清晰。 -- 通过进行以下更改来增强整体导航体验: +- 优化整体导航体验,具体变更如下: - - 将右上角的 **组织** 和 **帐户** 合并到左侧导航栏中。 - - 将左侧导航栏中的 **管理** 合并到左侧导航栏中的 **项目** 中,并删除左上角的 ☰ 悬停菜单。现在,你可以单击 以在项目之间切换并修改项目设置。 - - 将 TiDB Cloud 的所有帮助和支持信息整合到右下角 **?** 图标的菜单中,例如文档、交互式教程、自定进度的培训和支持条目。 + - 将右上角 **Organization** 和 **Account** 合并到左侧导航栏。 + - 将左侧导航栏 **Admin** 合并到 **Project**,移除左上角 ☰ 悬浮菜单。现在可点击 切换项目及修改设置。 + - 将所有帮助与支持信息整合到右下角 **?** 菜单,包括文档、交互式教程、自助培训和支持入口。 -- TiDB Cloud 控制台现在支持暗黑模式,提供更舒适、更护眼的体验。你可以从左侧导航栏底部在浅色模式和深色模式之间切换。 +- TiDB Cloud 控制台现支持暗黑模式,提供更舒适的护眼体验。可在左侧导航栏底部切换明暗模式。 ## 2023 年 6 月 27 日 -**常规变更** +**通用变更** -- 移除为新创建的 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群预置的示例数据集。 +- 新建 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群不再预置示例数据集。 ## 2023 年 6 月 20 日 -**常规变更** +**通用变更** -- 将新 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v6.5.2](https://docs.pingcap.com/tidb/v6.5/release-6.5.2) 升级到 [v6.5.3](https://docs.pingcap.com/tidb/v6.5/release-6.5.3)。 +- 新建 [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的默认 TiDB 版本由 [v6.5.2](https://docs.pingcap.com/tidb/v6.5/release-6.5.2) 升级至 [v6.5.3](https://docs.pingcap.com/tidb/v6.5/release-6.5.3)。 ## 2023 年 6 月 13 日 -**常规变更** +**通用变更** -- 支持使用变更流将数据流式传输到 Amazon S3。 +- 支持通过 changefeed 将数据流式写入 Amazon S3。 - 这实现了 TiDB Cloud 和 Amazon S3 之间的无缝集成。它允许从 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群进行实时数据捕获和复制到 Amazon S3,确保下游应用程序和分析可以访问最新的数据。 + 实现 TiDB Cloud 与 Amazon S3 的无缝集成,支持将 [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的数据实时捕获并同步到 Amazon S3,确保下游应用和分析系统获取最新数据。 - 更多信息,请参见 [Sink to cloud storage](/tidb-cloud/changefeed-sink-to-cloud-storage.md)。 + 详情参见 [流式写入云存储](/tidb-cloud/changefeed-sink-to-cloud-storage.md)。 -- 将 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的 16 vCPU TiKV 的最大节点存储从 4 TiB 增加到 6 TiB。 +- [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的 16 vCPU TiKV 节点最大存储由 4 TiB 提升至 6 TiB。 - 此增强功能增加了 TiDB Cloud Dedicated 集群的数据存储容量,提高了工作负载扩展效率,并满足了不断增长的数据需求。 + 提升集群数据存储能力,提高工作负载扩展效率,满足数据增长需求。 - 更多信息,请参见 [Size your cluster](/tidb-cloud/size-your-cluster.md)。 + 详情参见 [集群规格选择](/tidb-cloud/size-your-cluster.md)。 -- 将 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的[监控指标保留期](/tidb-cloud/built-in-monitoring.md#metrics-retention-policy) 从 3 天延长至 7 天。 +- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的 [监控指标保留期](/tidb-cloud/built-in-monitoring.md#metrics-retention-policy) 由 3 天延长至 7 天。 - 通过延长指标保留期,你现在可以访问更多历史数据。 这有助于你识别集群的趋势和模式,从而做出更好的决策并更快地进行故障排除。 + 你可访问更多历史数据,便于识别集群趋势和模式,提升决策和故障排查效率。 **控制台变更** -- 为 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的 [**Key Visualizer**](/tidb-cloud/tune-performance.md#key-visualizer) 页面发布新的原生 Web 基础设施。 +- [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的 [**Key Visualizer**](/tidb-cloud/tune-performance.md#key-visualizer) 页面发布全新原生 Web 架构。 - 借助新的基础设施,你可以轻松浏览 **Key Visualizer** 页面,并以更直观和高效的方式访问必要的信息。 新的基础设施还解决了 UX 上的许多问题,使 SQL 诊断过程更加用户友好。 + 新架构提升页面导航和信息获取体验,优化用户体验,使 SQL 诊断更友好。 ## 2023 年 6 月 6 日 -**常规变更** +**通用变更** -- 为 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群引入 [Index Insight (beta)](/tidb-cloud/index-insight.md),它通过为慢查询提供索引建议来优化查询性能。 +- [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 引入 [Index Insight(Beta)](/tidb-cloud/index-insight.md),为慢查询提供索引推荐,优化查询性能。 - 借助 Index Insight,你可以通过以下方式提高整体应用程序性能和数据库操作效率: + Index Insight 可提升数据库操作性能和效率,具体包括: - - 增强的查询性能:Index Insight 识别慢查询并为其建议适当的索引,从而加快查询执行速度,缩短响应时间并改善用户体验。 - - 成本效益:通过使用 Index Insight 优化查询性能,可以减少对额外计算资源的需求,从而使你能够更有效地利用现有基础设施。 这可能会带来运营成本的节省。 - - 简化的优化过程:Index Insight 简化了索引改进的识别和实施,无需手动分析和猜测。 因此,你可以节省时间和精力,并获得准确的索引建议。 - - 提高应用程序效率:通过使用 Index Insight 优化数据库性能,在 TiDB Cloud 上运行的应用程序可以处理更大的工作负载并同时为更多用户提供服务,从而使应用程序的扩展操作更加高效。 + - 查询性能提升:识别慢查询并推荐合适索引,加速查询执行,降低响应时间,提升用户体验。 + - 成本优化:通过索引优化减少额外计算资源消耗,更高效利用现有基础设施,降低运维成本。 + - 优化流程简化:自动识别和推荐索引,无需手动分析和猜测,节省时间和精力。 + - 应用效率提升:优化数据库性能后,应用可承载更大负载和更多并发用户,提升扩展能力。 - 要使用 Index Insight,请导航到 TiDB Cloud Dedicated 集群的**诊断**页面,然后单击 **Index Insight BETA** 选项卡。 + 使用方法:进入专属集群 **Diagnosis** 页面,点击 **Index Insight BETA** 标签。 - 有关更多信息,请参见 [使用 Index Insight (beta)](/tidb-cloud/index-insight.md)。 + 详情参见 [使用 Index Insight(Beta)](/tidb-cloud/index-insight.md)。 -- 引入 [TiDB Playground](https://play.tidbcloud.com/?utm_source=docs&utm_medium=tidb_cloud_release_notes),这是一个交互式平台,无需注册或安装即可体验 TiDB 的全部功能。 +- 推出 [TiDB Playground](https://play.tidbcloud.com/?utm_source=docs&utm_medium=tidb_cloud_release_notes),无需注册或安装即可体验 TiDB 全功能的交互平台。 - TiDB Playground 是一个交互式平台,旨在为探索 TiDB 的功能(例如可伸缩性、MySQL 兼容性和实时分析)提供一站式体验。 + TiDB Playground 提供一站式体验,支持扩展性、MySQL 兼容性和实时分析等功能。 - 借助 TiDB Playground,你可以在受控环境中实时试用 TiDB 功能,而无需复杂的配置,这使其成为了解 TiDB 功能的理想选择。 + 你可在受控环境下实时试用 TiDB 功能,便于理解 TiDB 特性。 - 要开始使用 TiDB Playground,请转到 [**TiDB Playground**](https://play.tidbcloud.com/?utm_source=docs&utm_medium=tidb_cloud_release_notes) 页面,选择要探索的功能,然后开始你的探索。 + 立即体验,请访问 [**TiDB Playground**](https://play.tidbcloud.com/?utm_source=docs&utm_medium=tidb_cloud_release_notes) 页面,选择要探索的功能并开始。 ## 2023 年 6 月 5 日 **通用变更** -- 支持将你的 [数据应用](/tidb-cloud/tidb-cloud-glossary.md#data-app) 连接到 GitHub。 +- 支持将 [Data App](/tidb-cloud/tidb-cloud-glossary.md#data-app) 连接到 GitHub。 - 通过 [将你的数据应用连接到 GitHub](/tidb-cloud/data-service-manage-github-connection.md),你可以将数据应用的所有配置作为 GitHub 上的 [代码文件](/tidb-cloud/data-service-app-config-files.md) 进行管理,从而将 TiDB Cloud 数据服务与你的系统架构和 DevOps 流程无缝集成。 + [连接 Data App 到 GitHub](/tidb-cloud/data-service-manage-github-connection.md) 后,可将所有配置作为 [代码文件](/tidb-cloud/data-service-app-config-files.md) 管理,实现与系统架构和 DevOps 流程的无缝集成。 - 借助此功能,你可以轻松完成以下任务,从而改善开发数据应用的 CI/CD 体验: + 该功能提升 Data App 开发的 CI/CD 体验,支持: - - 使用 GitHub 自动部署数据应用更改。 - - 在 GitHub 上使用版本控制配置数据应用更改的 CI/CD 管道。 - - 断开与已连接的 GitHub 存储库的连接。 - - 在部署之前查看端点更改。 - - 查看部署历史记录,并在发生故障时采取必要的措施。 - - 重新部署提交以回滚到较早的部署。 + - 通过 GitHub 自动部署 Data App 变更。 + - 在 GitHub 上配置 Data App 变更的 CI/CD 流程并进行版本控制。 + - 断开与 GitHub 仓库的连接。 + - 部署前审查接口变更。 + - 查看部署历史并在失败时采取措施。 + - 重新部署某次提交以回滚到早期部署。 - 有关更多信息,请参见 [使用 GitHub 自动部署数据应用](/tidb-cloud/data-service-manage-github-connection.md)。 + 详情参见 [通过 GitHub 自动部署 Data App](/tidb-cloud/data-service-manage-github-connection.md)。 ## 2023 年 6 月 2 日 -**常规变更** +**通用变更** -- 为了简化和明确,我们更新了产品的名称: +- 为简化和明晰产品命名,现已更新产品名称: - - "TiDB Cloud Serverless Tier" 现在称为 "TiDB Cloud Serverless"。 - - "TiDB Cloud Dedicated Tier" 现在称为 "TiDB Cloud Dedicated"。 - - "TiDB On-Premises" 现在称为 "TiDB Self-Managed"。 + - “TiDB Cloud Serverless Tier” 现称为 “TiDB Cloud Serverless”。 + - “TiDB Cloud Dedicated Tier” 现称为 “TiDB Cloud 专属集群”。 + - “TiDB On-Premises” 现称为 “TiDB 自管版”。 - 在这些更新后的名称下享受同样的卓越性能。你的体验是我们的首要任务。 + 名称焕新,性能如一。你的体验始终是我们的首要任务。 ## 2023 年 5 月 30 日 -**常规变更** +**通用变更** -- 增强了 TiDB Cloud 中数据迁移功能对增量数据迁移的支持。 +- 增强 TiDB Cloud 数据迁移功能对增量数据迁移的支持。 - 现在,你可以指定一个 binlog 位置或全局事务标识符 (GTID),仅复制指定位置之后生成的增量数据到 TiDB Cloud。此增强功能使你能够更灵活地选择和复制所需的数据,以满足你的特定需求。 + 你现在可以指定 binlog 位置或全局事务标识(GTID),仅同步指定位置之后产生的增量数据到 TiDB Cloud。该增强为你提供更灵活的数据选择和同步能力,满足个性化需求。 - 有关详细信息,请参阅[使用数据迁移将 MySQL 兼容数据库中的增量数据迁移到 TiDB Cloud](/tidb-cloud/migrate-incremental-data-from-mysql-using-data-migration.md)。 + 详情参见 [仅迁移 MySQL 兼容数据库的增量数据到 TiDB Cloud](/tidb-cloud/migrate-incremental-data-from-mysql-using-data-migration.md)。 -- 在 [**事件**](/tidb-cloud/tidb-cloud-events.md) 页面添加了一个新的事件类型 (`ImportData`)。 +- [**Events**](/tidb-cloud/tidb-cloud-events.md) 页面新增事件类型 `ImportData`。 -- 从 TiDB Cloud 控制台中移除 **Playground**。 +- 从 TiDB Cloud 控制台移除 **Playground**。 - 敬请期待具有优化体验的全新独立 Playground。 + 敬请期待全新独立 Playground,体验将进一步优化。 ## 2023 年 5 月 23 日 -**常规变更** +**通用变更** -- 当上传 CSV 文件到 TiDB 时,你不仅可以使用英文字母和数字,还可以使用中文和日文等字符来定义列名。但是,对于特殊字符,仅支持下划线 (`_`)。 +- 上传 CSV 文件到 TiDB 时,除英文和数字外,还可用中文、日文等字符定义列名。但特殊字符仅支持下划线(`_`)。 - 有关详细信息,请参阅 [将本地文件导入到 TiDB Cloud](/tidb-cloud/tidb-cloud-import-local-files.md)。 + 详情参见 [导入本地文件到 TiDB Cloud](/tidb-cloud/tidb-cloud-import-local-files.md)。 ## 2023 年 5 月 16 日 **控制台变更** -- 引入按功能类别组织的左侧导航条目,适用于专用层和无服务器层。 +- 为专属集群和 Serverless 集群引入按功能分类的左侧导航入口。 - 新的导航使你更容易、更直观地发现功能条目。要查看新的导航,请访问集群的概览页面。 + 新导航更易发现功能入口。可在集群概览页体验新导航。 -- 为专用层集群的**诊断**页面上的以下两个选项卡发布新的原生 Web 基础设施。 +- 专属集群 **Diagnosis** 页的以下两个标签页发布全新原生 Web 架构: - - [慢查询](/tidb-cloud/tune-performance.md#slow-query) - - [SQL 语句](/tidb-cloud/tune-performance.md#statement-analysis) + - [Slow Query](/tidb-cloud/tune-performance.md#slow-query) + - [SQL Statement](/tidb-cloud/tune-performance.md#statement-analysis) - 借助新的基础设施,你可以轻松浏览这两个选项卡,并以更直观、更高效的方式访问必要的信息。新的基础设施还改善了用户体验,使 SQL 诊断过程更加用户友好。 + 新架构提升页面导航和信息获取体验,优化用户体验,使 SQL 诊断更友好。 ## 2023 年 5 月 9 日 -**常规变更** +**通用变更** -- 支持更改 2023 年 4 月 26 日之后创建的 GCP 托管集群的节点大小。 +- 支持为 2023 年 4 月 26 日后创建的 GCP 集群变更节点规格。 - 借助此功能,你可以升级到更高性能的节点以满足更高的需求,或者降级到更低性能的节点以节省成本。 凭借这种增加的灵活性,你可以调整集群的容量以适应你的工作负载并优化成本。 + 你可根据需求升级高性能节点或降级低性能节点,灵活调整集群容量,优化成本。 - 有关详细步骤,请参阅[更改节点大小](/tidb-cloud/scale-tidb-cluster.md#change-vcpu-and-ram)。 + 详细操作参见 [变更节点规格](/tidb-cloud/scale-tidb-cluster.md#change-vcpu-and-ram)。 -- 支持导入压缩文件。 你可以导入以下格式的 CSV 和 SQL 文件:`.gzip`、`.gz`、`.zstd`、`.zst` 和 `.snappy`。 此功能提供了一种更高效且经济高效的数据导入方式,并降低了你的数据传输成本。 +- 支持导入压缩文件。可导入 `.gzip`、`.gz`、`.zstd`、`.zst`、`.snappy` 格式的 CSV 和 SQL 文件,提升导入效率并降低数据传输成本。 - 有关更多信息,请参阅[将 CSV 文件从云存储导入到 TiDB Cloud Dedicated](/tidb-cloud/import-csv-files.md)和[导入示例数据](/tidb-cloud/import-sample-data.md)。 + 详情参见 [从云存储导入 CSV 文件到 TiDB Cloud 专属集群](/tidb-cloud/import-csv-files.md) 及 [导入示例数据](/tidb-cloud/import-sample-data.md)。 -- 支持基于 AWS PrivateLink 的端点连接,作为 TiDB Cloud [Serverless Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的一种新的网络访问管理选项。 +- [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 支持基于 AWS PrivateLink 的私有端点连接,作为新的网络访问管理选项。 - 私有端点连接不会将你的数据暴露给公共互联网。 此外,端点连接支持 CIDR 重叠,并且更易于网络管理。 + 私有端点连接不暴露数据于公网,支持 CIDR 重叠,便于网络管理。 - 有关更多信息,请参阅[设置私有端点连接](/tidb-cloud/set-up-private-endpoint-connections.md)。 + 详情参见 [设置私有端点连接](/tidb-cloud/set-up-private-endpoint-connections.md)。 **控制台变更** -- 将新的事件类型添加到[**事件**](/tidb-cloud/tidb-cloud-events.md)页面,以记录 [Dedicated Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的备份、恢复和变更数据捕获操作。 +- [**Event**](/tidb-cloud/tidb-cloud-events.md) 页面新增事件类型,记录专属集群的备份、恢复和 changefeed 操作。 - 要获取可以记录的事件的完整列表,请参阅[已记录的事件](/tidb-cloud/tidb-cloud-events.md#logged-events)。 + 事件类型完整列表参见 [已记录事件](/tidb-cloud/tidb-cloud-events.md#logged-events)。 -- 在 [**SQL 诊断**](/tidb-cloud/tune-performance.md) 页面上为 [Serverless Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群引入 **SQL 语句** 选项卡。 +- [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 的 [**SQL Diagnosis**](/tidb-cloud/tune-performance.md) 页面新增 **SQL Statement** 标签页。 - **SQL 语句** 选项卡提供以下内容: + **SQL Statement** 标签页提供: - - 全面概述 TiDB 数据库执行的所有 SQL 语句,使你可以轻松识别和诊断慢查询。 - - 有关每个 SQL 语句的详细信息,例如查询时间、执行计划和数据库服务器响应,帮助你优化数据库性能。 - - 用户友好的界面,可以轻松地对大量数据进行排序、过滤和搜索,使你可以专注于最关键的查询。 + - 所有 SQL 语句的全面概览,便于识别和诊断慢查询。 + - 每条 SQL 语句的详细信息,如查询时间、执行计划、数据库响应,助力优化性能。 + - 友好的界面,便于排序、筛选和搜索大量数据,聚焦关键查询。 - 有关更多信息,请参阅[语句分析](/tidb-cloud/tune-performance.md#statement-analysis)。 + 详情参见 [语句分析](/tidb-cloud/tune-performance.md#statement-analysis)。 ## 2023 年 5 月 6 日 -**常规变更** +**通用变更** -- 支持直接访问 TiDB [Serverless 层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群所在区域的[数据服务终端节点](/tidb-cloud/tidb-cloud-glossary.md#endpoint)。 +- 支持直接访问 TiDB [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 所在区域的 [Data Service endpoint](/tidb-cloud/tidb-cloud-glossary.md#endpoint)。 - 对于新创建的 Serverless 层集群,终端节点 URL 现在包含集群区域信息。 通过请求区域域名 `.data.tidbcloud.com`,你可以直接访问 TiDB 集群所在区域的终端节点。 + 新建 Serverless 集群的 endpoint URL 现包含集群区域信息。通过 `.data.tidbcloud.com` 可直接访问对应区域的 endpoint。 - 或者,你也可以请求全局域名 `data.tidbcloud.com` 而不指定区域。 这样,TiDB Cloud 将在内部将请求重定向到目标区域,但这可能会导致额外的延迟。 如果你选择这种方式,请确保在调用终端节点时将 `--location-trusted` 选项添加到你的 curl 命令中。 + 也可通过 `data.tidbcloud.com` 全局域名访问,系统会自动重定向,但可能增加延迟。此方式下,调用接口时需为 curl 命令添加 `--location-trusted` 选项。 - 有关更多信息,请参阅[调用终端节点](/tidb-cloud/data-service-manage-endpoint.md#call-an-endpoint)。 + 详情参见 [调用接口](/tidb-cloud/data-service-manage-endpoint.md#call-an-endpoint)。 ## 2023 年 4 月 25 日 -**常规变更** +**通用变更** -- 对于你组织中的前五个 [Serverless Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群,TiDB Cloud 为每个集群提供如下免费使用配额: +- 组织下前五个 [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 均享有免费额度: - 行存储:5 GiB - - [请求单元 (RUs)](/tidb-cloud/tidb-cloud-glossary.md#request-unit):每月 5000 万 RUs + - [请求单位(RU)](/tidb-cloud/tidb-cloud-glossary.md#request-unit):每月 5000 万 RU - 在 2023 年 5 月 31 日之前,Serverless Tier 集群仍然免费,享受 100% 折扣。之后,超出免费配额的使用量将被收费。 + 2023 年 5 月 31 日前,Serverless 集群仍免费。超出免费额度后将计费。 - 你可以轻松地在集群**概览**页面的**本月使用量**区域[监控你的集群使用量或增加你的使用配额](/tidb-cloud/manage-serverless-spend-limit.md#manage-spending-limit-for-tidb-cloud-serverless-scalable-clusters)。一旦集群达到免费配额,该集群上的读写操作将被限制,直到你增加配额或在新月份开始时重置使用量。 + 你可在集群 **Overview** 页的 **Usage This Month** 区域 [监控用量或提升额度](/tidb-cloud/manage-serverless-spend-limit.md)。超出免费额度后,读写操作将被限流,直至提升额度或新月重置。 - 有关不同资源(包括读取、写入、SQL CPU 和网络出口)的 RU 消耗、定价详情和限制信息的更多信息,请参阅 [TiDB Cloud Serverless Tier 定价详情](https://www.pingcap.com/tidb-cloud-serverless-pricing-details)。 + 各资源(读、写、SQL CPU、网络出流量)RU 消耗、定价及限流详情参见 [TiDB Cloud Serverless Tier 价格详情](https://www.pingcap.com/tidb-cloud-serverless-pricing-details)。 -- 支持 TiDB Cloud [Serverless Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的备份和恢复。 +- [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 支持备份与恢复。 - 有关更多信息,请参阅 [备份和恢复 TiDB 集群数据](/tidb-cloud/backup-and-restore-serverless.md)。 + 详情参见 [备份与恢复 TiDB 集群数据](/tidb-cloud/backup-and-restore-serverless.md)。 -- 将新的 [Dedicated Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v6.5.1](https://docs.pingcap.com/tidb/v6.5/release-6.5.1) 升级到 [v6.5.2](https://docs.pingcap.com/tidb/v6.5/release-6.5.2)。 +- 新建 [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的默认 TiDB 版本由 [v6.5.1](https://docs.pingcap.com/tidb/v6.5/release-6.5.1) 升级至 [v6.5.2](https://docs.pingcap.com/tidb/v6.5/release-6.5.2)。 -- 提供维护窗口功能,使你能够轻松地为 [Dedicated Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群安排和管理计划的维护活动。 +- [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 提供维护窗口功能,便于你安排和管理计划性维护。 - 维护窗口是指定的时间段,在此期间会自动执行计划的维护活动,例如操作系统更新、安全补丁和基础设施升级,以确保 TiDB Cloud 服务的可靠性、安全性和性能。 + 维护窗口为自动执行操作系统更新、安全补丁、基础设施升级等计划性维护的时间段,保障服务可靠性、安全性和性能。 - 在维护窗口期间,可能会发生临时连接中断或 QPS 波动,但集群仍然可用,并且 SQL 操作、现有数据导入、备份、恢复、迁移和复制任务仍然可以正常运行。请参阅维护期间[允许和禁止的操作列表](/tidb-cloud/configure-maintenance-window.md#allowed-and-disallowed-operations-during-a-maintenance-window)。 + 维护期间可能出现短暂连接中断或 QPS 波动,但集群可用,SQL 操作及数据导入、备份、恢复、迁移、同步任务均可正常运行。维护期间允许和禁止的操作详见 [文档](/tidb-cloud/configure-maintenance-window.md#allowed-and-disallowed-operations-during-a-maintenance-window)。 - 我们将努力尽量减少维护频率。如果计划了维护窗口,则默认开始时间为目标周的星期三 03:00(基于你的 TiDB Cloud 组织的时区)。为避免潜在的中断,重要的是要注意维护计划并相应地计划你的操作。 + 我们将尽量减少维护频率。若有维护计划,默认开始时间为目标周三 03:00(以组织时区为准)。请关注维护计划,合理安排操作。 - - 为了让你了解情况,TiDB Cloud 将为每个维护窗口向你发送三封电子邮件通知:一封在维护任务之前,一封在维护任务开始时,一封在维护任务之后。 - - 为了最大限度地减少维护影响,你可以在**维护**页面上将维护开始时间修改为你首选的时间或推迟维护活动。 + - TiDB Cloud 会为每次维护窗口发送三封邮件:维护前、开始时和结束后。 + - 你可在 **Maintenance** 页面修改维护开始时间或延后维护,以减少影响。 - 有关更多信息,请参阅 [配置维护窗口](/tidb-cloud/configure-maintenance-window.md)。 + 详情参见 [配置维护窗口](/tidb-cloud/configure-maintenance-window.md)。 -- 改进 TiDB 的负载均衡,并减少在扩展 AWS 上托管并在 2023 年 4 月 25 日之后创建的 [Dedicated Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的 TiDB 节点时连接断开的情况。 +- 优化 AWS 上新建 [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的 TiDB 负载均衡,缩放 TiDB 节点时减少连接中断。 - - 支持在扩展 TiDB 节点时自动将现有连接迁移到新的 TiDB 节点。 - - 支持在缩减 TiDB 节点时自动将现有连接迁移到可用的 TiDB 节点。 + - 扩容时,支持自动迁移现有连接到新 TiDB 节点。 + - 缩容时,支持自动迁移现有连接到可用 TiDB 节点。 - 目前,此功能适用于 AWS 上托管的所有 Dedicated Tier 集群。 + 目前该功能适用于所有 AWS 上的专属集群。 **控制台变更** -- 为 [Dedicated Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的 [监控](/tidb-cloud/built-in-monitoring.md#view-the-metrics-page) 页面发布新的原生 Web 基础设施。 +- [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的 [Monitoring](/tidb-cloud/built-in-monitoring.md#view-the-metrics-page) 页面发布全新原生 Web 架构。 - 借助新的基础设施,你可以轻松浏览[监控](/tidb-cloud/built-in-monitoring.md#view-the-metrics-page)页面,并以更直观和高效的方式访问必要的信息。新的基础设施还解决了 UX 上的许多问题,使监控过程更加用户友好。 + 新架构提升页面导航和信息获取体验,优化用户体验,使监控更友好。 ## 2023 年 4 月 18 日 -**常规变更** +**通用变更** -- 支持为[专用层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated)集群向上或向下扩展[数据迁移作业规格](/tidb-cloud/tidb-cloud-billing-dm.md#specifications-for-data-migration)。 +- [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 支持扩缩 [数据迁移任务规格](/tidb-cloud/tidb-cloud-billing-dm.md#specifications-for-data-migration)。 - 使用此功能,你可以通过向上扩展规格来提高迁移性能,或者通过向下扩展规格来降低成本。 + 你可通过扩容提升迁移性能,或缩容降低成本。 - 有关更多信息,请参阅[使用数据迁移将 MySQL 兼容数据库迁移到 TiDB Cloud](/tidb-cloud/migrate-from-mysql-using-data-migration.md#scale-a-migration-job-specification)。 + 详情参见 [使用数据迁移迁移 MySQL 兼容数据库到 TiDB Cloud](/tidb-cloud/migrate-from-mysql-using-data-migration.md#scale-a-migration-job-specification)。 **控制台变更** -- 改进了 UI,使[集群创建](https://tidbcloud.com/clusters/create-cluster)体验更加用户友好,使你只需点击几下即可创建和配置集群。 +- 全新 UI 设计优化 [集群创建](https://tidbcloud.com/clusters/create-cluster) 流程,提升易用性,仅需几步即可完成集群创建和配置。 - 新设计侧重于简洁性,减少视觉混乱并提供清晰的说明。 在集群创建页面上单击**创建**后,你将被定向到集群概览页面,而无需等待集群创建完成。 + 新设计简化界面,减少视觉干扰,指引清晰。点击 **Create** 后将直接跳转至集群概览页,无需等待集群创建完成。 - 有关更多信息,请参阅[创建集群](/tidb-cloud/create-tidb-cluster.md)。 + 详情参见 [创建集群](/tidb-cloud/create-tidb-cluster.md)。 -- 在**账单**页面上引入**折扣**选项卡,以显示组织所有者和账单管理员的折扣信息。 +- **Billing** 页新增 **Discounts** 标签,展示组织所有者和账单管理员的折扣信息。 - 有关更多信息,请参阅[折扣](/tidb-cloud/tidb-cloud-billing.md#discounts)。 + 详情参见 [Discounts](/tidb-cloud/tidb-cloud-billing.md#discounts)。 ## 2023 年 4 月 11 日 -**常规变更** +**通用变更** -- 提高 TiDB 的负载均衡,并减少在 AWS 上托管的 [专用层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群扩展 TiDB 节点时连接断开的情况。 +- 优化 AWS 上 [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的 TiDB 负载均衡,缩放 TiDB 节点时减少连接中断。 - - 支持在横向扩展 TiDB 节点时,自动将现有连接迁移到新的 TiDB 节点。 - - 支持在横向缩减 TiDB 节点时,自动将现有连接迁移到可用的 TiDB 节点。 + - 扩容时,支持自动迁移现有连接到新 TiDB 节点。 + - 缩容时,支持自动迁移现有连接到可用 TiDB 节点。 - 目前,此功能仅适用于托管在 AWS `俄勒冈 (us-west-2)` 区域的专用层集群。 + 目前该功能仅适用于 AWS `Oregon (us-west-2)` 区域的专属集群。 -- 支持 [New Relic](https://newrelic.com/) 集成,用于 [专用层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群。 +- [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 支持 [New Relic](https://newrelic.com/) 集成。 - 通过 New Relic 集成,你可以配置 TiDB Cloud 将 TiDB 集群的指标数据发送到 [New Relic](https://newrelic.com/)。 然后,你可以在 [New Relic](https://newrelic.com/) 上监控和分析你的应用程序性能和 TiDB 数据库性能。 此功能可以帮助你快速识别和排除潜在问题,并缩短解决时间。 + 你可将 TiDB 集群的监控数据发送至 [New Relic](https://newrelic.com/),实现应用与数据库性能的统一监控和分析,便于快速定位和解决问题。 - 有关集成步骤和可用指标,请参阅 [将 TiDB Cloud 与 New Relic 集成](/tidb-cloud/monitor-new-relic-integration.md)。 + 集成步骤及可用指标参见 [集成 New Relic](/tidb-cloud/monitor-new-relic-integration.md)。 -- 将以下 [changefeed](/tidb-cloud/changefeed-overview.md) 指标添加到专用层集群的 Prometheus 集成中。 +- 为专属集群的 [changefeed](/tidb-cloud/changefeed-overview.md) Prometheus 集成新增以下指标: - `tidbcloud_changefeed_latency` - `tidbcloud_changefeed_replica_rows` - 如果你已 [将 TiDB Cloud 与 Prometheus 集成](/tidb-cloud/monitor-prometheus-and-grafana-integration.md),则可以使用这些指标实时监控 changefeed 的性能和健康状况。 此外,你可以轻松创建警报以使用 Prometheus 监控指标。 + 已 [集成 Prometheus](/tidb-cloud/monitor-prometheus-and-grafana-integration.md) 的用户可实时监控 changefeed 性能和健康状况,并可基于这些指标创建告警。 **控制台变更** -- 更新 [专用层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的 [监控](/tidb-cloud/built-in-monitoring.md#view-the-metrics-page) 页面,以使用 [节点级资源指标](/tidb-cloud/built-in-monitoring.md#server)。 +- [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的 [Monitoring](/tidb-cloud/built-in-monitoring.md#view-the-metrics-page) 页面现采用 [节点级资源指标](/tidb-cloud/built-in-monitoring.md#server)。 - 通过节点级资源指标,你可以更准确地了解资源消耗情况,从而更好地了解所购买服务的实际使用情况。 + 节点级指标更准确反映资源消耗,便于了解实际服务使用情况。 - 要访问这些指标,请导航到集群的 [监控](/tidb-cloud/built-in-monitoring.md#view-the-metrics-page) 页面,然后选中 **指标** 选项卡下的 **服务器** 类别。 + 访问方式:进入集群 [Monitoring](/tidb-cloud/built-in-monitoring.md#view-the-metrics-page) 页面,点击 **Metrics** 标签下的 **Server** 类别。 -- 通过重新组织 **按项目汇总** 和 **按服务汇总** 中的计费项目来优化 [计费](/tidb-cloud/tidb-cloud-billing.md#billing-details) 页面,这使得计费信息更加清晰。 +- 优化 [Billing](/tidb-cloud/tidb-cloud-billing.md#billing-details) 页,将账单项按 **Summary by Project** 和 **Summary by Service** 重组,信息更清晰。 -## 2023 年 4 月 4 日 +## 2023 年 4 月 4 日 -**常规变更** +**通用变更** -- 从 [TiDB Cloud 内置告警](/tidb-cloud/monitor-built-in-alerting.md#tidb-cloud-built-in-alert-conditions) 中删除以下两个告警,以防止误报。 这是因为一个节点上的临时离线或内存不足 (OOM) 问题不会显着影响集群的整体健康状况。 +- 为防止误报,从 [TiDB Cloud 内置告警](/tidb-cloud/monitor-built-in-alerting.md#tidb-cloud-built-in-alert-conditions) 移除以下两项告警。因单节点临时离线或 OOM 不会显著影响集群整体健康。 - - 集群中至少有一个 TiDB 节点内存不足。 - - 一个或多个集群节点处于离线状态。 + - 集群中至少一个 TiDB 节点 OOM。 + - 一个或多个集群节点离线。 **控制台变更** -- 为 [专用层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群引入 [告警](/tidb-cloud/monitor-built-in-alerting.md) 页面,其中列出了每个专用层集群的活动和已关闭告警。 +- [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 新增 [Alerts](/tidb-cloud/monitor-built-in-alerting.md) 页面,展示每个集群的活跃和已关闭告警。 - **告警** 页面提供以下内容: + **Alerts** 页面提供: - - 直观且用户友好的用户界面。 即使你没有订阅告警通知电子邮件,也可以在此页面上查看集群的告警。 - - 高级筛选选项,可帮助你根据告警的严重性、状态和其他属性快速查找和排序告警。 它还允许你查看过去 7 天的历史数据,从而简化了告警历史记录的跟踪。 - - **编辑规则** 功能。 你可以自定义告警规则设置以满足集群的特定需求。 + - 直观友好的界面,无需订阅邮件即可查看集群告警。 + - 高级筛选,按严重性、状态等属性快速查找和排序,并可查看近 7 天历史,便于追踪。 + - **Edit Rule** 功能,自定义告警规则以满足集群需求。 - 有关更多信息,请参阅 [TiDB Cloud 内置告警](/tidb-cloud/monitor-built-in-alerting.md)。 + 详情参见 [TiDB Cloud 内置告警](/tidb-cloud/monitor-built-in-alerting.md)。 -- 将 TiDB Cloud 的帮助相关信息和操作整合到一个位置。 +- 将 TiDB Cloud 的帮助相关信息和操作整合到一个入口。 - 现在,你可以通过单击 [TiDB Cloud 控制台](https://tidbcloud.com/) 右下角的 **?** 来获取所有 [TiDB Cloud 帮助信息](/tidb-cloud/tidb-cloud-support.md) 并联系支持。 + 现在可在 [TiDB Cloud 控制台](https://tidbcloud.com/) 右下角点击 **?** 获取所有帮助信息及联系支持。 -- 引入 [入门](https://tidbcloud.com/getting-started) 页面,以帮助你了解 TiDB Cloud。 +- 新增 [Getting Started](https://tidbcloud.com/getting-started) 页面,帮助你快速了解 TiDB Cloud。 - **入门** 页面为你提供交互式教程、基本指南和有用的链接。 通过遵循交互式教程,你可以轻松地使用预构建的行业特定数据集(Steam 游戏数据集和 S&P 500 数据集)探索 TiDB Cloud 功能和 HTAP 功能。 + **Getting Started** 页面提供交互式教程、基础指南和实用链接。通过交互式教程可体验 TiDB Cloud 功能和 HTAP 能力,内置行业数据集(Steam Game、S&P 500)。 - 要访问 **入门** 页面,请单击 [TiDB Cloud 控制台](https://tidbcloud.com/) 左侧导航栏中的 **入门**。 在此页面上,你可以单击 **查询示例数据集** 以打开交互式教程,或单击其他链接以探索 TiDB Cloud。 或者,你可以单击右下角的 **?**,然后单击 **交互式教程**。 + 访问方式:在 [TiDB Cloud 控制台](https://tidbcloud.com/) 左侧导航栏点击 **Getting Started**。可点击 **Query Sample Dataset** 进入交互式教程,或点击其他链接探索 TiDB Cloud。也可在右下角 **?** 菜单点击 **Interactive Tutorials**。 ## 2023 年 3 月 29 日 -**常规变更** +**通用变更** -- [数据服务 (beta)](/tidb-cloud/data-service-overview.md) 支持对数据应用进行更细粒度的访问控制。 +- [数据服务(Beta)](/tidb-cloud/data-service-overview.md) 支持 Data App 更细粒度的访问控制。 - 在数据应用详情页面,现在你可以将集群链接到你的数据应用,并为每个 API 密钥指定角色。该角色控制 API 密钥是否可以读取或写入链接集群的数据,并且可以设置为 `ReadOnly` 或 `ReadAndWrite`。此功能为数据应用提供集群级别和权限级别的访问控制,使你可以更灵活地根据业务需求控制访问范围。 + 在 Data App 详情页,你可关联集群并为每个 API key 指定角色(`ReadOnly` 或 `ReadAndWrite`),实现集群级和权限级访问控制,灵活满足业务需求。 - 有关更多信息,请参阅 [管理链接的集群](/tidb-cloud/data-service-manage-data-app.md#manage-linked-data-sources) 和 [管理 API 密钥](/tidb-cloud/data-service-api-key.md)。 + 详情参见 [管理关联集群](/tidb-cloud/data-service-manage-data-app.md#manage-linked-data-sources) 和 [管理 API key](/tidb-cloud/data-service-api-key.md)。 -## 2023 年 3 月 28 日 +## 2023 年 3 月 28 日 -**常规变更** +**通用变更** -- 为 [changefeeds](/tidb-cloud/changefeed-overview.md) 添加 2 RCUs、4 RCUs 和 8 RCUs 规格,并支持在 [创建 changefeed](/tidb-cloud/changefeed-overview.md#create-a-changefeed) 时选择所需的规格。 +- [changefeed](/tidb-cloud/changefeed-overview.md) 新增 2 RCUs、4 RCUs、8 RCUs 规格,支持在 [创建 changefeed](/tidb-cloud/changefeed-overview.md#create-a-changefeed) 时选择。 - 与之前需要 16 RCUs 的场景相比,使用这些新规格,数据复制成本最多可降低 87.5%。 + 新规格可将数据同步成本最多降低 87.5%(相较原需 16 RCUs)。 -- 支持扩展或缩小 2023 年 3 月 28 日之后创建的 [changefeeds](/tidb-cloud/changefeed-overview.md) 的规格。 +- 支持为 2023 年 3 月 28 日后创建的 [changefeed](/tidb-cloud/changefeed-overview.md) 扩缩规格。 - 你可以通过选择更高的规格来提高复制性能,或通过选择更低的规格来降低复制成本。 + 你可选择更高规格提升同步性能,或选择更低规格降低成本。 - 有关更多信息,请参阅 [缩放 changefeed](/tidb-cloud/changefeed-overview.md#scale-a-changefeed)。 + 详情参见 [扩缩 changefeed](/tidb-cloud/changefeed-overview.md#scale-a-changefeed)。 -- 支持将 AWS 中 [专用层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群中的增量数据实时复制到同一项目和同一区域中的 [无服务器层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。 +- 支持将 AWS 上 [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的增量数据实时同步到同项目同区域的 [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless)。 - 有关更多信息,请参阅 [Sink to TiDB Cloud](/tidb-cloud/changefeed-sink-to-tidb-cloud.md)。 + 详情参见 [流式写入 TiDB Cloud](/tidb-cloud/changefeed-sink-to-tidb-cloud.md)。 -- 为 [专用层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的 [数据迁移](/tidb-cloud/migrate-from-mysql-using-data-migration.md) 功能支持两个新的 GCP 区域:`Singapore (asia-southeast1)` 和 `Oregon (us-west1)`。 +- [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的 [数据迁移](/tidb-cloud/migrate-from-mysql-using-data-migration.md) 功能新增 GCP 区域:`Singapore (asia-southeast1)` 和 `Oregon (us-west1)`。 - 有了这些新区域,你可以有更多选择将数据迁移到 TiDB Cloud。如果你的上游数据存储在这些区域中或附近,你现在可以利用从 GCP 到 TiDB Cloud 更快、更可靠的数据迁移。 + 新区域为数据迁移提供更多选择,靠近上游数据时可获得更快、更可靠的迁移体验。 - 有关更多信息,请参阅 [使用数据迁移将 MySQL 兼容数据库迁移到 TiDB Cloud](/tidb-cloud/migrate-from-mysql-using-data-migration.md)。 + 详情参见 [使用数据迁移迁移 MySQL 兼容数据库到 TiDB Cloud](/tidb-cloud/migrate-from-mysql-using-data-migration.md)。 **控制台变更** -- 为 [无服务器层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的 [慢查询](/tidb-cloud/tune-performance.md#slow-query) 页面发布新的原生 Web 基础设施。 +- [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 的 [Slow Query](/tidb-cloud/tune-performance.md#slow-query) 页面发布全新原生 Web 架构。 - 借助这种新的基础设施,你可以轻松地浏览 [慢查询](/tidb-cloud/tune-performance.md#slow-query) 页面,并以更直观、更高效的方式访问必要的信息。 新的基础设施还解决了 UX 上的许多问题,使 SQL 诊断过程更加用户友好。 + 新架构提升页面导航和信息获取体验,优化用户体验,使 SQL 诊断更友好。 ## 2023 年 3 月 21 日 -**常规变更** +**通用变更** -- 针对 [Serverless Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群,引入 [Data Service (beta)](https://tidbcloud.com/project/data-service),使你能够通过使用自定义 API 端点的 HTTPS 请求来访问数据。 +- [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 支持 [数据服务(Beta)](https://tidbcloud.com/project/data-service),可通过自定义 API endpoint 以 HTTPS 请求访问数据。 - 借助 Data Service,你可以将 TiDB Cloud 与任何兼容 HTTPS 的应用程序或服务无缝集成。以下是一些常见场景: + 数据服务支持与任何兼容 HTTPS 的应用或服务无缝集成,常见场景包括: - - 直接从移动或 Web 应用程序访问 TiDB 集群的数据库。 - - 使用 Serverless 边缘函数调用端点,避免数据库连接池导致的可扩展性问题。 - - 通过使用 Data Service 作为数据源,将 TiDB Cloud 与数据可视化项目集成。 - - 从 MySQL 接口不支持的环境连接到你的数据库。 + - 移动或 Web 应用直接访问 TiDB 集群数据库。 + - 使用无服务器边缘函数调用接口,避免连接池扩展性问题。 + - 以数据服务为数据源集成数据可视化项目。 + - 在不支持 MySQL 接口的环境中连接数据库。 - 此外,TiDB Cloud 还提供 [Chat2Query API](/tidb-cloud/use-chat2query-api.md),这是一个 RESTful 接口,允许你使用 AI 生成和执行 SQL 语句。 + 此外,TiDB Cloud 提供 [Chat2Query API](/tidb-cloud/use-chat2query-api.md),可通过 AI 生成并执行 SQL。 - 要访问 Data Service,请导航到左侧导航窗格中的 [**Data Service**](https://tidbcloud.com/project/data-service) 页面。有关更多信息,请参阅以下文档: + 访问方式:左侧导航栏进入 [**Data Service**](https://tidbcloud.com/project/data-service) 页面。更多信息参见: - - [Data Service 概述](/tidb-cloud/data-service-overview.md) - - [Data Service 入门](/tidb-cloud/data-service-get-started.md) - - [Chat2Query API 入门](/tidb-cloud/use-chat2query-api.md) + - [数据服务概览](/tidb-cloud/data-service-overview.md) + - [数据服务快速上手](/tidb-cloud/data-service-get-started.md) + - [Chat2Query API 快速上手](/tidb-cloud/use-chat2query-api.md) -- 支持减小 TiDB、TiKV 和 TiFlash 节点的大小,以在 AWS 上托管且在 2022 年 12 月 31 日之后创建的 [Dedicated Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群中进行缩容。 +- 支持缩小 TiDB、TiKV、TiFlash 节点规格,缩容 2022 年 12 月 31 日后在 AWS 上创建的 [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated)。 - 你可以[通过 TiDB Cloud 控制台](/tidb-cloud/scale-tidb-cluster.md#change-vcpu-and-ram)或[通过 TiDB Cloud API (beta)](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Cluster/operation/UpdateCluster) 减小节点大小。 + 可通过 [TiDB Cloud 控制台](/tidb-cloud/scale-tidb-cluster.md#change-vcpu-and-ram) 或 [TiDB Cloud API(Beta)](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Cluster/operation/UpdateCluster) 缩小节点规格。 -- 为 [Dedicated Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的 [Data Migration](/tidb-cloud/migrate-from-mysql-using-data-migration.md) 功能支持新的 GCP 区域:`Tokyo (asia-northeast1)`。 +- [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的 [数据迁移](/tidb-cloud/migrate-from-mysql-using-data-migration.md) 功能新增 GCP 区域:`Tokyo (asia-northeast1)`。 - 该功能可以帮助你轻松高效地将 Google Cloud Platform (GCP) 中与 MySQL 兼容的数据库中的数据迁移到你的 TiDB 集群。 + 该功能便于将 GCP 上的 MySQL 兼容数据库迁移至 TiDB 集群。 - 有关更多信息,请参阅 [使用 Data Migration 将与 MySQL 兼容的数据库迁移到 TiDB Cloud](/tidb-cloud/migrate-from-mysql-using-data-migration.md)。 + 详情参见 [使用数据迁移迁移 MySQL 兼容数据库到 TiDB Cloud](/tidb-cloud/migrate-from-mysql-using-data-migration.md)。 **控制台变更** -- 为 [Dedicated Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群引入 **Events** 页面,该页面提供对集群的主要更改的记录。 +- [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 新增 **Events** 页面,记录集群主要变更。 - 在此页面上,你可以查看过去 7 天的事件历史记录,并跟踪重要详细信息,例如触发时间和发起操作的用户。例如,你可以查看集群何时暂停或谁修改了集群大小等事件。 + 可查看最近 7 天的事件历史,追踪触发时间和操作用户。例如,可查看集群暂停、规格变更等事件。 - 有关更多信息,请参阅 [TiDB Cloud 集群事件](/tidb-cloud/tidb-cloud-events.md)。 + 详情参见 [TiDB Cloud 集群事件](/tidb-cloud/tidb-cloud-events.md)。 -- 将 **Database Status** 选项卡添加到 [Serverless Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的 **Monitoring** 页面,该页面显示以下数据库级别指标: +- [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 的 **Monitoring** 页面新增 **Database Status** 标签,展示以下数据库级指标: - - 每个数据库的 QPS - - 每个数据库的平均查询持续时间 - - 每个数据库的失败查询 + - QPS Per DB + - Average Query Duration Per DB + - Failed Queries Per DB - 通过这些指标,你可以监控各个数据库的性能,做出数据驱动的决策,并采取措施来提高应用程序的性能。 + 通过这些指标可监控单个数据库性能,便于数据驱动决策和应用性能优化。 - 有关更多信息,请参阅 [Serverless Tier 集群的监控指标](/tidb-cloud/built-in-monitoring.md)。 + 详情参见 [Serverless 集群监控指标](/tidb-cloud/built-in-monitoring.md)。 ## 2023 年 3 月 14 日 -**常规变更** +**通用变更** -- 将新 [专用层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v6.5.0](https://docs.pingcap.com/tidb/v6.5/release-6.5.0) 升级到 [v6.5.1](https://docs.pingcap.com/tidb/v6.5/release-6.5.1)。 +- 新建 [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的默认 TiDB 版本由 [v6.5.0](https://docs.pingcap.com/tidb/v6.5/release-6.5.0) 升级至 [v6.5.1](https://docs.pingcap.com/tidb/v6.5/release-6.5.1)。 -- 支持在上传带有标题行的本地 CSV 文件时,修改 TiDB Cloud 创建的目标表的列名。 +- 上传带表头的本地 CSV 文件到 [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 时,支持修改 TiDB Cloud 自动创建目标表的列名。 - 当将带有标题行的本地 CSV 文件导入到 [Serverless 层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群时,如果你需要 TiDB Cloud 创建目标表,并且标题行中的列名不符合 TiDB Cloud 列命名约定,你将在相应列名旁边看到一个警告图标。要解决此警告,你可以将光标移到图标上,然后按照消息编辑现有列名或输入新的列名。 + 若表头列名不符合 TiDB Cloud 命名规范,将在对应列名旁显示警告图标。你可悬停查看提示并按需修改列名。 - 有关列命名约定的信息,请参阅 [导入本地文件](/tidb-cloud/tidb-cloud-import-local-files.md#import-local-files)。 + 列命名规范参见 [导入本地文件](/tidb-cloud/tidb-cloud-import-local-files.md#import-local-files)。 ## 2023 年 3 月 7 日 **通用变更** -- 将所有[Serverless Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless)集群的默认 TiDB 版本从 [v6.4.0](https://docs.pingcap.com/tidb/v6.4/release-6.4.0) 升级到 [v6.6.0](https://docs.pingcap.com/tidb/v6.6/release-6.6.0)。 +- 所有 [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 的默认 TiDB 版本由 [v6.4.0](https://docs.pingcap.com/tidb/v6.4/release-6.4.0) 升级至 [v6.6.0](https://docs.pingcap.com/tidb/v6.6/release-6.6.0)。 ## 2023 年 2 月 28 日 -**常规变更** +**通用变更** -- 为[Serverless Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless)集群添加[SQL诊断](/tidb-cloud/tune-performance.md)功能。 +- [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 支持 [SQL 诊断](/tidb-cloud/tune-performance.md) 功能。 - 通过SQL诊断,你可以深入了解与SQL相关的运行时状态,从而更有效地进行SQL性能调优。目前,Serverless Tier的SQL诊断功能仅提供慢查询数据。 + 通过 SQL 诊断可深入了解 SQL 运行状态,提升性能调优效率。目前仅提供慢查询数据。 - 要使用SQL诊断,请单击Serverless Tier集群页面左侧导航栏上的**SQL诊断**。 + 使用方法:在 Serverless 集群页面左侧导航栏点击 **SQL Diagnosis**。 **控制台变更** - 优化左侧导航。 - 你可以更高效地浏览页面,例如: + 你可更高效地切换页面,例如: - - 你可以将鼠标悬停在左上角以快速切换集群或项目。 - - 你可以在**集群**页面和**管理**页面之间切换。 + - 鼠标悬停左上角可快速切换集群或项目。 + - 可在 **Clusters** 和 **Admin** 页面间切换。 -**API变更** +**API 变更** -- 发布了多个用于数据导入的TiDB Cloud API端点: +- 发布多项数据导入相关 TiDB Cloud API 接口: - 列出所有导入任务 - - 获取导入任务 + - 获取导入任务详情 - 创建导入任务 - 更新导入任务 - - 上传导入任务的本地文件 - - 在启动导入任务之前预览数据 - - 获取导入任务的角色信息 + - 上传本地文件 + - 导入前预览数据 + - 获取导入任务角色信息 - 有关更多信息,请参阅[API文档](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Import)。 + 详情参见 [API 文档](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Import)。 ## 2023 年 2 月 22 日 -**常规变更** +**通用变更** -- 支持使用 [控制台审计日志](/tidb-cloud/tidb-cloud-console-auditing.md) 功能来跟踪组织成员在 [TiDB Cloud 控制台](https://tidbcloud.com/) 中执行的各种活动。 +- 支持使用 [控制台审计日志](/tidb-cloud/tidb-cloud-console-auditing.md) 跟踪组织成员在 [TiDB Cloud 控制台](https://tidbcloud.com/) 的各类操作。 - 控制台审计日志功能仅对具有 `Owner` 或 `Audit Admin` 角色的用户可见,并且默认情况下处于禁用状态。要启用它,请单击 **组织** > **控制台审计日志**,位于 [TiDB Cloud 控制台](https://tidbcloud.com/) 的右上角。 + 仅 `Owner` 或 `Audit Admin` 角色可见,默认关闭。开启方法:在 [TiDB Cloud 控制台](https://tidbcloud.com/) 右上角点击 **Organization** > **Console Audit Logging**。 - 通过分析控制台审计日志,你可以识别组织内执行的可疑操作,从而提高组织资源和数据的安全性。 + 通过分析审计日志,可识别可疑操作,提升资源和数据安全。 - 有关更多信息,请参阅 [控制台审计日志](/tidb-cloud/tidb-cloud-console-auditing.md)。 + 详情参见 [控制台审计日志](/tidb-cloud/tidb-cloud-console-auditing.md)。 **CLI 变更** -- 为 [TiDB Cloud CLI](/tidb-cloud/cli-reference.md) 添加了一个新命令 `ticloud cluster connect-info`。 +- [TiDB Cloud CLI](/tidb-cloud/cli-reference.md) 新增 `ticloud cluster connect-info` 命令。 - `ticloud cluster connect-info` 是一个允许你获取集群连接字符串的命令。要使用此命令,请[更新 `ticloud`](/tidb-cloud/ticloud-upgrade.md) 到 v0.3.2 或更高版本。 + 该命令用于获取集群连接字符串。需将 `ticloud` 升级至 v0.3.2 或更高版本,详见 [升级指南](/tidb-cloud/ticloud-upgrade.md)。 ## 2023 年 2 月 21 日 -**常规变更** +**通用变更** -- 支持使用 IAM 用户的 AWS 访问密钥来访问你的 Amazon S3 存储桶,以便将数据导入到 TiDB Cloud。 +- 导入数据到 TiDB Cloud 时,支持使用 IAM 用户的 AWS 访问密钥访问 Amazon S3 存储桶。 - 此方法比使用角色 ARN 更简单。有关更多信息,请参阅 [配置 Amazon S3 访问](/tidb-cloud/dedicated-external-storage.md#configure-amazon-s3-access)。 + 该方式比使用 Role ARN 更简单。详情参见 [配置 Amazon S3 访问](/tidb-cloud/dedicated-external-storage.md#configure-amazon-s3-access)。 -- 将 [监控指标保留期限](/tidb-cloud/built-in-monitoring.md#metrics-retention-policy) 从 2 天延长到更长的时间: +- 监控指标保留期由 2 天延长: - - 对于专用层集群,你可以查看过去 7 天的指标数据。 - - 对于无服务器层集群,你可以查看过去 3 天的指标数据。 + - 专属集群可查看近 7 天指标数据。 + - Serverless 集群可查看近 3 天指标数据。 - 通过延长指标保留期限,你现在可以访问更多历史数据。这有助于你识别集群的趋势和模式,从而更好地进行决策和更快地进行故障排除。 + 你可访问更多历史数据,便于识别趋势和模式,提升决策和故障排查效率。 **控制台变更** -- 在 [无服务器层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的监控页面上发布新的原生 Web 基础设施。 +- [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 的 Monitoring 页面发布全新原生 Web 架构。 - 借助新的基础设施,你可以轻松浏览监控页面,并以更直观和高效的方式访问必要的信息。新的基础设施还解决了 UX 上的许多问题,使监控过程更加用户友好。 + 新架构提升页面导航和信息获取体验,优化用户体验,使监控更友好。 ## 2023 年 2 月 17 日 **CLI 变更** -- 添加一个新命令 [`ticloud connect`](/tidb-cloud/ticloud-serverless-shell.md) 用于 [TiDB Cloud CLI](/tidb-cloud/cli-reference.md)。 +- [TiDB Cloud CLI](/tidb-cloud/cli-reference.md) 新增 [`ticloud connect`](/tidb-cloud/ticloud-serverless-shell.md) 命令。 - `ticloud connect` 是一个允许你从本地机器连接到你的 TiDB Cloud 集群而无需安装任何 SQL 客户端的命令。 连接到你的 TiDB Cloud 集群后,你可以在 TiDB Cloud CLI 中执行 SQL 语句。 + 该命令支持你无需安装 SQL 客户端即可从本地连接 TiDB Cloud 集群,并在 CLI 中执行 SQL 语句。 ## 2023 年 2 月 14 日 -**常规变更** +**通用变更** -- 支持减少 TiKV 和 TiFlash 节点数量,以在 TiDB [专用层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群中进行缩容。 +- 支持缩减 TiKV 和 TiFlash 节点数量,缩容 [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated)。 - 你可以通过 [TiDB Cloud 控制台](/tidb-cloud/scale-tidb-cluster.md#change-node-number) 或 [通过 TiDB Cloud API (beta)](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Cluster/operation/UpdateCluster) 减少节点数量。 + 可通过 [TiDB Cloud 控制台](/tidb-cloud/scale-tidb-cluster.md#change-node-number) 或 [TiDB Cloud API(Beta)](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Cluster/operation/UpdateCluster) 缩减节点数量。 **控制台变更** -- 为 [Serverless 层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群引入 **监控** 页面。 +- [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 新增 **Monitoring** 页面。 - **监控** 页面提供了一系列指标和数据,例如每秒执行的 SQL 语句数量、查询的平均持续时间以及失败的查询数量,这有助于你更好地了解 Serverless 层集群中 SQL 语句的整体性能。 + 该页面提供 SQL 每秒执行数、平均查询时长、失败查询数等多项指标,帮助你全面了解 Serverless 集群 SQL 性能。 - 有关更多信息,请参阅 [TiDB Cloud 内置监控](/tidb-cloud/built-in-monitoring.md)。 + 详情参见 [TiDB Cloud 内置监控](/tidb-cloud/built-in-monitoring.md)。 ## 2023 年 2 月 2 日 **CLI 变更** -- 引入 TiDB Cloud CLI 客户端 [`ticloud`](/tidb-cloud/cli-reference.md)。 +- 发布 TiDB Cloud CLI 客户端 [`ticloud`](/tidb-cloud/cli-reference.md)。 - 使用 `ticloud`,你可以通过几行命令从终端或其他自动工作流程轻松管理你的 TiDB Cloud 资源。 特别是对于 GitHub Actions,我们提供了 [`setup-tidbcloud-cli`](https://github.com/marketplace/actions/set-up-tidbcloud-cli),以便你轻松设置 `ticloud`。 + 你可通过 `ticloud` 在终端或自动化流程中便捷管理 TiDB Cloud 资源。针对 GitHub Actions,已提供 [`setup-tidbcloud-cli`](https://github.com/marketplace/actions/set-up-tidbcloud-cli) 便捷集成。 - 有关更多信息,请参阅 [TiDB Cloud CLI 快速入门](/tidb-cloud/get-started-with-cli.md) 和 [TiDB Cloud CLI 参考](/tidb-cloud/cli-reference.md)。 + 详情参见 [CLI 快速上手](/tidb-cloud/get-started-with-cli.md) 及 [CLI 参考](/tidb-cloud/cli-reference.md)。 ## 2023 年 1 月 18 日 -**常规变更** +**通用变更** -* 支持使用 Microsoft 帐户[注册](https://tidbcloud.com/free-trial) TiDB Cloud。 +* 支持使用 Microsoft 账号 [注册](https://tidbcloud.com/free-trial) TiDB Cloud。 ## 2023 年 1 月 17 日 -**常规变更** +**通用变更** -- 将新 [专用层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v6.1.3](https://docs.pingcap.com/tidb/stable/release-6.1.3) 升级到 [v6.5.0](https://docs.pingcap.com/tidb/stable/release-6.5.0)。 +- 新建 [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的默认 TiDB 版本由 [v6.1.3](https://docs.pingcap.com/tidb/stable/release-6.1.3) 升级至 [v6.5.0](https://docs.pingcap.com/tidb/stable/release-6.5.0)。 -- 对于新注册用户,TiDB Cloud 将自动创建一个免费的 [Serverless 层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群,以便你可以快速开始使用 TiDB Cloud 进行数据探索之旅。 +- 新注册用户将自动创建一个免费的 [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless),便于快速开启数据探索。 -- 为 [专用层](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群支持一个新的 AWS 区域:`Seoul (ap-northeast-2)`。 +- [专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 新增 AWS 区域:`Seoul (ap-northeast-2)`。 - 此区域启用了以下功能: + 该区域支持以下功能: - - [使用数据迁移将 MySQL 兼容数据库迁移到 TiDB Cloud](/tidb-cloud/migrate-from-mysql-using-data-migration.md) - - [使用变更数据捕获将数据从 TiDB Cloud 流式传输到其他数据服务](/tidb-cloud/changefeed-overview.md) - - [备份和恢复 TiDB 集群数据](/tidb-cloud/backup-and-restore.md) + - [使用数据迁移迁移 MySQL 兼容数据库到 TiDB Cloud](/tidb-cloud/migrate-from-mysql-using-data-migration.md) + - [通过 changefeed 将数据流式写入其他服务](/tidb-cloud/changefeed-overview.md) + - [备份与恢复 TiDB 集群数据](/tidb-cloud/backup-and-restore.md) ## 2023 年 1 月 10 日 -**常规变更** +**通用变更** -- 优化了从本地 CSV 文件导入数据到 TiDB 的功能,以改善 [Serverless Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的用户体验。 +- 优化本地 CSV 文件导入 TiDB 的体验,提升 [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 用户体验。 - - 要上传 CSV 文件,现在你可以简单地将其拖放到 **导入** 页面上的上传区域。 - - 创建导入任务时,如果目标数据库或表不存在,你可以输入一个名称,让 TiDB Cloud 自动为你创建。 对于要创建的目标表,你可以指定主键或选择多个字段以形成复合主键。 - - 导入完成后,你可以通过单击 **通过 Chat2Query 探索你的数据** 或单击任务列表中的目标表名,使用 [AI 驱动的 Chat2Query](/tidb-cloud/explore-data-with-chat2query.md) 探索你的数据。 + - 现可直接拖拽 CSV 文件至 **Import** 页上传区域。 + - 创建导入任务时,若目标数据库或表不存在,可输入名称自动创建。新建目标表时可指定主键或选择多字段组成复合主键。 + - 导入完成后,可点击 **Explore your data by Chat2Query** 或任务列表中的目标表名,使用 [AI 驱动的 Chat2Query](/tidb-cloud/explore-data-with-chat2query.md) 探索数据。 - 有关更多信息,请参见 [将本地文件导入到 TiDB Cloud](/tidb-cloud/tidb-cloud-import-local-files.md)。 + 详情参见 [导入本地文件到 TiDB Cloud](/tidb-cloud/tidb-cloud-import-local-files.md)。 **控制台变更** -- 为每个集群添加 **获取支持** 选项,以简化请求特定集群支持的过程。 +- 每个集群新增 **Get Support** 选项,简化针对特定集群的支持请求流程。 - 你可以通过以下任一方式请求集群支持: + 你可通过以下方式请求支持: - - 在项目的 [**集群**](https://tidbcloud.com/project/clusters) 页面上,单击集群所在行的 **...**,然后选择 **获取支持**。 - - 在集群概览页面上,单击右上角的 **...**,然后选择 **获取支持**。 + - 在项目 [**Clusters**](https://tidbcloud.com/project/clusters) 页,点击集群行的 **...** 并选择 **Get Support**。 + - 在集群概览页右上角点击 **...** 并选择 **Get Support**。 ## 2023 年 1 月 5 日 **控制台变更** -- 将 SQL 编辑器(beta)重命名为 Chat2Query(beta),适用于 [Serverless Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群,并支持使用 AI 生成 SQL 查询。 +- [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 的 SQL Editor(Beta)更名为 Chat2Query(Beta),并支持 AI 生成 SQL 查询。 - 在 Chat2Query 中,你可以让 AI 自动生成 SQL 查询,或者手动编写 SQL 查询,并在没有终端的情况下针对数据库运行 SQL 查询。 + 在 Chat2Query 中,你可让 AI 自动生成 SQL 查询,也可手动编写 SQL,并直接在数据库上运行,无需终端。 - 要访问 Chat2Query,请转到项目的 [**集群**](https://tidbcloud.com/project/clusters) 页面,点击你的集群名称,然后在左侧导航窗格中点击 **Chat2Query**。 + 访问方式:在项目 [**Clusters**](https://tidbcloud.com/project/clusters) 页点击集群名,再点击左侧导航栏的 **Chat2Query**。 ## 2023 年 1 月 4 日 -**常规变更** +**通用变更** -- 支持通过增加在 AWS 上托管且在 2022 年 12 月 31 日之后创建的 TiDB Cloud Dedicated 集群的 **节点大小(vCPU + RAM)** 来扩展 TiDB、TiKV 和 TiFlash 节点。 +- 支持通过增加 **Node Size(vCPU + RAM)** 扩容 AWS 上 2022 年 12 月 31 日后创建的 TiDB Cloud 专属集群的 TiDB、TiKV、TiFlash 节点。 - 你可以使用 [TiDB Cloud 控制台](/tidb-cloud/scale-tidb-cluster.md#change-vcpu-and-ram) 或 [TiDB Cloud API (beta)](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Cluster/operation/UpdateCluster) 来增加节点大小。 + 可通过 [TiDB Cloud 控制台](/tidb-cloud/scale-tidb-cluster.md#change-vcpu-and-ram) 或 [TiDB Cloud API(Beta)](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Cluster/operation/UpdateCluster) 扩容节点。 -- 将 [**监控**](/tidb-cloud/built-in-monitoring.md) 页面上的指标保留期限延长至两天。 +- [**Monitoring**](/tidb-cloud/built-in-monitoring.md) 页的指标保留期延长至两天。 - 现在你可以访问过去两天的指标数据,从而更灵活地了解集群性能和趋势。 + 你可访问近两天的指标数据,更灵活地监控集群性能和趋势。 - 此改进无需额外费用,可以在集群的 [**监控**](/tidb-cloud/built-in-monitoring.md) 页面的 **诊断** 选项卡上访问。 这将帮助你识别和排除性能问题,并更有效地监控集群的整体健康状况。 + 该提升无需额外费用,可在集群 [**Monitoring**](/tidb-cloud/built-in-monitoring.md) 页的 **Diagnosis** 标签访问,有助于更高效地定位和解决性能问题。 -- 支持为 Prometheus 集成自定义 Grafana 仪表板 JSON。 +- 支持为 Prometheus 集成自定义 Grafana dashboard JSON。 - 如果你已将 [TiDB Cloud 与 Prometheus 集成](/tidb-cloud/monitor-prometheus-and-grafana-integration.md),你现在可以导入预构建的 Grafana 仪表板来监控 TiDB Cloud 集群,并根据你的需要自定义仪表板。 此功能可以轻松快速地监控你的 TiDB Cloud 集群,并帮助你快速识别任何性能问题。 + 已 [集成 Prometheus](/tidb-cloud/monitor-prometheus-and-grafana-integration.md) 的用户可导入预置 Grafana dashboard 并自定义,便于快速监控集群并及时发现性能问题。 - 有关更多信息,请参阅 [使用 Grafana GUI 仪表板可视化指标](/tidb-cloud/monitor-prometheus-and-grafana-integration.md#step-3-use-grafana-gui-dashboards-to-visualize-the-metrics)。 + 详情参见 [使用 Grafana GUI dashboard 可视化指标](/tidb-cloud/monitor-prometheus-and-grafana-integration.md#step-3-use-grafana-gui-dashboards-to-visualize-the-metrics)。 -- 将所有 [Serverless Tier](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的默认 TiDB 版本从 [v6.3.0](https://docs.pingcap.com/tidb/v6.3/release-6.3.0) 升级到 [v6.4.0](https://docs.pingcap.com/tidb/v6.4/release-6.4.0)。 将 Serverless Tier 集群的默认 TiDB 版本升级到 v6.4.0 后,冷启动问题已得到解决。 +- 所有 [Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 的默认 TiDB 版本由 [v6.3.0](https://docs.pingcap.com/tidb/v6.3/release-6.3.0) 升级至 [v6.4.0](https://docs.pingcap.com/tidb/v6.4/release-6.4.0)。Serverless 集群升级至 v6.4.0 后的冷启动问题已修复。 **控制台变更** -- 简化 [**集群**](https://tidbcloud.com/project/clusters) 页面和集群概览页面的显示。 +- 简化 [**Clusters**](https://tidbcloud.com/project/clusters) 页和集群概览页展示。 - - 你可以单击 [**集群**](https://tidbcloud.com/project/clusters) 页面上的集群名称以进入集群概览页面并开始操作集群。 - - 从集群概览页面中删除 **连接** 和 **导入** 窗格。 你可以单击右上角的 **连接** 以获取连接信息,然后单击左侧导航窗格中的 **导入** 以导入数据。 + - 你可在 [**Clusters**](https://tidbcloud.com/project/clusters) 页点击集群名进入概览页并开始操作。 + - 从概览页移除 **Connection** 和 **Import** 面板。你可点击右上角 **Connect** 获取连接信息,点击左侧导航栏 **Import** 导入数据。 \ No newline at end of file diff --git a/tidb-cloud/release-notes-2024.md b/tidb-cloud/release-notes-2024.md index c011bb190f22f..95195070068ca 100644 --- a/tidb-cloud/release-notes-2024.md +++ b/tidb-cloud/release-notes-2024.md @@ -5,407 +5,407 @@ summary: 了解 2024 年 TiDB Cloud 的发布说明。 # 2024 年 TiDB Cloud 发布说明 -此页面列出了 2024 年 [TiDB Cloud](https://www.pingcap.com/tidb-cloud/) 的发布说明。 +本页面列出了 [TiDB Cloud](https://www.pingcap.com/tidb-cloud/) 在 2024 年的发布说明。 ## 2024 年 12 月 17 日 -**常规变更** +**通用变更** -- TiDB Cloud Serverless 备份和恢复变更 +- TiDB Cloud Serverless 备份与恢复变更 - - 支持将数据恢复到新集群,提供更大的灵活性,并确保你当前集群的运营不受中断。 + - 支持将数据恢复到新集群,提供更大的灵活性,并确保你当前集群的操作不受影响。 - - 优化备份和恢复策略,使其与你的集群计划保持一致。 更多信息,请参见 [备份和恢复 TiDB Cloud Serverless 数据](/tidb-cloud/backup-and-restore-serverless.md#learn-about-the-backup-setting)。 + - 优化备份与恢复策略,使其与集群计划相匹配。更多信息,参见 [备份与恢复 TiDB Cloud Serverless 数据](/tidb-cloud/backup-and-restore-serverless.md#learn-about-the-backup-setting)。 - - 应用以下兼容性策略,以帮助你顺利过渡: + - 应用以下兼容性策略,帮助你平滑过渡: - - 在 2024-12-17T10:00:00Z 之前创建的备份将在所有集群中遵循之前的保留期限。 + - 2024-12-17T10:00:00Z 之前创建的备份将在所有集群中遵循之前的保留时长。 - 可扩展集群的备份时间将保留当前配置,而免费集群的备份时间将重置为默认设置。 ## 2024 年 12 月 3 日 **通用变更** -- 推出恢复组功能(beta),用于在 AWS 上部署的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的灾难恢复。 - - 此功能使你能够在 TiDB Cloud Dedicated 集群之间复制数据库,从而确保在发生区域性灾难时能够快速恢复。如果你是项目所有者角色,则可以通过创建新的恢复组并将数据库分配给该组来启用此功能。通过使用恢复组复制数据库,你可以提高灾难准备能力,满足更严格的可用性 SLA,并实现更积极的恢复点目标 (RPO) 和恢复时间目标 (RTO)。 +- 为部署在 AWS 上的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群引入灾备恢复组(beta)功能。 - 有关更多信息,请参阅 [恢复组入门](/tidb-cloud/recovery-group-get-started.md)。 + 该功能允许你在 TiDB Cloud Dedicated 集群之间复制数据库,确保在区域性灾难发生时能够快速恢复。如果你拥有 Project Owner 角色,可以通过创建新的恢复组并将数据库分配到该组来启用此功能。通过使用恢复组复制数据库,你可以提升灾备能力,满足更严格的可用性 SLA,并实现更激进的恢复点目标(RPO)和恢复时间目标(RTO)。 + + 更多信息,参见 [快速开始使用恢复组](/tidb-cloud/recovery-group-get-started.md)。 ## 2024 年 11 月 26 日 **通用变更** -- 将新 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v7.5.4](https://docs.pingcap.com/tidb/v7.5/release-7.5.4) 升级到 [v8.1.1](https://docs.pingcap.com/tidb/stable/release-8.1.1)。 +- 新建 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v7.5.4](https://docs.pingcap.com/tidb/v7.5/release-7.5.4) 升级到 [v8.1.1](https://docs.pingcap.com/tidb/stable/release-8.1.1)。 -- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 将以下场景下的大数据写入成本降低高达 80%: +- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 针对以下场景的大数据写入成本最多降低 80%: - - 当你在 [自动提交模式](/transaction-overview.md#autocommit) 下执行大于 16 MiB 的写入操作时。 - - 当你在 [乐观事务模型](/optimistic-transaction.md) 下执行大于 16 MiB 的写入操作时。 - - 当你 [将数据导入到 TiDB Cloud](/tidb-cloud/tidb-cloud-migration-overview.md#import-data-from-files-to-tidb-cloud) 时。 + - 在 [autocommit 模式](/transaction-overview.md#autocommit)下执行大于 16 MiB 的写入操作时。 + - 在 [乐观事务模型](/optimistic-transaction.md)下执行大于 16 MiB 的写入操作时。 + - [导入数据到 TiDB Cloud](/tidb-cloud/tidb-cloud-migration-overview.md#import-data-from-files-to-tidb-cloud) 时。 - 此改进提高了数据操作的效率和成本效益,随着工作负载的扩展,可提供更大的节省。 + 该优化提升了数据操作的效率和性价比,随着工作负载的增长可带来更大节省。 -## 2024 年 11 月19 日 +## 2024 年 11 月 19 日 -**常规变更** +**通用变更** -- [TiDB Cloud Serverless 分支(beta)](/tidb-cloud/branch-overview.md) 引入了以下分支管理方面的改进: +- [TiDB Cloud Serverless 分支(beta)](/tidb-cloud/branch-overview.md)为分支管理引入以下改进: - - **灵活的分支创建**:创建分支时,你可以选择特定的集群或分支作为父级,并指定要从父级使用的精确时间点。这使你可以精确控制分支中的数据。 + - **灵活的分支创建**:创建分支时,你可以选择特定集群或分支作为父级,并指定父级的精确时间点,从而精确控制分支中的数据。 - - **分支重置**:你可以重置分支,使其与父级的最新状态同步。 + - **分支重置**:你可以将分支重置为与其父级的最新状态同步。 - - **改进的 GitHub 集成**:[TiDB Cloud Branching](https://github.com/apps/tidb-cloud-branching) GitHub App 引入了 [`branch.mode`](/tidb-cloud/branch-github-integration.md#branchmode) 参数,该参数控制拉取请求同步期间的行为。在默认模式 `reset` 下,该应用程序会重置分支以匹配拉取请求中的最新更改。 + - **改进的 GitHub 集成**: [TiDB Cloud Branching](https://github.com/apps/tidb-cloud-branching) GitHub 应用引入了 [`branch.mode`](/tidb-cloud/branch-github-integration.md#branchmode) 参数,用于控制拉取请求同步时的行为。在默认的 `reset` 模式下,应用会将分支重置为与拉取请求中的最新更改保持一致。 - 有关更多信息,请参阅[管理 TiDB Cloud Serverless 分支](/tidb-cloud/branch-manage.md)和[将 TiDB Cloud Serverless 分支(Beta)与 GitHub 集成](/tidb-cloud/branch-github-integration.md)。 + 更多信息,参见 [管理 TiDB Cloud Serverless 分支](/tidb-cloud/branch-manage.md) 和 [将 TiDB Cloud Serverless 分支(Beta)集成到 GitHub](/tidb-cloud/branch-github-integration.md)。 ## 2024 年 11 月 12 日 -**常规变更** +**通用变更** -- 为 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群添加暂停时长限制。 +- 为 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群增加暂停时长限制。 - TiDB Cloud Dedicated 现在限制最大暂停时长为 7 天。如果你未在 7 天内手动恢复集群,TiDB Cloud 将自动恢复它。 + TiDB Cloud Dedicated 现在将最大暂停时长限制为 7 天。如果你未在 7 天内手动恢复集群,TiDB Cloud 将自动恢复该集群。 - 此更改仅适用于**2024 年 11 月 12 日之后创建的组织**。在此日期或之前创建的组织将逐步过渡到新的暂停行为,并会事先收到通知。 + 此变更仅适用于 **2024 年 11 月 12 日后创建的组织**。2024 年 11 月 12 日及之前创建的组织将在提前通知后逐步过渡到新的暂停行为。 - 有关更多信息,请参阅 [暂停或恢复 TiDB Cloud Dedicated 集群](/tidb-cloud/pause-or-resume-tidb-cluster.md)。 + 更多信息,参见 [暂停或恢复 TiDB Cloud Dedicated 集群](/tidb-cloud/pause-or-resume-tidb-cluster.md)。 -- [Datadog 集成(beta)](/tidb-cloud/monitor-datadog-integration.md) 增加了对新区域的支持:`AP1`(日本)。 +- [Datadog 集成(beta)](/tidb-cloud/monitor-datadog-integration.md) 新增对 `AP1`(日本)区域的支持。 -- 支持 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的一个新的 AWS 区域:`孟买 (ap-south-1)`。 +- [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群新增支持 AWS 区域:`Mumbai (ap-south-1)`。 -- 移除对 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的 AWS `圣保罗 (sa-east-1)` 区域的支持。 +- [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群移除对 AWS `São Paulo (sa-east-1)` 区域的支持。 ## 2024 年 10 月 29 日 -**常规变更** +**通用变更** - 新增指标:为 Prometheus 集成添加 `tidbcloud_changefeed_checkpoint_ts`。 - 此指标跟踪 changefeed 的检查点时间戳,表示成功写入下游的最大 TSO(时间戳预言机)。 有关可用指标的更多信息,请参阅 [将 TiDB Cloud 与 Prometheus 和 Grafana 集成(Beta)](/tidb-cloud/monitor-prometheus-and-grafana-integration.md#metrics-available-to-prometheus)。 + 该指标用于跟踪 changefeed 的检查点时间戳,表示已成功写入下游的最大 TSO(时间戳 Oracle)。更多可用指标信息,参见 [将 TiDB Cloud 集成到 Prometheus 和 Grafana(Beta)](/tidb-cloud/monitor-prometheus-and-grafana-integration.md#metrics-available-to-prometheus)。 ## 2024 年 10 月 22 日 -**常规变更** +**通用变更** -- 将新 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v7.5.3](https://docs.pingcap.com/tidb/v7.5/release-7.5.3) 升级到 [v7.5.4](https://docs.pingcap.com/tidb/v7.5/release-7.5.4)。 +- 新建 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v7.5.3](https://docs.pingcap.com/tidb/v7.5/release-7.5.3) 升级到 [v7.5.4](https://docs.pingcap.com/tidb/v7.5/release-7.5.4)。 ## 2024 年 10 月 15 日 **API 变更** -* [MSP](https://docs.pingcap.com/tidbcloud/api/v1beta1/msp) 自 2024 年 10 月 15 日起已弃用,并将在未来移除。如果你目前正在使用 MSP API,请迁移到 [TiDB Cloud Partner](https://partner-console.tidbcloud.com/signin) 中的 Partner Management API。 +* [MSP](https://docs.pingcap.com/tidbcloud/api/v1beta1/msp) 自 2024 年 10 月 15 日起弃用,未来将被移除。如果你当前在使用 MSP API,请迁移到 [TiDB Cloud Partner](https://partner-console.tidbcloud.com/signin) 中的 Partner Management API。 ## 2024 年 9 月 24 日 **通用变更** -- 为在 AWS 上托管的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群提供新的 [TiFlash vCPU 和 RAM 大小](/tidb-cloud/size-your-cluster.md#tiflash-vcpu-and-ram):`32 vCPU, 128 GiB` +- 为托管在 AWS 上的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群提供新的 [TiFlash vCPU 和内存规格](/tidb-cloud/size-your-cluster.md#tiflash-vcpu-and-ram):`32 vCPU, 128 GiB` **CLI 变更** - 发布 [TiDB Cloud CLI v1.0.0-beta.2](https://github.com/tidbcloud/tidbcloud-cli/releases/tag/v1.0.0-beta.2)。 - TiDB Cloud CLI 提供以下新功能: + TiDB Cloud CLI 提供以下新特性: - 支持通过 [`ticloud serverless sql-user`](/tidb-cloud/ticloud-serverless-sql-user-create.md) 管理 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的 SQL 用户。 - - 允许在 [`ticloud serverless create`](/tidb-cloud/ticloud-cluster-create.md) 和 [`ticloud serverless update`](/tidb-cloud/ticloud-serverless-update.md) 中禁用 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的公共端点。 - - 添加 [`ticloud auth whoami`](/tidb-cloud/ticloud-auth-whoami.md) 命令,在使用 OAuth 身份验证时获取有关当前用户的信息。 - - 在 [`ticloud serverless export create`](/tidb-cloud/ticloud-serverless-export-create.md) 中支持 `--sql`、`--where` 和 `--filter` 标志,以灵活地选择源表。 - - 支持将数据导出到 CSV 和 Parquet 文件。 - - 支持使用角色 ARN 作为凭据将数据导出到 Amazon S3,并且还支持导出到 Google Cloud Storage 和 Azure Blob Storage。 + - 允许在 [`ticloud serverless create`](/tidb-cloud/ticloud-cluster-create.md) 和 [`ticloud serverless update`](/tidb-cloud/ticloud-serverless-update.md) 中禁用 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的公网访问端点。 + - 新增 [`ticloud auth whoami`](/tidb-cloud/ticloud-auth-whoami.md) 命令,在使用 OAuth 认证时获取当前用户信息。 + - 在 [`ticloud serverless export create`](/tidb-cloud/ticloud-serverless-export-create.md) 中支持 `--sql`、`--where` 和 `--filter` 参数,灵活选择源表。 + - 支持将数据导出为 CSV 和 Parquet 文件。 + - 支持使用角色 ARN 作为凭证将数据导出到 Amazon S3,同时支持导出到 Google Cloud Storage 和 Azure Blob Storage。 - 支持从 Amazon S3、Google Cloud Storage 和 Azure Blob Storage 导入数据。 - - 支持从分支和特定时间戳创建分支。 + - 支持从分支和指定时间戳创建分支。 - TiDB Cloud CLI 增强了以下功能: + TiDB Cloud CLI 优化了以下功能: - - 改进调试日志记录。现在它可以记录凭据和 user-agent。 - - 将本地导出文件下载速度从每秒数十 KiB 提高到每秒数十 MiB。 + - 改进调试日志记录。现在可以记录凭证和 user-agent。 + - 本地导出文件下载速度从每秒几十 KiB 提升到每秒几十 MiB。 - TiDB Cloud CLI 替换或删除了以下功能: + TiDB Cloud CLI 替换或移除了以下功能: - - [`ticloud serverless export create`](/tidb-cloud/ticloud-serverless-export-create.md) 中的 `--s3.bucket-uri` 标志被 `--s3.uri` 替换。 - - [`ticloud serverless export create`](/tidb-cloud/ticloud-serverless-export-create.md) 中删除了 `--database` 和 `--table` 标志。相反,你可以使用 `--sql`、`--where` 和 `--filter` 标志。 - - [`ticloud serverless update`](/tidb-cloud/ticloud-serverless-update.md) 无法再更新 annotations 字段。 + - [`ticloud serverless export create`](/tidb-cloud/ticloud-serverless-export-create.md) 中的 `--s3.bucket-uri` 参数被 `--s3.uri` 替代。 + - [`ticloud serverless export create`](/tidb-cloud/ticloud-serverless-export-create.md) 中移除了 `--database` 和 `--table` 参数。你可以使用 `--sql`、`--where` 和 `--filter` 参数替代。 + - [`ticloud serverless update`](/tidb-cloud/ticloud-serverless-update.md) 不再支持更新 annotations 字段。 ## 2024 年 9 月 10 日 -**常规变更** +**通用变更** -- 发布 TiDB Cloud 合作伙伴 Web 控制台和 Open API,以增强 TiDB Cloud 合作伙伴的资源和账单管理。 +- 启动 TiDB Cloud Partner Web 控制台和 Open API,提升 TiDB Cloud 合作伙伴的资源与账单管理能力。 - 通过 AWS Marketplace Channel Partner Private Offer (CPPO) 的托管服务提供商 (MSP) 和经销商现在可以利用 [TiDB Cloud 合作伙伴 Web 控制台](https://partner-console.tidbcloud.com/) 和 Open API 来简化他们的日常运营。 + 通过 AWS Marketplace Channel Partner Private Offer(CPPO)的托管服务提供商(MSP)和经销商现在可以利用 [TiDB Cloud Partner Web 控制台](https://partner-console.tidbcloud.com/) 和 Open API 简化日常运营。 - 有关更多信息,请参阅 [TiDB Cloud 合作伙伴 Web 控制台](/tidb-cloud/tidb-cloud-partners.md)。 + 更多信息,参见 [TiDB Cloud Partner Web 控制台](/tidb-cloud/tidb-cloud-partners.md)。 ## 2024 年 9 月 3 日 **控制台变更** -- 支持使用 [TiDB Cloud 控制台](https://tidbcloud.com/) 从 TiDB Cloud Serverless 集群导出数据。 - - 此前,TiDB Cloud 仅支持使用 [TiDB Cloud CLI](/tidb-cloud/cli-reference.md) 导出数据。现在,你可以轻松地将 TiDB Cloud Serverless 集群中的数据导出到本地文件和 Amazon S3,通过 [TiDB Cloud 控制台](https://tidbcloud.com/)。 - - 有关更多信息,请参阅 [从 TiDB Cloud Serverless 导出数据](/tidb-cloud/serverless-export.md) 和 [为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md)。 +- 支持通过 [TiDB Cloud 控制台](https://tidbcloud.com/) 从 TiDB Cloud Serverless 集群导出数据。 + + 之前,TiDB Cloud 仅支持通过 [TiDB Cloud CLI](/tidb-cloud/cli-reference.md) 导出数据。现在,你可以在 [TiDB Cloud 控制台](https://tidbcloud.com/) 中轻松将 TiDB Cloud Serverless 集群的数据导出到本地文件和 Amazon S3。 + + 更多信息,参见 [从 TiDB Cloud Serverless 导出数据](/tidb-cloud/serverless-export.md) 和 [为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md)。 -- 增强 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的连接体验。 +- 优化 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的连接体验。 - - 修改 **连接** 对话框界面,为 TiDB Cloud Dedicated 用户提供更精简高效的连接体验。 - - 引入新的集群级别 **网络** 页面,以简化集群的网络配置。 - - 将 **安全设置** 页面替换为新的 **密码设置** 页面,并将 IP 访问列表设置移至新的 **网络** 页面。 + - 优化 **Connect** 对话框界面,为 TiDB Cloud Dedicated 用户提供更简洁高效的连接体验。 + - 新增集群级 **Networking** 页面,简化集群的网络配置。 + - 用新的 **Password Settings** 页面替换 **Security Settings** 页面,并将 IP 访问列表设置迁移到新的 **Networking** 页面。 + + 更多信息,参见 [连接到 TiDB Cloud Dedicated](/tidb-cloud/connect-to-tidb-cluster.md)。 - 有关更多信息,请参阅 [连接到 TiDB Cloud Dedicated](/tidb-cloud/connect-to-tidb-cluster.md)。 +- 优化 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 和 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的数据导入体验: -- 增强 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 和 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的数据导入体验: - - - 使用更清晰的布局优化 **导入** 页面的布局。 + - 优化 **Import** 页面的布局,使其更清晰。 - 统一 TiDB Cloud Serverless 和 TiDB Cloud Dedicated 集群的导入步骤。 - - 简化 AWS Role ARN 创建过程,以便更轻松地进行连接设置。 + - 简化 AWS Role ARN 创建流程,便于连接设置。 - 有关更多信息,请参阅 [从文件导入数据到 TiDB Cloud](/tidb-cloud/tidb-cloud-migration-overview.md#import-data-from-files-to-tidb-cloud)。 + 更多信息,参见 [从文件导入数据到 TiDB Cloud](/tidb-cloud/tidb-cloud-migration-overview.md#import-data-from-files-to-tidb-cloud)。 ## 2024 年 8 月 20 日 **控制台变更** -- 优化了**创建私有终端节点连接**页面的布局,以改善在 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群中创建新的私有终端节点连接的用户体验。 +- 优化 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群中新建私有端点连接页面的布局,提升创建新私有端点连接的用户体验。 - 更多信息,请参考 [通过 AWS 私有终端节点连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections.md) 和 [通过 Google Cloud Private Service Connect 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md)。 + 更多信息,参见 [通过 AWS 私有端点连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections.md) 和 [通过 Google Cloud Private Service Connect 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md)。 ## 2024 年 8 月 6 日 **通用变更** -- [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 在 AWS 上负载均衡的计费变更。 +- [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 在 AWS 上的负载均衡计费变更。 - 从 2024 年 8 月 1 日起,TiDB Cloud Dedicated 的账单将包含新的 AWS 公共 IPv4 地址费用,与 [AWS 自 2024 年 2 月 1 日起生效的定价变更](https://aws.amazon.com/blogs/aws/new-aws-public-ipv4-address-charge-public-ip-insights/)保持一致。 每个公共 IPv4 地址的费用为每小时 0.005 美元,这将导致每个托管在 AWS 上的 TiDB Cloud Dedicated 集群每月大约 10 美元。 + 自 2024 年 8 月 1 日起,TiDB Cloud Dedicated 账单将包含 AWS 公网 IPv4 地址的新费用,与 [AWS 自 2024 年 2 月 1 日起生效的定价变更](https://aws.amazon.com/blogs/aws/new-aws-public-ipv4-address-charge-public-ip-insights/) 保持一致。每个公网 IPv4 地址的费用为 $0.005/小时,每个托管在 AWS 上的 TiDB Cloud Dedicated 集群每月约 $10。 - 此费用将显示在你[账单详情](/tidb-cloud/tidb-cloud-billing.md#billing-details)中现有的 **TiDB Cloud Dedicated - 数据传输 - 负载均衡** 服务下。 + 该费用将显示在 [账单明细](/tidb-cloud/tidb-cloud-billing.md#billing-details) 的 **TiDB Cloud Dedicated - Data Transfer - Load Balancing** 服务下。 -- 将新的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v7.5.2](https://docs.pingcap.com/tidb/v7.5/release-7.5.2) 升级到 [v7.5.3](https://docs.pingcap.com/tidb/v7.5/release-7.5.3)。 +- 新建 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v7.5.2](https://docs.pingcap.com/tidb/v7.5/release-7.5.2) 升级到 [v7.5.3](https://docs.pingcap.com/tidb/v7.5/release-7.5.3)。 **控制台变更** -- 增强 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的集群大小配置体验。 +- 优化 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的集群规格配置体验。 - 优化 [**创建集群**](/tidb-cloud/create-tidb-cluster.md) 和 [**修改集群**](/tidb-cloud/scale-tidb-cluster.md) 页面上 TiDB Cloud Dedicated 集群的 **集群大小** 部分的布局。 此外,**集群大小** 部分现在包含指向节点大小推荐文档的链接,这有助于你选择合适的集群大小。 + 优化 [**创建集群**](/tidb-cloud/create-tidb-cluster.md) 和 [**修改集群**](/tidb-cloud/scale-tidb-cluster.md) 页面中的 **Cluster Size** 部分布局。此外,**Cluster Size** 部分现在包含节点规格推荐文档的链接,帮助你选择合适的集群规格。 ## 2024 年 7 月 23 日 -**常规变更** +**通用变更** -- [数据服务(beta)](https://tidbcloud.com/project/data-service) 支持自动生成向量搜索端点。 +- [数据服务(beta)](https://tidbcloud.com/project/data-service) 支持自动生成向量检索端点。 - 如果你的表包含[向量数据类型](/tidb-cloud/vector-search-data-types.md),你可以自动生成一个向量搜索端点,该端点会根据你选择的距离函数计算向量距离。 + 如果你的表包含 [向量数据类型](/vector-search/vector-search-data-types.md),你可以自动生成一个向量检索端点,并根据所选距离函数计算向量距离。 - 此功能实现了与 AI 平台(例如 [Dify](https://docs.dify.ai/guides/tools) 和 [GPTs](https://openai.com/blog/introducing-gpts))的无缝集成,通过先进的自然语言处理和 AI 功能增强你的应用程序,从而实现更复杂的任务和智能解决方案。 + 该功能可无缝集成到 [Dify](https://docs.dify.ai/guides/tools) 和 [GPTs](https://openai.com/blog/introducing-gpts) 等 AI 平台,为你的应用带来先进的自然语言处理和 AI 能力,助力更复杂的任务和智能解决方案。 - 有关更多信息,请参阅[自动生成端点](/tidb-cloud/data-service-manage-endpoint.md#generate-an-endpoint-automatically)和[将数据应用与第三方工具集成](/tidb-cloud/data-service-integrations.md)。 + 更多信息,参见 [自动生成端点](/tidb-cloud/data-service-manage-endpoint.md#generate-an-endpoint-automatically) 和 [将数据应用集成到第三方工具](/tidb-cloud/data-service-integrations.md)。 -- 引入预算功能,帮助你跟踪 TiDB Cloud 的实际成本与计划支出,防止意外成本。 +- 引入预算功能,帮助你跟踪实际 TiDB Cloud 成本与计划支出,防止意外费用。 - 要访问此功能,你必须是你组织的 `Organization Owner` 或 `Organization Billing Admin` 角色。 + 你需要拥有组织的 `Organization Owner` 或 `Organization Billing Admin` 角色才能访问该功能。 - 有关更多信息,请参阅[管理 TiDB Cloud 的预算](/tidb-cloud/tidb-cloud-budget.md)。 + 更多信息,参见 [管理 TiDB Cloud 预算](/tidb-cloud/tidb-cloud-budget.md)。 ## 2024 年 7 月 9 日 **通用变更** -- 增强了[系统状态](https://status.tidbcloud.com/)页面,以提供对 TiDB Cloud 系统健康和性能的更好洞察。 +- 优化 [系统状态](https://status.tidbcloud.com/) 页面,提供更全面的 TiDB Cloud 系统健康和性能洞察。 - 要访问它,请直接访问 ,或者通过 [TiDB Cloud 控制台](https://tidbcloud.com) 导航,方法是单击右下角的 **?** 并选择 **系统状态**。 + 你可以直接访问 ,或在 [TiDB Cloud 控制台](https://tidbcloud.com) 右下角点击 **?** 并选择 **System Status** 进入。 **控制台变更** -- 优化了 **VPC 对等连接** 页面布局,以改善在 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群中[创建 VPC 对等连接](/tidb-cloud/set-up-vpc-peering-connections.md)的用户体验。 +- 优化 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群 [创建 VPC Peering 连接](/tidb-cloud/set-up-vpc-peering-connections.md) 的 **VPC Peering** 页面布局,提升用户体验。 ## 2024 年 7 月 2 日 **通用变更** -- [数据服务(beta)](https://tidbcloud.com/project/data-service) 提供了一个端点库,其中包含预定义的系统端点,你可以直接将其添加到你的数据应用中,从而减少端点开发的工作量。 +- [数据服务(beta)](https://tidbcloud.com/project/data-service) 提供端点库,内置预定义系统端点,可直接添加到你的数据应用中,减少端点开发工作量。 - 目前,该库仅包含 `/system/query` 端点,你只需在预定义的 `sql` 参数中传递 SQL 语句即可执行任何 SQL 语句。 此端点有助于立即执行 SQL 查询,从而提高灵活性和效率。 + 当前库中仅包含 `/system/query` 端点,你只需在预定义的 `sql` 参数中传入 SQL 语句,即可执行任意 SQL 查询。该端点便于即时执行 SQL 查询,提升灵活性和效率。 - 有关更多信息,请参阅 [添加预定义的系统端点](/tidb-cloud/data-service-manage-endpoint.md#add-a-predefined-system-endpoint)。 + 更多信息,参见 [添加预定义系统端点](/tidb-cloud/data-service-manage-endpoint.md#add-a-predefined-system-endpoint)。 -- 增强慢查询数据存储。 +- 优化慢查询数据存储。 - [TiDB Cloud 控制台](https://tidbcloud.com)上的慢查询访问现在更加稳定,并且不会影响数据库性能。 + [TiDB Cloud 控制台](https://tidbcloud.com) 的慢查询访问现在更加稳定,不会影响数据库性能。 ## 2024 年 6 月 25 日 **通用变更** -- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 支持向量搜索(beta)。 +- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 支持向量检索(beta)。 - 向量搜索(beta)功能提供了一种高级搜索解决方案,用于跨各种数据类型(包括文档、图像、音频和视频)执行语义相似性搜索。 此功能使开发人员能够使用熟悉的 MySQL 技能轻松构建具有生成式人工智能 (AI) 功能的可扩展应用程序。 主要功能包括: + 向量检索(beta)功能为多种数据类型(如文档、图片、音频和视频)提供语义相似性检索的高级解决方案。该功能让开发者可用熟悉的 MySQL 技能轻松构建具备生成式人工智能(AI)能力的可扩展应用。主要特性包括: - - [向量数据类型](/tidb-cloud/vector-search-data-types.md)、[向量索引](/tidb-cloud/vector-search-index.md) 和 [向量函数和运算符](/tidb-cloud/vector-search-functions-and-operators.md)。 - - 与 [LangChain](/tidb-cloud/vector-search-integrate-with-langchain.md)、[LlamaIndex](/tidb-cloud/vector-search-integrate-with-llamaindex.md) 和 [JinaAI](/tidb-cloud/vector-search-integrate-with-jinaai-embedding.md) 的生态系统集成。 - - Python 的编程语言支持:[SQLAlchemy](/tidb-cloud/vector-search-integrate-with-sqlalchemy.md)、[Peewee](/tidb-cloud/vector-search-integrate-with-peewee.md) 和 [Django ORM](/tidb-cloud/vector-search-integrate-with-django-orm.md)。 - - 示例应用程序和教程:使用 [Python](/tidb-cloud/vector-search-get-started-using-python.md) 或 [SQL](/tidb-cloud/vector-search-get-started-using-sql.md) 对文档执行语义搜索。 + - [向量数据类型](/vector-search/vector-search-data-types.md)、[向量索引](/vector-search/vector-search-index.md) 及 [向量函数与操作符](/vector-search/vector-search-functions-and-operators.md)。 + - 与 [LangChain](/vector-search/vector-search-integrate-with-langchain.md)、[LlamaIndex](/vector-search/vector-search-integrate-with-llamaindex.md) 和 [JinaAI](/vector-search/vector-search-integrate-with-jinaai-embedding.md) 的生态集成。 + - Python 语言支持:[SQLAlchemy](/vector-search/vector-search-integrate-with-sqlalchemy.md)、[Peewee](/vector-search/vector-search-integrate-with-peewee.md) 和 [Django ORM](/vector-search/vector-search-integrate-with-django-orm.md)。 + - 示例应用与教程:使用 [Python](/vector-search/vector-search-get-started-using-python.md) 或 [SQL](/vector-search/vector-search-get-started-using-sql.md) 进行文档语义检索。 - 有关更多信息,请参阅 [向量搜索(beta)概述](/tidb-cloud/vector-search-overview.md)。 + 更多信息,参见 [向量检索(beta)概览](/vector-search/vector-search-overview.md)。 -- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 现在为组织所有者提供每周电子邮件报告。 +- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 现为组织所有者提供每周邮件报告。 - 这些报告提供了有关集群性能和活动的见解。 通过接收自动每周更新,你可以随时了解集群的信息,并做出数据驱动的决策来优化集群。 + 这些报告可洞察集群的性能和活动。通过自动每周更新,你可以及时了解集群状况,并据此做出数据驱动的优化决策。 -- 发布 Chat2Query API v3 端点并弃用 Chat2Query API v1 端点 `/v1/chat2data`。 +- 发布 Chat2Query API v3 端点,并弃用 Chat2Query API v1 端点 `/v1/chat2data`。 - 使用 Chat2Query API v3 端点,你可以使用会话启动多轮 Chat2Query。 + 通过 Chat2Query API v3 端点,你可以基于会话开启多轮 Chat2Query。 - 有关更多信息,请参阅 [Chat2Query API 入门](/tidb-cloud/use-chat2query-api.md)。 + 更多信息,参见 [快速开始使用 Chat2Query API](/tidb-cloud/use-chat2query-api.md)。 **控制台变更** - 将 Chat2Query(beta)重命名为 SQL Editor(beta)。 - 先前称为 Chat2Query 的界面已重命名为 SQL Editor。 此更改阐明了手动 SQL 编辑和 AI 辅助查询生成之间的区别,从而增强了可用性和你的整体体验。 + 原 Chat2Query 界面现更名为 SQL Editor。此更名明确区分了手动 SQL 编辑与 AI 辅助查询生成,提升了可用性和整体体验。 - - **SQL Editor**:用于在 TiDB Cloud 控制台中手动编写和执行 SQL 查询的默认界面。 - - **Chat2Query**:AI 辅助的文本到查询功能,使你能够使用自然语言与数据库进行交互,以生成、重写和优化 SQL 查询。 + - **SQL Editor**:TiDB Cloud 控制台中用于手动编写和执行 SQL 查询的默认界面。 + - **Chat2Query**:AI 辅助的文本转查询功能,允许你用自然语言与数据库交互,生成、重写和优化 SQL 查询。 - 有关更多信息,请参阅 [使用 AI 辅助的 SQL Editor 探索你的数据](/tidb-cloud/explore-data-with-chat2query.md)。 + 更多信息,参见 [使用 AI 辅助 SQL Editor 探索数据](/tidb-cloud/explore-data-with-chat2query.md)。 ## 2024 年 6 月 18 日 -**常规变更** +**通用变更** -- 将 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的 16 vCPU TiFlash 和 32 vCPU TiFlash 的最大节点存储从 2048 GiB 增加到 4096 GiB。 +- [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的 16 vCPU TiFlash 和 32 vCPU TiFlash 节点最大存储从 2048 GiB 提升至 4096 GiB。 - 此增强功能提高了 TiDB Cloud Dedicated 集群的分析数据存储容量,提高了工作负载的扩展效率,并满足了不断增长的数据需求。 + 此增强提升了 TiDB Cloud Dedicated 集群的分析型数据存储能力,提高了工作负载扩展效率,并满足不断增长的数据需求。 - 有关更多信息,请参阅 [TiFlash 节点存储](/tidb-cloud/size-your-cluster.md#tiflash-node-storage)。 + 更多信息,参见 [TiFlash 节点存储](/tidb-cloud/size-your-cluster.md#tiflash-node-storage)。 -- 将新的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v7.5.1](https://docs.pingcap.com/tidb/v7.5/release-7.5.1) 升级到 [v7.5.2](https://docs.pingcap.com/tidb/v7.5/release-7.5.2)。 +- 新建 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v7.5.1](https://docs.pingcap.com/tidb/v7.5/release-7.5.1) 升级到 [v7.5.2](https://docs.pingcap.com/tidb/v7.5/release-7.5.2)。 ## 2024 年 6 月 4 日 **通用变更** -- 推出恢复组功能(beta),用于在 AWS 上部署的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的灾难恢复。 +- 为部署在 AWS 上的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群引入灾备恢复组(beta)功能。 - 此功能使你能够在 TiDB Cloud Dedicated 集群之间复制数据库,从而确保在发生区域性灾难时快速恢复。如果你具有 `Project Owner` 角色,则可以通过创建新的恢复组并将数据库分配给该组来启用此功能。通过使用恢复组复制数据库,你可以提高灾难准备能力,满足更严格的可用性 SLA,并实现更积极的恢复点目标 (RPO) 和恢复时间目标 (RTO)。 + 该功能允许你在 TiDB Cloud Dedicated 集群之间复制数据库,确保在区域性灾难发生时能够快速恢复。如果你拥有 `Project Owner` 角色,可以通过创建新的恢复组并将数据库分配到该组来启用此功能。通过使用恢复组复制数据库,你可以提升灾备能力,满足更严格的可用性 SLA,并实现更激进的恢复点目标(RPO)和恢复时间目标(RTO)。 - 有关更多信息,请参阅 [恢复组入门](/tidb-cloud/recovery-group-get-started.md)。 + 更多信息,参见 [快速开始使用恢复组](/tidb-cloud/recovery-group-get-started.md)。 -- 推出 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 列式存储 [TiFlash](/tiflash/tiflash-overview.md) 的计费和计量(beta)。 +- 为 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 列式存储 [TiFlash](/tiflash/tiflash-overview.md) 引入计费与计量(beta)。 - 在 2024 年 6 月 30 日之前,TiDB Cloud Serverless 集群中的列式存储仍然免费,享受 100% 的折扣。在此日期之后,每个 TiDB Cloud Serverless 集群将包含 5 GiB 的免费列式存储配额。超出免费配额的使用将收费。 + 截至 2024 年 6 月 30 日,TiDB Cloud Serverless 集群的列式存储仍享受 100% 折扣免费。此日期后,每个 TiDB Cloud Serverless 集群将包含 5 GiB 列式存储免费额度,超出部分将按量计费。 - 有关更多信息,请参阅 [TiDB Cloud Serverless 定价详情](https://www.pingcap.com/tidb-serverless-pricing-details/#storage)。 + 更多信息,参见 [TiDB Cloud Serverless 价格详情](https://www.pingcap.com/tidb-serverless-pricing-details/#storage)。 -- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 支持 [生存时间 (TTL)](/time-to-live.md)。 +- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 支持 [生存时间(TTL)](/time-to-live.md)。 ## 2024 年 5 月 28 日 -**常规变更** +**通用变更** -- Google Cloud `台湾 (asia-east1)` 区域支持 [数据迁移](/tidb-cloud/migrate-from-mysql-using-data-migration.md) 功能。 +- Google Cloud `Taiwan (asia-east1)` 区域支持 [数据迁移](/tidb-cloud/migrate-from-mysql-using-data-migration.md) 功能。 - 托管在 Google Cloud `台湾 (asia-east1)` 区域的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群现在支持数据迁移 (DM) 功能。如果你的上游数据存储在该区域或附近,你现在可以利用更快、更可靠的数据迁移,从 Google Cloud 迁移到 TiDB Cloud。 + 托管在 Google Cloud `Taiwan (asia-east1)` 区域的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群现已支持数据迁移(DM)功能。如果你的上游数据存储在该区域或附近,现在可以更快、更可靠地将数据从 Google Cloud 迁移到 TiDB Cloud。 -- 为托管在 AWS 和 Google Cloud 上的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群提供新的 [TiDB 节点大小](/tidb-cloud/size-your-cluster.md#tidb-vcpu-and-ram):`16 vCPU, 64 GiB` +- 为托管在 AWS 和 Google Cloud 上的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群提供新的 [TiDB 节点规格](/tidb-cloud/size-your-cluster.md#tidb-vcpu-and-ram):`16 vCPU, 64 GiB` **API 变更** -- 引入 TiDB Cloud Data Service API,用于自动高效地管理以下资源: +- 引入 TiDB Cloud Data Service API,实现以下资源的自动高效管理: - * **Data App (数据应用)**:一组端点,你可以使用这些端点来访问特定应用程序的数据。 - * **Data Source (数据源)**:链接到数据应用以进行数据操作和检索的集群。 - * **Endpoint (端点)**:一个 Web API,你可以自定义它来执行 SQL 语句。 - * **Data API Key (数据 API 密钥)**:用于安全地访问端点。 - * **OpenAPI Specification (OpenAPI 规范)**:Data Service 支持为每个数据应用生成 OpenAPI 规范 3.0,使你能够以标准化格式与你的端点进行交互。 + * **Data App**:一组端点的集合,可用于访问特定应用的数据。 + * **Data Source**:与 Data App 关联的集群,用于数据操作与检索。 + * **Endpoint**:可自定义执行 SQL 语句的 Web API。 + * **Data API Key**:用于安全访问端点。 + * **OpenAPI 规范**:Data Service 支持为每个 Data App 生成 OpenAPI Specification 3.0,便于你以标准格式与端点交互。 - 这些 TiDB Cloud Data Service API 端点在 TiDB Cloud API v1beta1 中发布,这是 TiDB Cloud 的最新 API 版本。 + 这些 TiDB Cloud Data Service API 端点已在 TiDB Cloud API v1beta1 中发布,该版本为 TiDB Cloud 的最新 API 版本。 - 有关更多信息,请参阅 [API 文档 (v1beta1)](https://docs.pingcap.com/tidbcloud/api/v1beta1/dataservice)。 + 更多信息,参见 [API 文档(v1beta1)](https://docs.pingcap.com/tidbcloud/api/v1beta1/dataservice)。 ## 2024 年 5 月 21 日 -**常规变更** +**通用变更** -- 为在 Google Cloud 上托管的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群提供一个新的 [TiDB 节点大小](/tidb-cloud/size-your-cluster.md#tidb-vcpu-and-ram):`8 vCPU, 16 GiB` +- 为托管在 Google Cloud 上的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群提供新的 [TiDB 节点规格](/tidb-cloud/size-your-cluster.md#tidb-vcpu-and-ram):`8 vCPU, 16 GiB` ## 2024 年 5 月 14 日 **通用变更** -- 扩展了[**时区**](/tidb-cloud/manage-user-access.md#set-the-time-zone-for-your-organization)部分中的时区选择,以更好地适应来自不同地区的客户。 +- 扩展 [**Time Zone**](/tidb-cloud/manage-user-access.md#set-the-time-zone-for-your-organization) 区域的时区选择,更好地满足来自不同地区客户的需求。 -- 支持[创建VPC对等连接](/tidb-cloud/set-up-vpc-peering-connections.md),即使你的VPC与TiDB Cloud的VPC位于不同的区域。 +- 支持在你的 VPC 与 TiDB Cloud 的 VPC 不同区域时 [创建 VPC peering](/tidb-cloud/set-up-vpc-peering-connections.md)。 -- [数据服务 (beta)](https://tidbcloud.com/project/data-service) 除了查询参数外,还支持路径参数。 +- [数据服务(beta)](https://tidbcloud.com/project/data-service) 支持路径参数与查询参数。 - 此功能通过结构化 URL 增强了资源识别,并改善了用户体验、搜索引擎优化 (SEO) 和客户端集成,为开发人员提供了更大的灵活性和与行业标准的更好对齐。 + 该功能通过结构化 URL 增强资源标识,提升用户体验、搜索引擎优化(SEO)和客户端集成,为开发者提供更大灵活性,更好地契合行业标准。 - 有关更多信息,请参阅[基本属性](/tidb-cloud/data-service-manage-endpoint.md#basic-properties)。 + 更多信息,参见 [基本属性](/tidb-cloud/data-service-manage-endpoint.md#basic-properties)。 ## 2024 年 4 月 16 日 **CLI 变更** -- 推出 [TiDB Cloud CLI 1.0.0-beta.1](https://github.com/tidbcloud/tidbcloud-cli),构建于新的 [TiDB Cloud API](/tidb-cloud/api-overview.md) 之上。 新的 CLI 带来了以下新功能: +- 发布基于新 [TiDB Cloud API](/tidb-cloud/api-overview.md) 的 [TiDB Cloud CLI 1.0.0-beta.1](https://github.com/tidbcloud/tidbcloud-cli)。新 CLI 带来以下新特性: - [从 TiDB Cloud Serverless 集群导出数据](/tidb-cloud/serverless-export.md) - - [将本地存储中的数据导入到 TiDB Cloud Serverless 集群](/tidb-cloud/ticloud-import-start.md) + - [从本地存储导入数据到 TiDB Cloud Serverless 集群](/tidb-cloud/ticloud-import-start.md) - [通过 OAuth 认证](/tidb-cloud/ticloud-auth-login.md) - [通过 TiDB Bot 提问](/tidb-cloud/ticloud-ai.md) - 在升级你的 TiDB Cloud CLI 之前,请注意这个新的 CLI 与之前的版本不兼容。 例如,CLI 命令中的 `ticloud cluster` 现在更新为 `ticloud serverless`。 更多信息,请参阅 [TiDB Cloud CLI 参考](/tidb-cloud/cli-reference.md)。 + 升级 TiDB Cloud CLI 前,请注意新 CLI 与旧版本不兼容。例如,CLI 命令中的 `ticloud cluster` 现已更新为 `ticloud serverless`。更多信息,参见 [TiDB Cloud CLI 参考](/tidb-cloud/cli-reference.md)。 ## 2024 年 4 月 9 日 **通用变更** -- 为托管在 AWS 上的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群提供一个新的 [TiDB 节点大小](/tidb-cloud/size-your-cluster.md#tidb-vcpu-and-ram): `8 vCPU, 32 GiB`。 +- 为托管在 AWS 上的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群提供新的 [TiDB 节点规格](/tidb-cloud/size-your-cluster.md#tidb-vcpu-and-ram):`8 vCPU, 32 GiB`。 ## 2024 年 4 月 2 日 **通用变更** -- 为 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群引入两种服务计划:**免费** 和 **可扩展**。 +- 为 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群引入两种服务计划:**Free** 和 **Scalable**。 - 为了满足不同的用户需求,TiDB Cloud Serverless 提供免费和可扩展的服务计划。无论你是刚开始使用还是扩展以满足不断增长的应用程序需求,这些计划都能提供你需要的灵活性和功能。 + 为满足不同用户需求,TiDB Cloud Serverless 提供免费和可扩展服务计划。无论你是刚刚起步还是需要应对不断增长的应用需求,这些计划都能为你提供所需的灵活性和能力。 - 更多信息,请参阅 [集群计划](/tidb-cloud/select-cluster-tier.md#cluster-plans)。 + 更多信息,参见 [集群计划](/tidb-cloud/select-cluster-tier.md#cluster-plans)。 -- 修改 TiDB Cloud Serverless 集群达到其使用配额时的限流行为。现在,一旦集群达到其使用配额,它会立即拒绝任何新的连接尝试,从而确保现有操作的不间断服务。 +- 修改 TiDB Cloud Serverless 集群达到使用配额后的限流行为。现在,一旦集群达到使用配额,将立即拒绝所有新连接请求,从而确保现有操作的服务不中断。 - 更多信息,请参阅 [使用配额](/tidb-cloud/serverless-limitations.md#usage-quota)。 + 更多信息,参见 [使用配额](/tidb-cloud/serverless-limitations.md#usage-quota)。 ## 2024 年 3 月 5 日 **通用变更** -- 将新 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v7.5.0](https://docs.pingcap.com/tidb/v7.5/release-7.5.0) 升级到 [v7.5.1](https://docs.pingcap.com/tidb/v7.5/release-7.5.1)。 +- 新建 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v7.5.0](https://docs.pingcap.com/tidb/v7.5/release-7.5.0) 升级到 [v7.5.1](https://docs.pingcap.com/tidb/v7.5/release-7.5.1)。 **控制台变更** -- 在 [**账单**](https://tidbcloud.com/org-settings/billing/payments) 页面引入 **成本探索器** 标签,该标签提供了一个直观的界面,用于分析和自定义你组织随时间的成本报告。 +- 在 [**Billing**](https://tidbcloud.com/org-settings/billing/payments) 页面新增 **Cost Explorer** 标签页,为你的组织提供直观的成本分析和自定义报表界面。 - 要使用此功能,请导航到你组织的 **账单** 页面,然后单击 **成本探索器** 标签。 + 你可以在组织的 **Billing** 页面点击 **Cost Explorer** 标签页使用该功能。 - 有关更多信息,请参见 [成本探索器](/tidb-cloud/tidb-cloud-billing.md#cost-explorer)。 + 更多信息,参见 [Cost Explorer](/tidb-cloud/tidb-cloud-billing.md#cost-explorer)。 - [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 为 [节点级资源指标](/tidb-cloud/built-in-monitoring.md#server) 显示 **limit** 标签。 - **limit** 标签显示集群中每个组件的 CPU、内存和存储等资源的最大使用量。此增强功能简化了监控集群资源使用率的过程。 + **limit** 标签展示了集群中各组件的 CPU、内存和存储等资源最大使用量。该优化简化了集群资源使用率的监控流程。 - 要访问这些指标限制,请导航到集群的 **监控** 页面,然后查看 **指标** 选项卡下的 **服务器** 类别。 + 你可以在集群的 **Monitoring** 页面,**Metrics** 标签下的 **Server** 分类中查看这些指标限制。 - 有关更多信息,请参见 [TiDB Cloud Dedicated 集群的指标](/tidb-cloud/built-in-monitoring.md#server)。 + 更多信息,参见 [TiDB Cloud Dedicated 集群指标](/tidb-cloud/built-in-monitoring.md#server)。 ## 2024 年 2 月 21 日 -**常规变更** +**通用变更** -- 将 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的 TiDB 版本从 [v6.6.0](https://docs.pingcap.com/tidb/v6.6/release-6.6.0) 升级到 [v7.1.3](https://docs.pingcap.com/tidb/v7.1/release-7.1.3)。 +- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的 TiDB 版本从 [v6.6.0](https://docs.pingcap.com/tidb/v6.6/release-6.6.0) 升级到 [v7.1.3](https://docs.pingcap.com/tidb/v7.1/release-7.1.3)。 ## 2024 年 2 月 20 日 @@ -413,59 +413,59 @@ summary: 了解 2024 年 TiDB Cloud 的发布说明。 - 支持在 Google Cloud 上创建更多 TiDB Cloud 节点。 - - 通过为 Google Cloud [配置区域 CIDR 大小](/tidb-cloud/set-up-vpc-peering-connections.md#prerequisite-set-a-cidr-for-a-region) 为 `/19`,你现在可以在项目的任何区域内创建最多 124 个 TiDB Cloud 节点。 - - 如果你想在项目的任何区域中创建超过 124 个节点,你可以联系 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md),以获得定制 IP 范围大小(范围从 `/16` 到 `/18`)的帮助。 + - 通过为 Google Cloud [配置区域 CIDR 大小](/tidb-cloud/set-up-vpc-peering-connections.md#prerequisite-set-a-cidr-for-a-region)为 `/19`,你现在可以在项目的任意区域内创建最多 124 个 TiDB Cloud 节点。 + - 如果你希望在项目的任意区域内创建超过 124 个节点,可联系 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md) 协助自定义 IP 范围大小(/16 到 /18)。 ## 2024 年 1 月 23 日 -**常规变更** +**通用变更** -- 为 TiDB、TiKV 和 TiFlash 添加 32 vCPU 作为节点大小选项。 +- 为 TiDB、TiKV 和 TiFlash 增加 32 vCPU 作为节点规格选项。 - 对于每个 `32 vCPU, 128 GiB` 的 TiKV 节点,节点存储范围从 200 GiB 到 6144 GiB。 + 每个 `32 vCPU, 128 GiB` TiKV 节点的存储范围为 200 GiB 到 6144 GiB。 - 建议在以下场景中使用此类节点: + 推荐在以下场景中使用此类节点: - 高负载生产环境 - - 极高性能 + - 极高性能需求 ## 2024 年 1 月 16 日 -**常规变更** +**通用变更** -- 增强了项目的 CIDR 配置。 +- 优化项目的 CIDR 配置。 - - 你可以直接为每个项目设置区域级别的 CIDR。 - - 你可以从更广泛的 CIDR 值范围中选择你的 CIDR 配置。 + - 你可以为每个项目直接设置区域级 CIDR。 + - 你可以从更广泛的 CIDR 值范围中选择 CIDR 配置。 - 注意:先前项目的全局级别 CIDR 设置已停用,但所有处于活动状态的现有区域 CIDR 均不受影响。现有集群的网络不会受到影响。 + 注意:之前的项目全局级 CIDR 设置已废弃,但所有处于激活状态的区域级 CIDR 不受影响。现有集群的网络不会受到影响。 - 有关更多信息,请参阅[为区域设置 CIDR](/tidb-cloud/set-up-vpc-peering-connections.md#prerequisite-set-a-cidr-for-a-region)。 + 更多信息,参见 [为区域设置 CIDR](/tidb-cloud/set-up-vpc-peering-connections.md#prerequisite-set-a-cidr-for-a-region)。 -- TiDB Cloud Serverless 用户现在可以禁用集群的公共端点。 +- TiDB Cloud Serverless 用户现在可以为集群禁用公网访问端点。 - 有关更多信息,请参阅[禁用公共端点](/tidb-cloud/connect-via-standard-connection-serverless.md#disable-a-public-endpoint)。 + 更多信息,参见 [禁用公网访问端点](/tidb-cloud/connect-via-standard-connection-serverless.md#disable-a-public-endpoint)。 -- [数据服务 (beta)](https://tidbcloud.com/project/data-service) 支持配置自定义域名以访问数据应用中的端点。 +- [数据服务(beta)](https://tidbcloud.com/project/data-service) 支持为 Data App 配置自定义域名访问端点。 - 默认情况下,TiDB Cloud 数据服务提供域名 `.data.tidbcloud.com` 以访问每个数据应用的端点。为了增强个性化和灵活性,你现在可以为你的数据应用配置自定义域名,而不是使用默认域名。此功能使你能够为你的数据库服务使用品牌 URL 并增强安全性。 + 默认情况下,TiDB Cloud Data Service 提供 `.data.tidbcloud.com` 域名访问每个 Data App 的端点。为提升个性化和灵活性,你现在可以为 Data App 配置自定义域名,替代默认域名。该功能支持为数据库服务使用品牌化 URL,并提升安全性。 - 有关更多信息,请参阅[数据服务中的自定义域名](/tidb-cloud/data-service-custom-domain.md)。 + 更多信息,参见 [数据服务中的自定义域名](/tidb-cloud/data-service-custom-domain.md)。 ## 2024 年 1 月 3 日 -**常规变更** +**通用变更** -- 支持[组织单点登录 (SSO)](https://tidbcloud.com/org-settings/authentication),以简化企业身份验证流程。 +- 支持 [组织 SSO](https://tidbcloud.com/org-settings/authentication),简化企业认证流程。 - 借助此功能,你可以使用[安全断言标记语言 (SAML)](https://en.wikipedia.org/wiki/Security_Assertion_Markup_Language) 或 [OpenID Connect (OIDC)](https://openid.net/developers/how-connect-works/) 将 TiDB Cloud 与任何身份提供商 (IdP) 无缝集成。 + 通过该功能,你可以使用 [安全断言标记语言(SAML)](https://en.wikipedia.org/wiki/Security_Assertion_Markup_Language) 或 [OpenID Connect(OIDC)](https://openid.net/developers/how-connect-works/) 无缝集成 TiDB Cloud 与任意身份提供商(IdP)。 - 有关更多信息,请参阅[组织单点登录身份验证](/tidb-cloud/tidb-cloud-org-sso-authentication.md)。 + 更多信息,参见 [组织 SSO 认证](/tidb-cloud/tidb-cloud-org-sso-authentication.md)。 -- 将新 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v7.1.1](https://docs.pingcap.com/tidb/v7.1/release-7.1.1) 升级到 [v7.5.0](https://docs.pingcap.com/tidb/v7.5/release-7.5.0)。 +- 新建 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v7.1.1](https://docs.pingcap.com/tidb/v7.1/release-7.1.1) 升级到 [v7.5.0](https://docs.pingcap.com/tidb/v7.5/release-7.5.0)。 -- [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的双区域备份功能现已正式发布 (GA)。 +- [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 的双区域备份功能现已正式发布(GA)。 - 通过使用此功能,你可以在 AWS 或 Google Cloud 内的地理区域之间复制备份。 此功能提供了额外的数据保护层和灾难恢复能力。 + 通过该功能,你可以在 AWS 或 Google Cloud 的不同地理区域间复制备份。该功能为数据保护和灾备能力提供了额外保障。 - 有关更多信息,请参阅[双区域备份](/tidb-cloud/backup-and-restore.md#turn-on-dual-region-backup)。 + 更多信息,参见 [双区域备份](/tidb-cloud/backup-and-restore.md#turn-on-dual-region-backup)。 \ No newline at end of file diff --git a/tidb-cloud/scalability-concepts.md b/tidb-cloud/scalability-concepts.md index 4b3bad53cee4c..8d75c7cafd926 100644 --- a/tidb-cloud/scalability-concepts.md +++ b/tidb-cloud/scalability-concepts.md @@ -1,43 +1,43 @@ --- -title: 可扩展性 -summary: 了解 TiDB Cloud 的可扩展性概念。 +title: Scalability +summary: 了解 TiDB Cloud 的可扩展性相关概念。 --- # 可扩展性 -TiDB Cloud Dedicated 允许你分别调整其计算和存储资源,以适应数据量或工作负载的变化。TiDB Cloud Dedicated 可以在不中断服务的情况下进行扩展。这种灵活性使组织能够在保持高性能和高可用性的同时优化其基础设施成本。 +TiDB Cloud Dedicated 允许你分别调整其计算和存储资源,以适应数据量或工作负载的变化。TiDB Cloud Dedicated 可以在不中断服务的情况下进行扩容或缩容。这种灵活性使组织能够在保持高性能和高可用性的同时,优化基础设施成本。 -> **注意:** +> **Note:** > -> [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 会根据应用程序的工作负载变化自动扩展。但是,你不能手动扩展 TiDB Cloud Serverless 集群。 +> [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 会根据你的应用工作负载变化自动扩缩容。但你无法手动扩缩 TiDB Cloud Serverless 集群。 -> **提示:** +> **Tip:** > -> 有关如何确定 TiDB Cloud Dedicated 集群大小的信息,请参见[确定 TiDB 大小](/tidb-cloud/size-your-cluster.md)。 +> 关于如何确定 TiDB Cloud Dedicated 集群的规模,请参阅 [Determine Your TiDB Size](/tidb-cloud/size-your-cluster.md)。 -## 垂直和水平扩展 +## 垂直扩展与水平扩展 -TiDB Cloud Dedicated 支持垂直(向上扩展)和水平(向外扩展)扩展。 +TiDB Cloud Dedicated 支持垂直扩展(scale up)和水平扩展(scale out)。 -- 水平扩展是向专用集群添加节点以分配工作负载的过程。 -- 垂直扩展是为专用集群增加 vCPU 和内存的过程。 +- 水平扩展是指向你的专属集群中添加节点,以分担工作负载的过程。 +- 垂直扩展是指为你的专属集群增加 vCPU 和内存的过程。 -TiDB Cloud Dedicated 也支持垂直和水平扩展的组合。 +TiDB Cloud Dedicated 也支持垂直扩展和水平扩展的组合。 -## TiDB 可扩展性 +## TiDB 的可扩展性 -TiDB 仅用于计算,不存储数据。你可以配置 TiDB 的节点数量、vCPU 和内存。 +TiDB 仅负责计算,不存储数据。你可以为 TiDB 配置节点数量、vCPU 和内存。 -通常,TiDB 性能随着 TiDB 节点数量的增加而线性增长。 +通常情况下,TiDB 的性能会随着 TiDB 节点数量的增加而线性提升。 -## TiKV 可扩展性 +## TiKV 的可扩展性 -TiKV 负责存储行式数据。你可以配置 TiKV 的节点数量、vCPU 和内存以及存储。TiKV 节点数量应至少为 1 组(3 个不同可用区中的 3 个节点),并以 3 个节点为单位增加。 +TiKV 负责存储行存数据。你可以为 TiKV 配置节点数量、vCPU、内存和存储空间。TiKV 节点数量至少为 1 组(即 3 个节点,分布在 3 个不同的可用区),并以 3 个节点为单位增加。 -TiDB Cloud 将 TiKV 节点均匀部署在你选择的区域中的 3 个可用区,以实现持久性和高可用性。在典型的 3 副本设置中,你的数据在所有可用区的 TiKV 节点之间均匀分布,并持久化到每个 TiKV 节点的磁盘上。虽然 TiKV 主要用于数据存储,但 TiKV 节点的性能也会根据不同的工作负载而变化。 +TiDB Cloud 会将 TiKV 节点均匀部署在你选择的区域内的 3 个可用区,以实现数据的持久性和高可用性。在典型的 3 副本部署中,你的数据会在所有可用区的 TiKV 节点之间均匀分布,并持久化到每个 TiKV 节点的磁盘上。虽然 TiKV 主要用于数据存储,但 TiKV 节点的性能也会根据不同的工作负载有所变化。 -## TiFlash 可扩展性 +## TiFlash 的可扩展性 -TiFlash 负责存储列式数据。TiFlash 实时从 TiKV 同步数据,并开箱即支持实时分析工作负载。你可以配置 TiFlash 的节点数量、vCPU 和内存以及存储。 +TiFlash 负责存储列存数据。TiFlash 会实时从 TiKV 同步数据,并原生支持实时分析型工作负载。你可以为 TiFlash 配置节点数量、vCPU、内存和存储空间。 -TiDB Cloud 将 TiFlash 节点均匀部署在区域内的不同可用区。建议在每个 TiDB Cloud 集群中至少配置两个 TiFlash 节点,并在生产环境中为数据创建至少两个副本以实现高可用性。 +TiDB Cloud 会将 TiFlash 节点均匀部署在一个区域内的不同可用区。建议你在每个 TiDB Cloud 集群中至少配置两个 TiFlash 节点,并为生产环境中的数据创建至少两个副本,以实现高可用性。 \ No newline at end of file diff --git a/tidb-cloud/scale-tidb-cluster.md b/tidb-cloud/scale-tidb-cluster.md index e4ce9e452ff4e..1b9c685385b5a 100644 --- a/tidb-cloud/scale-tidb-cluster.md +++ b/tidb-cloud/scale-tidb-cluster.md @@ -1,102 +1,102 @@ --- -title: 扩缩容 TiDB 集群 -summary: 了解如何扩缩容 TiDB Cloud 集群。 +title: 扩容你的 TiDB 集群 +summary: 了解如何扩容你的 TiDB Cloud 集群。 --- -# 扩缩容 TiDB 集群 +# 扩容你的 TiDB 集群 -> **注意:** +> **Note:** > -> - [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 会根据应用程序的工作负载变化自动扩缩容。但是,你无法手动扩缩容 TiDB Cloud Serverless 集群。 -> - 当集群处于**修改中**状态时,你无法对其执行任何新的扩缩容操作。 +> - [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 会根据你的应用负载变化自动扩缩容。但你无法手动扩容 TiDB Cloud Serverless 集群。 +> - 当集群处于 **MODIFYING** 状态时,你无法对其执行任何新的扩容操作。 -你可以在以下维度扩缩容 TiDB 集群: +你可以从以下维度扩容 TiDB 集群: - TiDB、TiKV 和 TiFlash 的节点数量 -- TiDB、TiKV 和 TiFlash 的 vCPU 和内存 -- TiKV 和 TiFlash 的存储空间 +- TiDB、TiKV 和 TiFlash 的 vCPU 及内存(RAM) +- TiKV 和 TiFlash 的存储 -有关如何确定 TiDB 集群大小的信息,请参见[确定 TiDB 集群大小](/tidb-cloud/size-your-cluster.md)。 +关于如何确定 TiDB 集群的规格,请参见 [确定你的 TiDB 集群规格](/tidb-cloud/size-your-cluster.md)。 -> **注意:** +> **Note:** > -> 如果 TiDB 或 TiKV 的 vCPU 和内存大小设置为 **4 vCPU,16 GiB**,请注意以下限制。要绕过这些限制,你可以先[增加 vCPU 和内存](#更改-vcpu-和内存)。 +> 如果 TiDB 或 TiKV 的 vCPU 和内存规格设置为 **4 vCPU, 16 GiB**,请注意以下限制。要绕过这些限制,你可以先[提升 vCPU 和内存](#change-vcpu-and-ram)。 > > - TiDB 的节点数量只能设置为 1 或 2,TiKV 的节点数量固定为 3。 -> - 4 vCPU 的 TiDB 只能与 4 vCPU 的 TiKV 搭配使用,4 vCPU 的 TiKV 只能与 4 vCPU 的 TiDB 搭配使用。 +> - 4 vCPU 的 TiDB 只能与 4 vCPU 的 TiKV 搭配使用,4 vCPU 的 TiKV 也只能与 4 vCPU 的 TiDB 搭配使用。 > - TiFlash 不可用。 ## 更改节点数量 -你可以增加或减少 TiDB、TiKV 或 TiFlash 节点的数量。 +你可以增加或减少 TiDB、TiKV 或 TiFlash 的节点数量。 -> **警告:** +> **Warning:** > -> 减少 TiKV 或 TiFlash 节点数量可能存在风险,这可能导致剩余节点的存储空间不足、CPU 使用率过高或内存使用率过高。 +> 减少 TiKV 或 TiFlash 节点数量存在风险,可能导致剩余节点的存储空间不足、CPU 使用率过高或内存使用率过高。 -要更改 TiDB、TiKV 或 TiFlash 节点的数量,请执行以下步骤: +要更改 TiDB、TiKV 或 TiFlash 的节点数量,请按照以下步骤操作: -1. 在 TiDB Cloud 控制台中,导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 -2. 在要扩缩容的集群所在行,点击 **...**。 +1. 在 TiDB Cloud 控制台,进入你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 +2. 在你想要扩容的集群所在行,点击 **...**。 - > **提示:** + > **Tip:** > - > 或者,你也可以在**集群**页面上点击要扩缩容的集群名称,然后点击右上角的 **...**。 + > 你也可以在 **Clusters** 页面点击你想要扩容的集群名称,然后在右上角点击 **...**。 -3. 在下拉菜单中点击**修改**。此时会显示**修改集群**页面。 -4. 在**修改集群**页面上,更改 TiDB、TiKV 或 TiFlash 节点的数量。 -5. 在右侧窗格中查看集群大小,然后点击**确认**。 +3. 在下拉菜单中点击 **Modify**,进入 **Modify Cluster** 页面。 +4. 在 **Modify Cluster** 页面,更改 TiDB、TiKV 或 TiFlash 的节点数量。 +5. 在右侧面板确认集群规格,然后点击 **Confirm**。 -你也可以通过 [修改 TiDB Cloud Dedicated 集群](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Cluster/operation/UpdateCluster) 端点使用 TiDB Cloud API 更改 TiDB、TiKV 或 TiFlash 节点的数量。目前,TiDB Cloud API 仍处于测试阶段。有关更多信息,请参见 [TiDB Cloud API 文档](https://docs.pingcap.com/tidbcloud/api/v1beta)。 +你也可以通过 TiDB Cloud API,使用 [Modify a TiDB Cloud Dedicated cluster](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Cluster/operation/UpdateCluster) 接口更改 TiDB、TiKV 或 TiFlash 的节点数量。目前,TiDB Cloud API 仍处于 beta 阶段。更多信息请参见 [TiDB Cloud API Documentation](https://docs.pingcap.com/tidbcloud/api/v1beta)。 ## 更改 vCPU 和内存 你可以增加或减少 TiDB、TiKV 或 TiFlash 节点的 vCPU 和内存。 -> **注意:** +> **Note:** > > - 更改 vCPU 和内存仅适用于以下集群: -> - 在 2022/12/31 之后创建的 AWS 托管集群。 -> - 在 2023/04/26 之后创建的 Google Cloud 托管集群。 -> - Azure 托管集群。 -> - AWS 对 vCPU 和内存更改有冷却期限制。如果你的 TiDB 集群托管在 AWS 上,在更改 TiKV 或 TiFlash 的 vCPU 和内存后,必须等待至少六小时才能再次更改。 -> - 在减少 vCPU 之前,请确保当前 TiKV 或 TiFlash 的节点存储空间不超过目标 vCPU 的最大节点存储空间。有关详细信息,请参见 [TiKV 节点存储空间](/tidb-cloud/size-your-cluster.md#tikv-node-storage-size)和 [TiFlash 节点存储空间](/tidb-cloud/size-your-cluster.md#tiflash-node-storage)。如果任何组件的当前存储空间超过其限制,你将无法减少 vCPU。 +> - 部署在 AWS 上且创建时间为 2022/12/31 之后。 +> - 部署在 Google Cloud 上且创建时间为 2023/04/26 之后。 +> - 部署在 Azure 上。 +> - AWS 对 vCPU 和内存的更改有冷却期。如果你的 TiDB 集群部署在 AWS 上,在更改 TiKV 或 TiFlash 的 vCPU 和内存后,必须等待至少 6 小时才能再次更改。 +> - 在减少 vCPU 之前,请确保 TiKV 或 TiFlash 当前节点的存储不超过目标 vCPU 的最大节点存储。详情请参见 [TiKV 节点存储](/tidb-cloud/size-your-cluster.md#tikv-node-storage-size) 和 [TiFlash 节点存储](/tidb-cloud/size-your-cluster.md#tiflash-node-storage)。如果任一组件当前存储超过其限制,则无法减少 vCPU。 -要更改 TiDB、TiKV 或 TiFlash 节点的 vCPU 和内存,请执行以下步骤: +要更改 TiDB、TiKV 或 TiFlash 节点的 vCPU 和内存,请按照以下步骤操作: -1. 在 TiDB Cloud 控制台中,导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 -2. 在要扩缩容的集群所在行,点击 **...**。 +1. 在 TiDB Cloud 控制台,进入你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 +2. 在你想要扩容的集群所在行,点击 **...**。 - > **提示:** + > **Tip:** > - > 或者,你也可以在**集群**页面上点击要扩缩容的集群名称,然后点击右上角的 **...**。 + > 你也可以在 **Clusters** 页面点击你想要扩容的集群名称,然后在右上角点击 **...**。 -3. 在下拉菜单中点击**修改**。此时会显示**修改集群**页面。 -4. 在**修改集群**页面上,更改 TiDB、TiKV 或 TiFlash 节点的 vCPU 和内存。 -5. 在右侧窗格中查看集群大小,然后点击**确认**。 +3. 在下拉菜单中点击 **Modify**,进入 **Modify Cluster** 页面。 +4. 在 **Modify Cluster** 页面,更改 TiDB、TiKV 或 TiFlash 节点的 vCPU 和内存。 +5. 在右侧面板确认集群规格,然后点击 **Confirm**。 -你也可以通过 [修改 TiDB Cloud Dedicated 集群](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Cluster/operation/UpdateCluster) 端点使用 TiDB Cloud API 更改 TiDB、TiKV 或 TiFlash 节点的 vCPU 和内存。目前,TiDB Cloud API 仍处于测试阶段。有关更多信息,请参见 [TiDB Cloud API 文档](https://docs.pingcap.com/tidbcloud/api/v1beta)。 +你也可以通过 TiDB Cloud API,使用 [Modify a TiDB Cloud Dedicated cluster](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Cluster/operation/UpdateCluster) 接口更改 TiDB、TiKV 或 TiFlash 节点的 vCPU 和内存。目前,TiDB Cloud API 仍处于 beta 阶段。更多信息请参见 [TiDB Cloud API Documentation](https://docs.pingcap.com/tidbcloud/api/v1beta)。 -## 更改存储空间 +## 更改存储 -你可以增加 TiKV 或 TiFlash 的存储空间。 +你可以增加 TiKV 或 TiFlash 的存储。 -> **警告:** +> **Warning:** > -> - 对于正在运行的集群,AWS、Azure 和 Google Cloud 不允许原地降级存储容量。 -> - AWS 和 Azure 对存储空间更改有冷却期限制。如果你的 TiDB 集群托管在 AWS 或 Azure 上,在更改 TiKV 或 TiFlash 的存储空间或 vCPU 和内存后,必须等待至少六小时才能再次更改。 +> - 对于运行中的集群,AWS、Azure 和 Google Cloud 不支持原地降低存储容量。 +> - AWS 和 Azure 对存储更改有冷却期。如果你的 TiDB 集群部署在 AWS 或 Azure 上,在更改 TiKV 或 TiFlash 的存储或 vCPU 和内存后,必须等待至少 6 小时才能再次更改。 -要更改 TiKV 或 TiFlash 的存储空间,请执行以下步骤: +要更改 TiKV 或 TiFlash 的存储,请按照以下步骤操作: -1. 在 TiDB Cloud 控制台中,导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 -2. 在要扩缩容的集群所在行,点击 **...**。 +1. 在 TiDB Cloud 控制台,进入你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 +2. 在你想要扩容的集群所在行,点击 **...**。 - > **提示:** + > **Tip:** > - > 或者,你也可以在**集群**页面上点击要扩缩容的集群名称,然后点击右上角的 **...**。 + > 你也可以在 **Clusters** 页面点击你想要扩容的集群名称,然后在右上角点击 **...**。 -3. 在下拉菜单中点击**修改**。此时会显示**修改集群**页面。 -4. 在**修改集群**页面上,更改每个 TiKV 或 TiFlash 节点的存储空间。 -5. 在右侧窗格中查看集群大小,然后点击**确认**。 +3. 在下拉菜单中点击 **Modify**,进入 **Modify Cluster** 页面。 +4. 在 **Modify Cluster** 页面,更改每个 TiKV 或 TiFlash 节点的存储。 +5. 在右侧面板确认集群规格,然后点击 **Confirm**。 -你也可以通过 [修改 TiDB Cloud Dedicated 集群](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Cluster/operation/UpdateCluster) 端点使用 TiDB Cloud API 更改 TiKV 或 TiFlash 节点的存储空间。目前,TiDB Cloud API 仍处于测试阶段。有关更多信息,请参见 [TiDB Cloud API 文档](https://docs.pingcap.com/tidbcloud/api/v1beta)。 +你也可以通过 TiDB Cloud API,使用 [Modify a TiDB Cloud Dedicated cluster](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Cluster/operation/UpdateCluster) 接口更改 TiKV 或 TiFlash 节点的存储。目前,TiDB Cloud API 仍处于 beta 阶段。更多信息请参见 [TiDB Cloud API Documentation](https://docs.pingcap.com/tidbcloud/api/v1beta)。 \ No newline at end of file diff --git a/tidb-cloud/secure-connections-to-serverless-clusters.md b/tidb-cloud/secure-connections-to-serverless-clusters.md index 5b7617849b53f..cae0bc31936d2 100644 --- a/tidb-cloud/secure-connections-to-serverless-clusters.md +++ b/tidb-cloud/secure-connections-to-serverless-clusters.md @@ -1,55 +1,55 @@ --- -title: TiDB Cloud Serverless 的 TLS 连接 -summary: 介绍 TiDB Cloud Serverless 中的 TLS 连接。 +title: TLS Connections to TiDB Cloud Serverless +summary: Introduce TLS connections in TiDB Cloud Serverless. aliases: ['/tidbcloud/secure-connections-to-serverless-tier-clusters'] --- -# TiDB Cloud Serverless 的 TLS 连接 +# TLS 连接到 TiDB Cloud Serverless -在客户端和 TiDB Cloud Serverless 集群之间建立安全的 TLS 连接是连接数据库的基本安全实践之一。TiDB Cloud Serverless 的服务器证书由独立的第三方证书提供商颁发。你可以轻松连接到 TiDB Cloud Serverless 集群,而无需下载服务器端数字证书。 +在你的客户端与 TiDB Cloud Serverless 集群之间建立安全的 TLS 连接,是连接数据库的基本安全实践之一。TiDB Cloud Serverless 的服务器证书由独立的第三方证书颁发机构签发。你可以无需下载服务器端数字证书,轻松连接到你的 TiDB Cloud Serverless 集群。 ## 前提条件 -- 通过[密码认证](/tidb-cloud/tidb-cloud-password-authentication.md)或 [SSO 认证](/tidb-cloud/tidb-cloud-sso-authentication.md)登录 TiDB Cloud。 -- [创建 TiDB Cloud Serverless 集群](/tidb-cloud/tidb-cloud-quickstart.md)。 +- 通过 [密码认证](/tidb-cloud/tidb-cloud-password-authentication.md) 或 [SSO 认证](/tidb-cloud/tidb-cloud-sso-authentication.md) 登录 TiDB Cloud。 +- [创建一个 TiDB Cloud Serverless 集群](/tidb-cloud/tidb-cloud-quickstart.md)。 ## 连接到 TiDB Cloud Serverless 集群的 TLS 连接 -在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,你可以获取不同连接方法的示例,并按以下方式连接到 TiDB Cloud Serverless 集群: +在 [TiDB Cloud 控制台](https://tidbcloud.com/) 中,你可以获取不同连接方式的示例,并按如下步骤连接到你的 TiDB Cloud Serverless 集群: -1. 导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击集群名称进入其概览页面。 +1. 进入你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击你的集群名称,进入其概览页面。 -2. 点击右上角的**连接**。此时会显示一个对话框。 +2. 点击右上角的 **Connect**。会弹出一个对话框。 -3. 在对话框中,保持连接类型的默认设置为 `Public`,然后选择你首选的连接方法和操作系统。 +3. 在对话框中,保持连接类型的默认设置为 `Public`,并选择你偏好的连接方式和操作系统。 -4. 如果你尚未设置密码,请点击**生成密码**为 TiDB Cloud Serverless 集群生成随机密码。该密码将自动嵌入到示例连接字符串中,以便轻松连接到你的集群。 +4. 如果你还没有设置密码,点击 **Generate Password**,为你的 TiDB Cloud Serverless 集群生成一个随机密码。该密码会自动嵌入到用于连接集群的示例连接字符串中,便于你快速连接。 > **注意:** > - > - 随机密码由 16 个字符组成,包括大小写字母、数字和特殊字符。 - > - 关闭此对话框后,生成的密码将不再显示,因此你需要将密码保存在安全的位置。如果你忘记了密码,可以在此对话框中点击**重置密码**进行重置。 - > - TiDB Cloud Serverless 集群可以通过互联网访问。如果你需要在其他地方使用密码,建议重置密码以确保数据库安全。 + > - 随机密码由 16 个字符组成,包括大写字母、小写字母、数字和特殊字符。 + > - 关闭此对话框后,生成的密码将不会再次显示,因此你需要将密码保存在安全的位置。如果忘记密码,可以在此对话框中点击 **Reset Password** 进行重置。 + > - TiDB Cloud Serverless 集群可通过互联网访问。如果你需要在其他地方使用该密码,建议你重置密码以确保数据库安全。 5. 使用连接字符串连接到你的集群。 > **注意:** > - > 连接到 TiDB Cloud Serverless 集群时,你必须在用户名中包含集群的前缀,并用引号将名称括起来。有关更多信息,请参见[用户名前缀](/tidb-cloud/select-cluster-tier.md#user-name-prefix)。 + > 连接 TiDB Cloud Serverless 集群时,必须在用户名中包含集群的前缀,并用引号包裹用户名。更多信息请参见 [用户名前缀](/tidb-cloud/select-cluster-tier.md#user-name-prefix)。 ## 根证书管理 -### 根证书颁发和有效期 +### 根证书的颁发与有效期 -TiDB Cloud Serverless 使用 [Let's Encrypt](https://letsencrypt.org/) 的证书作为证书颁发机构(CA),用于客户端和 TiDB Cloud Serverless 集群之间的 TLS 连接。一旦 TiDB Cloud Serverless 证书过期,它将自动轮换,而不会影响集群的正常运行和已建立的 TLS 安全连接。 +TiDB Cloud Serverless 使用 [Let's Encrypt](https://letsencrypt.org/) 作为客户端与 TiDB Cloud Serverless 集群之间 TLS 连接的证书颁发机构(CA)。一旦 TiDB Cloud Serverless 证书过期,将自动轮换,不会影响你的集群正常运行及已建立的 TLS 安全连接。 -如果客户端默认使用系统的根 CA 存储,例如 Java 和 Go,你可以轻松安全地连接到 TiDB Cloud Serverless 集群,而无需指定 CA 根证书的路径。但是,某些驱动程序和 ORM 不使用系统根 CA 存储。在这些情况下,你需要将驱动程序或 ORM 的 CA 根路径配置为系统根 CA 存储。例如,当你在 macOS 上使用 [mysqlclient](https://github.com/PyMySQL/mysqlclient) 连接 TiDB Cloud Serverless 集群时,需要在 `ssl` 参数中设置 `ca: /etc/ssl/cert.pem`。 +如果客户端默认使用系统的根 CA 存储(如 Java 和 Go),你可以无需指定 CA 根路径,轻松安全地连接到 TiDB Cloud Serverless 集群。但部分驱动和 ORM 并不使用系统根 CA 存储,这种情况下,你需要将驱动或 ORM 的 CA 根路径配置为你的系统根 CA 存储。例如,在 macOS 上使用 [mysqlclient](https://github.com/PyMySQL/mysqlclient) 通过 Python 连接 TiDB Cloud Serverless 集群时,需要在 `ssl` 参数中设置 `ca: /etc/ssl/cert.pem`。 -如果你使用的是不接受包含多个证书的证书文件的 GUI 客户端(如 DBeaver),则必须下载 [ISRG Root X1](https://letsencrypt.org/certs/isrgrootx1.pem) 证书。 +如果你使用的是如 DBeaver 这样的 GUI 客户端,且不支持包含多个证书的证书文件,则必须下载 [ISRG Root X1](https://letsencrypt.org/certs/isrgrootx1.pem) 证书。 ### 根证书默认路径 -在不同的操作系统中,根证书的默认存储路径如下: +在不同操作系统中,根证书的默认存储路径如下: **MacOS** @@ -83,25 +83,25 @@ TiDB Cloud Serverless 使用 [Let's Encrypt](https://letsencrypt.org/) 的证书 **Windows** -Windows 不提供 CA 根证书的特定路径。相反,它使用[注册表](https://learn.microsoft.com/en-us/windows-hardware/drivers/install/local-machine-and-current-user-certificate-stores)来存储证书。因此,要在 Windows 上指定 CA 根路径,请执行以下步骤: +Windows 没有提供特定的 CA 根路径,而是通过 [注册表](https://learn.microsoft.com/en-us/windows-hardware/drivers/install/local-machine-and-current-user-certificate-stores) 存储证书。因此,在 Windows 上指定 CA 根路径时,请按照以下步骤操作: -1. 下载 [ISRG Root X1 证书](https://letsencrypt.org/certs/isrgrootx1.pem),然后将其保存在你喜欢的路径中,例如 ``。 -2. 连接到 TiDB Cloud Serverless 集群时,使用该路径(``)作为你的 CA 根路径。 +1. 下载 [ISRG Root X1 证书](https://letsencrypt.org/certs/isrgrootx1.pem),并将其保存到你选择的路径,例如 ``。 +2. 连接 TiDB Cloud Serverless 集群时,将该路径(``)作为你的 CA 根路径。 ## 常见问题 -### 连接到 TiDB Cloud Serverless 集群支持哪些 TLS 版本? +### 连接 TiDB Cloud Serverless 集群支持哪些 TLS 版本? -出于安全考虑,TiDB Cloud Serverless 仅支持 TLS 1.2 和 TLS 1.3,不支持 TLS 1.0 和 TLS 1.1 版本。详情请参见 IETF [弃用 TLS 1.0 和 TLS 1.1](https://datatracker.ietf.org/doc/rfc8996/)。 +出于安全考虑,TiDB Cloud Serverless 仅支持 TLS 1.2 和 TLS 1.3,不支持 TLS 1.0 和 TLS 1.1。详情请参见 IETF [Deprecating TLS 1.0 and TLS 1.1](https://datatracker.ietf.org/doc/rfc8996/)。 -### 是否支持连接客户端和 TiDB Cloud Serverless 之间的双向 TLS 认证? +### 我的连接客户端与 TiDB Cloud Serverless 支持双向 TLS 认证吗? 不支持。 -TiDB Cloud Serverless 仅支持单向 TLS 认证,这意味着你的客户端使用公钥验证 TiDB Cloud 集群证书的私钥签名,而集群不验证客户端。 +TiDB Cloud Serverless 仅支持单向 TLS 认证,即你的客户端使用公钥验证 TiDB Cloud 集群证书私钥的签名,而集群不会验证客户端。 ### TiDB Cloud Serverless 是否必须配置 TLS 才能建立安全连接? -对于标准连接,TiDB Cloud Serverless 仅允许 TLS 连接,禁止非 SSL/TLS 连接。原因是当你通过互联网连接到 TiDB Cloud Serverless 集群时,SSL/TLS 是减少数据暴露在互联网上风险的最基本安全措施之一。 +对于标准连接,TiDB Cloud Serverless 只允许 TLS 连接,禁止非 SSL/TLS 连接。原因是 SSL/TLS 是你通过互联网连接 TiDB Cloud Serverless 集群时,降低数据暴露风险的最基本安全措施之一。 -对于私有端点连接,由于它支持对 TiDB Cloud 服务的高度安全和单向访问,且不会将你的数据暴露在公共互联网上,因此配置 TLS 是可选的。 +对于私有端点连接,由于其支持高度安全的单向访问 TiDB Cloud 服务且不会将你的数据暴露在公网,是否配置 TLS 是可选的。 \ No newline at end of file diff --git a/tidb-cloud/security-concepts.md b/tidb-cloud/security-concepts.md index 6fbf75f775f2a..af2163c1350d6 100644 --- a/tidb-cloud/security-concepts.md +++ b/tidb-cloud/security-concepts.md @@ -1,243 +1,243 @@ --- -title: 安全性 -summary: 了解 TiDB Cloud 的安全性概念。 +title: Security +summary: 了解 TiDB Cloud 的安全概念。 --- -# 安全性 +# Security -TiDB Cloud 提供了一个强大且灵活的安全框架,旨在保护数据、执行访问控制并满足现代合规标准。该框架将高级安全功能与运营效率相结合,以支持大规模的组织需求。 +TiDB Cloud 提供了强大且灵活的安全框架,旨在保护数据、实施访问控制,并满足现代合规标准。该框架将先进的安全特性与高效的运维能力相结合,以支持大规模组织的需求。 -**关键组件** +**Key components** -- **身份和访问管理(IAM)**:为 TiDB Cloud 控制台和数据库环境提供安全且灵活的身份验证和权限管理。 +- **Identity and Access Management (IAM)**:为 TiDB Cloud 控制台和数据库环境提供安全且灵活的身份认证与权限管理。 -- **网络访问控制**:可配置的连接选项,包括私有端点、VPC 对等连接、TLS 加密和 IP 访问列表。 +- **Network access control**:可配置的连接选项,包括私有终端节点、VPC 对等连接、TLS 加密和 IP 访问列表。 -- **数据访问控制**:高级加密功能,如客户管理的加密密钥(CMEK),用于保护静态数据。 +- **Data access control**:高级加密能力,如 Customer-Managed Encryption Keys (CMEK),用于保护静态数据安全。 -- **审计日志**:全面跟踪控制台操作和数据库操作,确保问责制和透明度。 +- **Audit logging**:对控制台操作和数据库操作的全面活动追踪,确保问责性和透明性。 -通过整合这些功能,TiDB Cloud 使组织能够保护敏感数据、简化访问控制并优化安全操作。 +通过集成这些能力,TiDB Cloud 使组织能够保护敏感数据、简化访问控制并优化安全运维。 -## 身份和访问管理(IAM) +## Identity and access management (IAM) -TiDB Cloud 采用身份和访问管理(IAM)来安全高效地管理控制台和数据库环境中的用户身份和权限。IAM 功能通过身份验证选项、基于角色的访问控制和分层资源结构的组合,旨在满足组织的安全性和合规性需求。 +TiDB Cloud 采用 Identity and Access Management (IAM) 来安全高效地管理控制台和数据库环境中的用户身份与权限。IAM 功能通过多种认证选项、基于角色的访问控制以及分层资源结构,满足组织的安全与合规需求。 -### TiDB Cloud 用户账户 +### TiDB Cloud user accounts -TiDB Cloud 用户账户是管理平台中资源身份和访问的基础。每个账户代表平台中的个人或实体,并支持多种身份验证方法以满足组织需求: +TiDB Cloud 用户账户是管理资源身份和访问的基础。每个账户代表平台内的个人或实体,并支持多种认证方式以适应组织需求: -- **默认用户名和密码** +- **Default username and password** - - 用户使用电子邮件地址和密码创建账户。 + - 用户通过邮箱地址和密码创建账户。 - - 适用于没有外部身份提供商的小型团队或个人。 + - 适用于没有外部身份提供方的小型团队或个人。 -- **标准 SSO 身份验证** +- **Standard SSO authentication** - - 用户通过 GitHub、Google 或 Microsoft 账户登录。 + - 用户可通过 GitHub、Google 或 Microsoft 账户登录。 - - 默认为所有组织启用。 + - 默认对所有组织启用。 - - **最佳实践**:适用于较小的团队或没有严格合规需求的团队。 + - **Best practice**:适用于小型团队或无严格合规需求的团队。 - - 更多信息,请参见[标准 SSO 身份验证](/tidb-cloud/tidb-cloud-sso-authentication.md)。 + - 详细信息参见 [Standard SSO Authentication](/tidb-cloud/tidb-cloud-sso-authentication.md)。 -- **组织 SSO 身份验证** +- **Organization SSO authentication** - - 使用 OIDC 或 SAML 协议与企业身份提供商(IdP)集成。 + - 通过 OIDC 或 SAML 协议与企业身份提供方(IdP)集成。 - - 启用多因素认证强制执行、密码过期策略和域名限制等功能。 + - 支持 MFA 强制、密码过期策略和域名限制等功能。 - - **最佳实践**:适用于具有高级安全性和合规性要求的大型组织。 + - **Best practice**:适用于有高级安全和合规要求的大型组织。 - - 更多信息,请参见[组织 SSO 身份验证](/tidb-cloud/tidb-cloud-org-sso-authentication.md)。 + - 详细信息参见 [Organization SSO Authentication](/tidb-cloud/tidb-cloud-org-sso-authentication.md)。 -### 数据库访问控制 +### Database access control -TiDB Cloud 通过基于用户和基于角色的权限提供细粒度的数据库访问控制。这些机制使管理员能够安全地管理数据对象和模式的访问,同时确保符合组织的安全策略。 +TiDB Cloud 通过基于用户和基于角色的权限,提供细粒度的数据库访问控制。这些机制允许管理员安全地管理对数据对象和 schema 的访问,同时确保符合组织的安全策略。 -- **最佳实践:** +- **Best practices:** - - 通过仅授予用户其角色所需的权限来实施最小权限原则。 + - 实施最小权限原则,仅授予用户其角色所需的权限。 - - 定期审核和更新用户访问权限,以适应不断变化的组织需求。 + - 定期审计和更新用户访问权限,以适应组织需求的变化。 -### 数据库用户账户 +### Database user accounts 数据库用户账户存储在 `mysql.user` 系统表中,并通过用户名和客户端主机唯一标识。 -在数据库初始化期间,TiDB 自动创建一个默认账户:`'root'@'%'`。 +在数据库初始化期间,TiDB 会自动创建一个默认账户:`'root'@'%'`。 -更多信息,请参见 [TiDB 用户账户管理](https://docs.pingcap.com/tidb/stable/user-account-management#user-names-and-passwords)。 +详细信息参见 [TiDB User Account Management](https://docs.pingcap.com/tidb/stable/user-account-management#user-names-and-passwords)。 -### SQL 代理账户 +### SQL Proxy accounts -SQL 代理账户是由 TiDB Cloud 自动生成的特殊用途账户。这些账户的主要特征包括: +SQL Proxy 账户是 TiDB Cloud 自动生成的特殊用途账户。其主要特性包括: -- **与 TiDB Cloud 用户账户关联:** 每个 SQL 代理账户对应一个特定的 TiDB Cloud 用户。 +- **Linked to TiDB Cloud user accounts:** 每个 SQL Proxy 账户对应一个特定的 TiDB Cloud 用户。 -- **映射到角色:** SQL 代理账户被授予 `role_admin` 角色。 +- **Mapped to roles:** SQL Proxy 账户被授予 `role_admin` 角色。 -- **基于令牌:** SQL 代理账户使用安全的 JWT 令牌而不是密码,确保通过 TiDB Cloud 数据服务或 SQL 编辑器进行无缝、受限访问。 +- **Token-based:** SQL Proxy 账户使用安全的 JWT 令牌而非密码,确保通过 TiDB Cloud Data Service 或 SQL Editor 实现无缝且受限的访问。 -### TiDB 权限和角色 +### TiDB privileges and roles -TiDB 的权限管理系统基于 MySQL 5.7,支持对数据库对象的细粒度访问。同时,TiDB 还引入了 MySQL 8.0 的 RBAC 和动态权限机制。这实现了细粒度和便捷的数据库权限管理。 +TiDB 的权限管理系统基于 MySQL 5.7,实现了对数据库对象的细粒度访问控制。同时,TiDB 也引入了 MySQL 8.0 的 RBAC 和动态权限机制,实现了数据库权限的细粒度和便捷管理。 -**静态权限** +**Static privileges** -- 支持基于数据库对象的细粒度访问控制,包括表、视图、索引、用户和其他对象。 +- 支持基于数据库对象(如表、视图、索引、用户等)的细粒度访问控制。 -- *示例:向用户授予特定表的 SELECT 权限。* +- *示例:为某用户授予对特定表的 SELECT 权限。* -**动态权限** +**Dynamic privileges** -- 支持合理拆分数据库管理权限,实现系统管理权限的细粒度控制。 +- 支持对数据库管理权限的合理拆分,实现系统管理权限的细粒度控制。 -- 示例:将 `BACKUP_ADMIN` 分配给管理数据库备份的账户,而不需要更广泛的管理权限。 +- 示例:为负责数据库备份的账户分配 `BACKUP_ADMIN`,而无需更广泛的管理权限。 -**SQL 角色(RBAC)** +**SQL roles (RBAC)** -- 将权限分组到可分配给用户的角色中,实现简化的权限管理和动态更新。 +- 将权限分组为角色,分配给用户,实现权限管理的简化和动态更新。 -- 示例:为分析师分配读写角色以简化用户访问控制。 +- 示例:为分析师分配读写角色,简化用户访问控制。 -该系统确保了管理用户访问的灵活性和精确性,同时符合组织政策。 +该系统确保了用户访问管理的灵活性和精确性,并与组织策略保持一致。 -### 组织和项目 +### Organization and projects -TiDB Cloud 使用分层结构管理用户和资源:组织、项目和集群。 +TiDB Cloud 通过分层结构(组织、项目和集群)管理用户和资源。 -**组织** +**Organizations** -- 管理资源、角色和计费的顶级实体。 +- 管理资源、角色和账单的顶层实体。 -- 组织所有者拥有完整权限,包括项目创建和角色分配。 +- 组织所有者拥有全部权限,包括项目创建和角色分配。 -**项目** +**Projects** -- 组织的子部门,包含集群和特定于项目的配置。 +- 组织下的子单元,包含集群和项目级配置。 -- 由负责其范围内集群的项目所有者管理。 +- 由项目所有者管理,负责其范围内的集群。 -**集群** +**Clusters** -- 项目内的单个数据库实例。 +- 项目内的独立数据库实例。 -### 示例结构 +### Example structure ``` -- 你的组织 - - 项目 1 - - 集群 1 - - 集群 2 - - 项目 2 - - 集群 3 - - 集群 4 - - 项目 3 - - 集群 5 - - 集群 6 +- Your organization + - Project 1 + - Cluster 1 + - Cluster 2 + - Project 2 + - Cluster 3 + - Cluster 4 + - Project 3 + - Cluster 5 + - Cluster 6 ``` -### 主要功能 +### Key features -- **细粒度权限**: - - 在组织和项目级别分配特定角色,实现精确的访问控制。 +- **Granular permissions**: + - 可在组织和项目级别分配特定角色,实现精确的访问控制。 - - 通过仔细规划角色分配确保灵活性和安全性。 + - 通过合理规划角色分配,确保灵活性和安全性。 -- **计费管理**: - - 在组织级别整合计费,并提供每个项目的详细分类。 +- **Billing management**: + - 账单在组织级别统一管理,并可为每个项目提供详细拆分。 -### 身份和访问管理(IAM)角色 +### Identity and Access Management (IAM) Roles -TiDB Cloud 提供基于角色的访问控制来管理组织和项目的权限: +TiDB Cloud 提供基于角色的访问控制,以管理组织和项目范围内的权限: -- **[组织级角色](/tidb-cloud/manage-user-access.md#organization-roles)**:授予管理整个组织的权限,包括计费和项目创建。 +- **[Organization-Level roles](/tidb-cloud/manage-user-access.md#organization-roles)**:授予管理整个组织(包括账单和项目创建)的权限。 -- **[项目级角色](/tidb-cloud/manage-user-access.md#project-roles)**:分配管理特定项目的权限,包括集群和配置。 +- **[Project-Level roles](/tidb-cloud/manage-user-access.md#project-roles)**:分配管理特定项目(包括集群和配置)的权限。 -## 网络访问控制 +## Network access control -TiDB Cloud 通过强大的网络访问控制确保集群连接和数据传输的安全性。主要功能包括: +TiDB Cloud 通过强大的网络访问控制,确保集群连接和数据传输的安全。主要特性包括: -### 私有端点 +### Private endpoints -- 使你的虚拟私有云(VPC)中的 SQL 客户端能够安全连接到 TiDB Cloud Dedicated 集群。 +- 允许你在自己的 Virtual Private Cloud (VPC) 内安全连接到 TiDB Cloud Dedicated 集群。 - 支持 [AWS PrivateLink](/tidb-cloud/set-up-private-endpoint-connections.md)、[Azure Private Link](/tidb-cloud/set-up-private-endpoint-connections-on-azure.md) 和 [Google Cloud Private Service Connect](/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md)。 -**最佳实践:** 在生产环境中使用私有端点以最小化公共暴露,并定期审查配置。 +**Best practices:** 在生产环境中使用私有终端节点以最小化公网暴露,并定期检查配置。 -### TLS(传输层安全) +### TLS (Transport Layer Security) -- 加密客户端和服务器之间的通信以保护数据传输。 +- 加密客户端与服务器之间的通信,保障数据传输安全。 -- 提供 [Serverless](/tidb-cloud/secure-connections-to-serverless-clusters.md) 和 [Dedicated](/tidb-cloud/tidb-cloud-tls-connect-to-dedicated.md) 集群的设置指南。 +- 提供 [Serverless](/tidb-cloud/secure-connections-to-serverless-clusters.md) 和 [Dedicated](/tidb-cloud/tidb-cloud-tls-connect-to-dedicated.md) 集群的配置指南。 -**最佳实践:** 确保 TLS 证书是最新的,并定期轮换。 +**Best practices:** 确保 TLS 证书为最新,并定期轮换。 -### VPC 对等连接 +### VPC peering -- 在虚拟私有云之间建立私有连接,实现安全、无缝的通信。 +- 建立虚拟私有云之间的私有连接,实现安全、无缝的通信。 -- 更多信息,请参见[通过 VPC 对等连接连接到 TiDB Cloud Dedicated](/tidb-cloud/set-up-vpc-peering-connections.md)。 +- 详细信息参见 [Connect to TiDB Cloud Dedicated via VPC Peering](/tidb-cloud/set-up-vpc-peering-connections.md)。 -**最佳实践:** 用于关键工作负载以避免公共互联网暴露,并监控性能。 +**Best practices:** 用于关键业务负载,避免公网暴露,并监控性能。 -### IP 访问列表 +### IP access list -- 作为防火墙限制集群访问仅限于受信任的 IP 地址。 +- 作为防火墙,仅允许受信任的 IP 地址访问集群。 -- 更多信息,请参见[配置 IP 访问列表](/tidb-cloud/configure-ip-access-list.md)。 +- 详细信息参见 [Configure an IP Access List](/tidb-cloud/configure-ip-access-list.md)。 -**最佳实践:** 定期审核和更新访问列表以维护安全性。 +**Best practices:** 定期审计和更新访问列表,确保安全。 -## 数据访问控制 +## Data access control -TiDB Cloud 通过高级加密功能保护静态数据,确保符合行业法规的安全性和合规性。 +TiDB Cloud 通过高级加密能力保护静态数据,确保安全性并符合行业法规。 -**客户管理的加密密钥(CMEK)** +**Customer-Managed Encryption Key (CMEK)** -- 为组织提供对 TiDB Cloud Dedicated 集群加密的完全控制。 +- 为组织提供对 TiDB Cloud Dedicated 集群加密的完全控制权。 -- 启用时使用 CMEK 密钥加密静态数据和备份。 +- 启用后,使用 CMEK 密钥对静态数据和备份进行加密。 -- 对于没有 CMEK 的 TiDB Cloud Dedicated 集群,TiDB Cloud 使用托管密钥;TiDB Cloud Serverless 集群仅使用托管密钥。 +- 对于未启用 CMEK 的 TiDB Cloud Dedicated 集群,TiDB Cloud 使用托管密钥;TiDB Cloud Serverless 集群仅依赖托管密钥。 -**最佳实践:** +**Best practices:** -- 定期轮换 CMEK 密钥以增强安全性并满足合规标准。 +- 定期轮换 CMEK 密钥,以提升安全性并满足合规标准。 -- 使用 CMEK 密钥一致地加密备份以提供额外保护。 +- 始终使用 CMEK 密钥加密备份,增强保护。 -- 对于需要严格合规性的行业(如 HIPAA 和 GDPR),利用 CMEK。 +- 针对如 HIPAA 和 GDPR 等有严格合规要求的行业,建议使用 CMEK。 -更多信息,请参见[使用客户管理的加密密钥进行静态加密](/tidb-cloud/tidb-cloud-encrypt-cmek.md)。 +详细信息参见 [Encryption at Rest Using Customer-Managed Encryption Keys](/tidb-cloud/tidb-cloud-encrypt-cmek.md)。 -## 审计日志 +## Audit logging -TiDB Cloud 提供全面的审计日志功能,用于监控用户活动和数据库操作,确保安全性、问责制和合规性。 +TiDB Cloud 提供全面的审计日志功能,用于监控用户活动和数据库操作,确保安全、问责和合规。 -### 控制台审计日志 +### Console audit logging -跟踪 TiDB Cloud 控制台上的关键操作,如邀请用户或管理集群。 +追踪 TiDB Cloud 控制台上的关键操作,如邀请用户或管理集群。 -**最佳实践:** +**Best practices:** -- 将日志与 SIEM 工具集成以进行实时监控和告警。 +- 将日志集成到 SIEM 工具,实现实时监控和告警。 -- 设置保留策略以满足合规要求。 +- 设置日志保留策略,以满足合规要求。 -### 数据库审计日志 +### Database audit logging -记录详细的数据库操作,包括执行的 SQL 语句和用户访问。 +记录详细的数据库操作,包括执行的 SQL 语句和用户访问情况。 -**最佳实践:** +**Best practices:** -- 定期审查日志以发现异常活动或未授权访问。 +- 定期检查日志,发现异常活动或未授权访问。 -- 使用日志进行合规报告和取证分析。 +- 利用日志进行合规报告和取证分析。 -更多信息,请参见[控制台审计日志](/tidb-cloud/tidb-cloud-console-auditing.md)和[数据库审计日志](/tidb-cloud/tidb-cloud-auditing.md)。 +详细信息参见 [Console Audit Logging](/tidb-cloud/tidb-cloud-console-auditing.md) 和 [Database Audit Logging](/tidb-cloud/tidb-cloud-auditing.md)。 \ No newline at end of file diff --git a/tidb-cloud/select-cluster-tier.md b/tidb-cloud/select-cluster-tier.md index 984fa5cf94bd2..4a81fbc9cdcb3 100644 --- a/tidb-cloud/select-cluster-tier.md +++ b/tidb-cloud/select-cluster-tier.md @@ -1,14 +1,14 @@ --- -title: 选择集群套餐 -summary: 了解如何在 TiDB Cloud 上选择集群套餐。 +title: 选择你的集群规格 +summary: 了解如何在 TiDB Cloud 上选择你的集群规格。 aliases: ['/tidbcloud/developer-tier-cluster'] --- -# 选择集群套餐 +# 选择你的集群规格 -集群套餐决定了集群的吞吐量和性能。 +集群规格决定了你的集群的吞吐量和性能。 -TiDB Cloud 提供以下两种集群套餐选项。在创建集群之前,你需要考虑哪个选项更适合你的需求。 +TiDB Cloud 提供以下两种集群规格选项。在创建集群之前,你需要考虑哪种选项更适合你的需求。 - [TiDB Cloud Serverless](#tidb-cloud-serverless) - [TiDB Cloud Dedicated](#tidb-cloud-dedicated) @@ -16,87 +16,87 @@ TiDB Cloud 提供以下两种集群套餐选项。在创建集群之前,你需 ## TiDB Cloud Serverless -TiDB Cloud Serverless 是一个完全托管的多租户 TiDB 产品。它提供即时、自动扩展的 MySQL 兼容数据库,并提供慷慨的免费套餐,超出免费限制后按使用量计费。 +TiDB Cloud Serverless 是一种全托管的多租户 TiDB 服务。它提供了一个即时、自动弹性扩缩的 MySQL 兼容数据库,并在超出免费额度后,采用按量计费模式,同时提供了丰富的免费额度。 ### 集群方案 -TiDB Cloud Serverless 提供两种服务方案以满足不同用户的需求。无论你是刚刚开始使用,还是需要扩展以满足不断增长的应用程序需求,这些服务方案都能提供你所需的灵活性和能力。 +TiDB Cloud Serverless 提供两种服务方案,以满足不同用户的需求。无论你是刚刚开始使用,还是需要扩展以应对不断增长的应用需求,这些服务方案都能为你提供所需的灵活性和能力。 #### 免费集群方案 -免费集群方案非常适合刚开始使用 TiDB Cloud Serverless 的用户。它为开发者和小型团队提供以下基本功能: +免费集群方案非常适合刚开始使用 TiDB Cloud Serverless 的用户。它为开发者和小型团队提供以下基本特性: -- **免费**:此方案完全免费,无需信用卡即可开始使用。 -- **存储**:提供初始 5 GiB 的行存储和 5 GiB 的列存储。 -- **请求单位**:包含 50 百万[请求单位 (RUs)](/tidb-cloud/tidb-cloud-glossary.md#request-unit) 用于数据库操作。 -- **轻松升级**:随着需求增长,可以平滑过渡到[可扩展集群方案](#可扩展集群方案)。 +- **No cost**:该方案完全免费,无需信用卡即可开始使用。 +- **Storage**:提供初始 5 GiB 的行存储和 5 GiB 的列存储。 +- **Request Units**:包含 5000 万 [Request Units (RUs)](/tidb-cloud/tidb-cloud-glossary.md#request-unit) 用于数据库操作。 +- **Easy upgrade**:当你的需求增长时,可以平滑升级到 [scalable cluster plan](#scalable-cluster-plan)。 #### 可扩展集群方案 -对于工作负载不断增长并需要实时扩展的应用程序,可扩展集群方案通过以下功能提供灵活性和性能,以跟上你的业务增长: +对于需要实时扩展以应对不断增长的工作负载的应用,可扩展集群方案提供了灵活性和性能,帮助你的业务持续增长,具备以下特性: -- **增强功能**:包含免费集群方案的所有功能,同时具备处理更大和更复杂工作负载的能力,以及高级安全功能。 -- **自动扩展**:自动调整存储和计算资源,以高效满足不断变化的工作负载需求。 -- **可预测定价**:虽然此方案需要信用卡,但你只需为使用的资源付费,确保成本效益的可扩展性。 +- **Enhanced capabilities**:包含免费集群方案的所有能力,并具备处理更大、更复杂工作负载的能力,以及高级安全特性。 +- **Automatic scaling**:自动调整存储和计算资源,以高效应对变化的工作负载需求。 +- **Predictable pricing**:虽然该方案需要信用卡,但你只需为实际使用的资源付费,确保扩展的性价比。 ### 使用配额 -对于 TiDB Cloud 中的每个组织,默认情况下你最多可以创建五个[免费集群](#免费集群方案)。要创建更多 TiDB Cloud Serverless 集群,你需要添加信用卡并创建[可扩展集群](#可扩展集群方案)。 +在 TiDB Cloud 的每个组织中,默认最多可以创建 5 个 [免费集群](#free-cluster-plan)。如需创建更多 TiDB Cloud Serverless 集群,你需要添加信用卡并创建 [可扩展集群](#scalable-cluster-plan) 进行使用。 -对于你组织中的前五个 TiDB Cloud Serverless 集群,无论是免费还是可扩展集群,TiDB Cloud 都为每个集群提供以下免费使用配额: +对于组织中的前 5 个 TiDB Cloud Serverless 集群(无论是免费还是可扩展),TiDB Cloud 为每个集群提供如下免费使用配额: - 行存储:5 GiB - 列存储:5 GiB -- 请求单位 (RUs):每月 50 百万 RUs +- Request Units (RUs):每月 5000 万 RUs -请求单位 (RU) 是用于表示单个数据库请求消耗的资源量的度量单位。请求消耗的 RU 数量取决于各种因素,如操作类型或正在检索或修改的数据量。 +Request Unit (RU) 是用于衡量单次数据库请求所消耗资源量的单位。每个请求消耗的 RU 数量取决于多种因素,例如操作类型或检索/修改的数据量。 -一旦集群达到其使用配额,它会立即拒绝任何新的连接尝试,直到你[增加配额](/tidb-cloud/manage-serverless-spend-limit.md#update-spending-limit)或在新月份开始时重置使用量。在达到配额之前建立的现有连接将保持活动状态,但会经历限流。例如,当免费集群的行存储超过 5 GiB 时,集群会自动限制任何新的连接尝试。 +一旦集群达到其使用配额,将立即拒绝任何新的连接尝试,直到你 [增加配额](/tidb-cloud/manage-serverless-spend-limit.md#update-spending-limit) 或在新月开始时重置使用量。已建立的连接在达到配额前会保持活跃,但会受到限流。例如,当免费集群的行存储超过 5 GiB 时,集群会自动限制任何新的连接尝试。 -要了解不同资源(包括读取、写入、SQL CPU 和网络出口)的 RU 消耗、定价详情和限流信息,请参见 [TiDB Cloud Serverless 定价详情](https://www.pingcap.com/tidb-cloud-serverless-pricing-details)。 +如需了解不同资源(包括读、写、SQL CPU 和网络出口)的 RU 消耗、定价详情及限流信息,请参见 [TiDB Cloud Serverless Pricing Details](https://www.pingcap.com/tidb-cloud-serverless-pricing-details)。 ### 用户名前缀 -对于每个 TiDB Cloud Serverless 集群,TiDB Cloud 生成一个唯一的前缀以区分它与其他集群。 +对于每个 TiDB Cloud Serverless 集群,TiDB Cloud 会生成一个唯一的前缀,以便与其他集群区分。 -每当你使用或设置数据库用户名时,你必须在用户名中包含前缀。例如,假设你的集群前缀是 `3pTAoNNegb47Uc8`。 +每当你使用或设置数据库用户名时,必须在用户名中包含该前缀。例如,假设你的集群前缀为 `3pTAoNNegb47Uc8`。 -- 要连接到你的集群: +- 连接到你的集群: ```shell mysql -u '3pTAoNNegb47Uc8.root' -h -P 4000 -D test --ssl-mode=VERIFY_IDENTITY --ssl-ca= -p ``` - > **注意:** + > **Note:** > - > TiDB Cloud Serverless 需要 TLS 连接。要在你的系统上找到 CA 根路径,请参见[根证书默认路径](/tidb-cloud/secure-connections-to-serverless-clusters.md#root-certificate-default-path)。 + > TiDB Cloud Serverless 要求使用 TLS 连接。要查找你系统上的 CA 根证书路径,请参见 [Root certificate default path](/tidb-cloud/secure-connections-to-serverless-clusters.md#root-certificate-default-path)。 -- 要创建数据库用户: +- 创建数据库用户: ```sql CREATE USER '3pTAoNNegb47Uc8.jeffrey'; ``` -要获取集群的前缀,请执行以下步骤: +获取你的集群前缀,请按照以下步骤操作: -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面。 -2. 点击目标集群的名称进入其概览页面,然后点击右上角的**连接**。此时会显示一个连接对话框。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 +2. 点击目标集群名称进入其概览页面,然后点击右上角的 **Connect**。此时会弹出连接对话框。 3. 在对话框中,从连接字符串中获取前缀。 -### TiDB Cloud Serverless 特殊条款和条件 +### TiDB Cloud Serverless 特殊条款与条件 -某些 TiDB Cloud 功能在 TiDB Cloud Serverless 上部分支持或不支持。详细信息请参见 [TiDB Cloud Serverless 限制](/tidb-cloud/serverless-limitations.md)。 +部分 TiDB Cloud 功能在 TiDB Cloud Serverless 上仅部分支持或不支持。详情请参见 [TiDB Cloud Serverless Limitations](/tidb-cloud/serverless-limitations.md)。 ## TiDB Cloud Dedicated -TiDB Cloud Dedicated 适用于生产环境,具有跨可用区高可用性、水平扩展和 [HTAP](https://en.wikipedia.org/wiki/Hybrid_transactional/analytical_processing) 的优势。 +TiDB Cloud Dedicated 适用于生产环境,具备跨可用区高可用性、水平扩展和 [HTAP](https://en.wikipedia.org/wiki/Hybrid_transactional/analytical_processing) 等优势。 -对于 TiDB Cloud Dedicated 集群,你可以根据业务需求轻松自定义 TiDB、TiKV 和 TiFlash 的集群大小。对于每个 TiKV 节点和 TiFlash 节点,节点上的数据会在不同的可用区中复制和分布,以实现[高可用性](/tidb-cloud/high-availability-with-multi-az.md)。 +对于 TiDB Cloud Dedicated 集群,你可以根据业务需求自定义 TiDB、TiKV 和 TiFlash 的集群规模。对于每个 TiKV 节点和 TiFlash 节点,节点上的数据会在不同可用区进行复制和分布,以实现 [高可用性](/tidb-cloud/high-availability-with-multi-az.md)。 -要创建 TiDB Cloud Dedicated 集群,你需要[添加付款方式](/tidb-cloud/tidb-cloud-billing.md#payment-method)或[申请概念验证 (PoC) 试用](/tidb-cloud/tidb-cloud-poc.md)。 +要创建 TiDB Cloud Dedicated 集群,你需要 [添加支付方式](/tidb-cloud/tidb-cloud-billing.md#payment-method) 或 [申请 PoC(概念验证)试用](/tidb-cloud/tidb-cloud-poc.md)。 -> **注意:** +> **Note:** > -> 集群创建后,你无法减少节点存储。 +> 集群创建后,节点存储空间无法减少。 \ No newline at end of file diff --git a/tidb-cloud/serverless-audit-logging.md b/tidb-cloud/serverless-audit-logging.md index 3df88aecfbf68..67ff711f69d1c 100644 --- a/tidb-cloud/serverless-audit-logging.md +++ b/tidb-cloud/serverless-audit-logging.md @@ -1,29 +1,29 @@ --- -title: TiDB Cloud Serverless Database Audit Logging -summary: Learn about how to audit a TiDB Cloud Serverless cluster in TiDB Cloud. +title: TiDB Cloud Serverless 数据库审计日志 +summary: 了解如何在 TiDB Cloud 中对 TiDB Cloud Serverless 集群进行审计。 --- -# TiDB Cloud Serverless Database Audit Logging (Beta) +# TiDB Cloud Serverless 数据库审计日志(Beta) -TiDB Cloud Serverless provides you with a database audit logging feature to record a history of user access details (such as any SQL statements executed) in logs. +TiDB Cloud Serverless 为你提供了数据库审计日志功能,用于在日志中记录用户访问的详细历史(如执行的所有 SQL 语句)。 > **Note:** > -> Currently, the database audit logging feature is only available upon request. To request this feature, click **?** in the lower-right corner of the [TiDB Cloud console](https://tidbcloud.com) and click **Request Support**. Then, fill in "Apply for TiDB Cloud Serverless database audit logging" in the **Description** field and click **Submit**. +> 目前,数据库审计日志功能仅支持按需申请。若需申请此功能,请点击 [TiDB Cloud 控制台](https://tidbcloud.com) 右下角的 **?**,然后点击 **Request Support**。在 **Description** 字段填写 “Apply for TiDB Cloud Serverless database audit logging”,并点击 **Submit**。 -To assess the effectiveness of user access policies and other information security measures of your organization, it is a security best practice to conduct a periodic analysis of the database audit logs. +为了评估你所在组织的用户访问策略及其他信息安全措施的有效性,定期分析数据库审计日志是一项安全最佳实践。 -The audit logging feature is disabled by default. To audit a cluster, you need to enable audit logging for it. +审计日志功能默认处于关闭状态。若需对集群进行审计,你需要为其启用审计日志。 -## Enable audit logging +## 启用审计日志 -To enable audit logging for a TiDB Cloud Serverless cluster, use the [TiDB Cloud CLI](/tidb-cloud/ticloud-auditlog-config.md). +要为 TiDB Cloud Serverless 集群启用审计日志,请使用 [TiDB Cloud CLI](/tidb-cloud/ticloud-auditlog-config.md)。 ```shell ticloud serverless audit-log config -c --enabled ``` -To disable audit logging for a TiDB Cloud Serverless cluster, use the [TiDB Cloud CLI](/tidb-cloud/ticloud-auditlog-config.md). +要为 TiDB Cloud Serverless 集群禁用审计日志,请使用 [TiDB Cloud CLI](/tidb-cloud/ticloud-auditlog-config.md)。 ```shell ticloud serverless audit-log config -c --enabled=false @@ -31,200 +31,200 @@ ticloud serverless audit-log config -c --enabled=false > **Note:** > -> Only enabling audit logging will not generate audit logs. You need to configure filters to specify what events to log. For more information, see [Manage audit logging filter rules](#manage-audit-logging-filter-rules). +> 仅启用审计日志功能不会生成审计日志。你还需要配置过滤器以指定需要记录的事件。更多信息,参见 [管理审计日志过滤规则](#manage-audit-logging-filter-rules)。 -## Manage audit logging filter rules +## 管理审计日志过滤规则 -To filter the audit logging, you need to create a filter rule to specify which events to log. You can use the [TiDB Cloud CLI](/tidb-cloud/ticloud-auditlog-filter-create.md) to manage the filter rules. +要对审计日志进行过滤,你需要创建过滤规则以指定需要记录哪些事件。你可以使用 [TiDB Cloud CLI](/tidb-cloud/ticloud-auditlog-filter-create.md) 管理过滤规则。 -The filter rule contains the following fields: +过滤规则包含以下字段: -- `users`: A list of user names to filter audit events. You can use the wildcard `%` to match any user name. -- `filters`: A list of filter objects. Each filter object can contain the following fields: +- `users`:用于过滤审计事件的用户名列表。你可以使用通配符 `%` 匹配任意用户名。 +- `filters`:过滤对象的列表。每个过滤对象可以包含以下字段: - - `classes`: A list of event classes to filter audit events. For example, `["QUERY", "EXECUTE"]`. - - `tables`: A list of table filters. For more information, see [Table filters]. - - `statusCodes`: A list of status codes to filter audit events. `1` means success, `0` means failure. + - `classes`:用于过滤审计事件的事件类别列表。例如,`["QUERY", "EXECUTE"]`。 + - `tables`:表过滤器列表。更多信息,参见 [Table filters]。 + - `statusCodes`:用于过滤审计事件的状态码列表。`1` 表示成功,`0` 表示失败。 -Here is the summary of all event classes in database audit logging: +以下是数据库审计日志中所有事件类别的汇总: | Event Class | Description | Parent-class | |---------------|--------------------------------------------------------------------------------------------------|---------------| -| CONNECTION | Record all operations related to connections, such as handshaking, connections, disconnections, connection reset, and changing users | - | -| CONNECT | Record all operations of the handshaking in connections | CONNECTION | -| DISCONNECT | Record all operations of the disconnections | CONNECTION | -| CHANGE_USER | Record all operations of changing users | CONNECTION | -| QUERY | Record all operations of SQL statements, including all errors about querying and modifying data | - | -| TRANSACTION | Record all operations related to transactions, such as `BEGIN`, `COMMIT`, and `ROLLBACK` | QUERY | -| EXECUTE | Record all operations of the `EXECUTE` statements | QUERY | -| QUERY_DML | Record all operations of the DML statements, including `INSERT`, `REPLACE`, `UPDATE`, `DELETE`, and `LOAD DATA` | QUERY | -| INSERT | Record all operations of the `INSERT` statements | QUERY_DML | -| REPLACE | Record all operations of the `REPLACE` statements | QUERY_DML | -| UPDATE | Record all operations of the `UPDATE` statements | QUERY_DML | -| DELETE | Record all operations of the `DELETE` statements | QUERY_DML | -| LOAD DATA | Record all operations of the `LOAD DATA` statements | QUERY_DML | -| SELECT | Record all operations of the `SELECT` statements | QUERY | -| QUERY_DDL | Record all operations of the DDL statements | QUERY | -| AUDIT | Record all operations related to setting TiDB database auditing, including setting system variables and calling system functions | - | -| AUDIT_FUNC_CALL | Record all operations of calling system functions related to TiDB database auditing | AUDIT | - -### Create a filter rule - -To create a filter rule that captures all audit logs, run the following command: +| CONNECTION | 记录所有与连接相关的操作,如握手、连接、断开连接、连接重置和切换用户 | - | +| CONNECT | 记录所有连接握手操作 | CONNECTION | +| DISCONNECT | 记录所有断开连接的操作 | CONNECTION | +| CHANGE_USER | 记录所有切换用户的操作 | CONNECTION | +| QUERY | 记录所有 SQL 语句的操作,包括所有查询和数据修改的错误 | - | +| TRANSACTION | 记录所有与事务相关的操作,如 `BEGIN`、`COMMIT` 和 `ROLLBACK` | QUERY | +| EXECUTE | 记录所有 `EXECUTE` 语句的操作 | QUERY | +| QUERY_DML | 记录所有 DML 语句的操作,包括 `INSERT`、`REPLACE`、`UPDATE`、`DELETE` 和 `LOAD DATA` | QUERY | +| INSERT | 记录所有 `INSERT` 语句的操作 | QUERY_DML | +| REPLACE | 记录所有 `REPLACE` 语句的操作 | QUERY_DML | +| UPDATE | 记录所有 `UPDATE` 语句的操作 | QUERY_DML | +| DELETE | 记录所有 `DELETE` 语句的操作 | QUERY_DML | +| LOAD DATA | 记录所有 `LOAD DATA` 语句的操作 | QUERY_DML | +| SELECT | 记录所有 `SELECT` 语句的操作 | QUERY | +| QUERY_DDL | 记录所有 DDL 语句的操作 | QUERY | +| AUDIT | 记录所有与 TiDB 数据库审计设置相关的操作,包括设置系统变量和调用系统函数 | - | +| AUDIT_FUNC_CALL | 记录所有与 TiDB 数据库审计相关的系统函数调用操作 | AUDIT | + +### 创建过滤规则 + +要创建捕获所有审计日志的过滤规则,请运行以下命令: ```shell ticloud serverless audit-log filter create --cluster-id --name --rule '{"users":["%@%"],"filters":[{}]}' ``` -To create a filter rule that filters ALL EXECUTE events, run the following command: +要创建过滤所有 EXECUTE 事件的过滤规则,请运行以下命令: ```shell ticloud serverless audit-log filter create --cluster-id --name --rule '{"users":["%@%"],"filters":[{"classes":["EXECUTE"]]}' ``` -### Update a filter rule +### 更新过滤规则 -To disable a filter rule, run the following command: +要禁用某个过滤规则,请运行以下命令: ```shell ticloud serverless audit-log filter update --cluster-id --name --enabled=false ``` -To update a filter rule, run the following command: +要更新某个过滤规则,请运行以下命令: ```shell ticloud serverless audit-log filter update --cluster-id --name --rule '{"users":["%@%"],"filters":[{"classes":["QUERY"],"tables":["test.t"]}]}' ``` -Note that you need to pass the complete `--rule` field when updating. +注意,更新时需要传递完整的 `--rule` 字段。 -### Delete a filter rule +### 删除过滤规则 -To delete a filter rule, run the following command: +要删除某个过滤规则,请运行以下命令: ```shell ticloud serverless audit-log filter delete --cluster-id --name ``` -## Configure audit logging +## 配置审计日志 -### Data redaction +### 数据脱敏 -TiDB Cloud Serverless redacts sensitive data in the audit logs by default. Take the following SQL statement as an example: +TiDB Cloud Serverless 默认会对审计日志中的敏感数据进行脱敏。以下 SQL 语句为例: ```sql INSERT INTO `test`.`users` (`id`, `name`, `password`) VALUES (1, 'Alice', '123456'); ``` -It is redacted as follows: +脱敏后如下所示: ```sql INSERT INTO `test`.`users` (`id`, `name`, `password`) VALUES ( ... ); ``` -If you want to disable redaction, use the [TiDB Cloud CLI](/tidb-cloud/ticloud-auditlog-config.md). +如果你希望关闭脱敏功能,请使用 [TiDB Cloud CLI](/tidb-cloud/ticloud-auditlog-config.md)。 ```shell ticloud serverless audit-log config --cluster-id --unredacted ``` -### Log file rotation +### 日志文件轮转 -TiDB Cloud Serverless generates a new audit log file when either of the following conditions is met: +当满足以下任一条件时,TiDB Cloud Serverless 会生成新的审计日志文件: -- The size of the current log file reaches 100 MiB. -- One hour has passed since the previous log generation. Depending on the internal scheduling mechanism, log generation might be delayed by a few minutes. +- 当前日志文件大小达到 100 MiB。 +- 距离上一次日志生成已过去 1 小时。根据内部调度机制,日志生成可能会延迟几分钟。 > **Note:** > -> Currently, Log file rotation settings are not configurable. TiDB Cloud Serverless automatically rotates the audit log files based on the preceding conditions. +> 目前,日志文件轮转设置不可配置。TiDB Cloud Serverless 会根据上述条件自动轮转审计日志文件。 -## Access audit logging +## 访问审计日志 -TiDB Cloud Serverless audit logs are stored as readable text files named `YYYY-MM-DD-.log`. +TiDB Cloud Serverless 审计日志以可读文本文件的形式存储,文件名为 `YYYY-MM-DD-.log`。 -Currently, audit logs are stored within TiDB Cloud for 365 days. After this period, logs are automatically deleted. +目前,审计日志会在 TiDB Cloud 内部保存 365 天。超过此期限后,日志会被自动删除。 > **Note:** > -> Contact [TiDB Cloud Support](https://docs.pingcap.com/tidbcloud/tidb-cloud-support) if you need to save audit logs in external storage (such as AWS S3, Azure Blob Storage, and Google Cloud Storage). +> 如果你需要将审计日志保存到外部存储(如 AWS S3、Azure Blob Storage 和 Google Cloud Storage),请联系 [TiDB Cloud Support](https://docs.pingcap.com/tidbcloud/tidb-cloud-support)。 -To view and download audit logs, use the [TiDB Cloud CLI](/tidb-cloud/ticloud-auditlog-download.md): +要查看和下载审计日志,请使用 [TiDB Cloud CLI](/tidb-cloud/ticloud-auditlog-download.md): ```shell ticloud serverless audit-log download --cluster-id --output-path --start-date --end-date ``` -- `start-date`: The start date of the audit log you want to download in the format of `YYYY-MM-DD`, for example `2025-01-01`. -- `end-date`: The end date of the audit log you want to download in the format of `YYYY-MM-DD`, for example `2025-01-01`. +- `start-date`:你希望下载的审计日志的起始日期,格式为 `YYYY-MM-DD`,例如 `2025-01-01`。 +- `end-date`:你希望下载的审计日志的结束日期,格式为 `YYYY-MM-DD`,例如 `2025-01-01`。 > **Note:** > -> TiDB Cloud Serverless does not guarantee sequential ordering of audit logs. The log file named `YYYY-MM-DD-.log` might contain the audit logs in previous days. -> If you want to retrieve all logs from a specific date (for example, January 1, 2025), specifying `--start-date 2025-01-01` and `--end-date 2025-01-02` usually works. But under extreme conditions, you might need to download all log files and order them by the `TIME` field. +> TiDB Cloud Serverless 不保证审计日志的顺序性。名为 `YYYY-MM-DD-.log` 的日志文件可能包含前几天的审计日志。 +> 如果你希望获取某一天(如 2025 年 1 月 1 日)的所有日志,通常指定 `--start-date 2025-01-01` 和 `--end-date 2025-01-02` 即可。但在极端情况下,你可能需要下载所有日志文件并根据 `TIME` 字段进行排序。 -## Audit logging fields +## 审计日志字段 -For each database event record in audit logs, TiDB provides the following fields: +对于审计日志中的每条数据库事件记录,TiDB 提供了以下字段: -### General information +### 通用信息 -All classes of audit logs contain the following information: +所有类别的审计日志都包含以下信息: | Field | Description | |---------------|-----------------------------------------------------------------------------------------------| -| ID | The unique identifier that identifies the audit record of an operation | -| TIME | The timestamp of the audit record | -| EVENT | The event classes of the audit record. Multiple event types are separated by commas (`,`) | -| USER | The username of the audit record | -| ROLES | The roles of the user at the time of the operation | -| CONNECTION_ID | The identifier of the user's connection | -| TABLES | The accessed tables related to this audit record | -| STATUS_CODE | The status code of the audit record. `1` means success, and `0` means failure. | -| KEYSPACE_NAME | The keyspace name of the audit record. | -| SERVERLESS_TENANT_ID | The ID of the serverless tenant that the cluster belongs to. | -| SERVERLESS_TSERVERLESS_PROJECT_ID | The ID of the serverless project that the cluster belongs to. | -| SERVERLESS_CLUSTER_ID | The ID of the serverless cluster that the audit record belongs to. | -| REASON | The error message of the audit record. Only recorded when an error occurs during the operation. | - -### SQL statement information - -When the event class is `QUERY` or a subclass of `QUERY`, the audit logs contain the following information: +| ID | 标识某次操作审计记录的唯一标识符 | +| TIME | 审计记录的时间戳 | +| EVENT | 审计记录的事件类别。多个事件类型以逗号(`,`)分隔 | +| USER | 审计记录的用户名 | +| ROLES | 操作时用户的角色 | +| CONNECTION_ID | 用户连接的标识符 | +| TABLES | 与本次审计记录相关的访问表 | +| STATUS_CODE | 审计记录的状态码。`1` 表示成功,`0` 表示失败。 | +| KEYSPACE_NAME | 审计记录的 keyspace 名称。 | +| SERVERLESS_TENANT_ID | 集群所属的 serverless tenant ID。 | +| SERVERLESS_TSERVERLESS_PROJECT_ID | 集群所属的 serverless 项目 ID。 | +| SERVERLESS_CLUSTER_ID | 审计记录所属的 serverless 集群 ID。 | +| REASON | 审计记录的错误信息。仅在操作发生错误时记录。 | + +### SQL 语句信息 + +当事件类别为 `QUERY` 或其子类时,审计日志包含以下信息: | Field | Description | |----------------|---------------------------------------------------------------------------------------------------------------| -| CURRENT_DB | The name of the current database. | -| SQL_TEXT | The executed SQL statements. If audit log redaction is enabled, the redacted SQL statements are recorded. | -| EXECUTE_PARAMS | The parameters for the `EXECUTE` statements. Recorded only when the event classes include `EXECUTE` and redaction is disabled. | -| AFFECTED_ROWS | The number of affected rows of the SQL statements. Recorded only when the event classes include `QUERY_DML`. | +| CURRENT_DB | 当前数据库名称。 | +| SQL_TEXT | 执行的 SQL 语句。如果启用了审计日志脱敏,则记录脱敏后的 SQL 语句。 | +| EXECUTE_PARAMS | `EXECUTE` 语句的参数。仅当事件类别包含 `EXECUTE` 且未启用脱敏时记录。 | +| AFFECTED_ROWS | SQL 语句影响的行数。仅当事件类别包含 `QUERY_DML` 时记录。 | -### Connection information +### 连接信息 -When the event class is `CONNECTION` or a subclass of `CONNECTION`, the audit logs contain the following information: +当事件类别为 `CONNECTION` 或其子类时,审计日志包含以下信息: | Field | Description | |-----------------|-----------------------------------------------------------------------------------------------| -| CURRENT_DB | The name of the current database. When the event classes include DISCONNECT, this information is not recorded. | -| CONNECTION_TYPE | The type of connection, including Socket, UnixSocket, and SSL/TLS. | -| PID | The process ID of the current connection. | -| SERVER_VERSION | The current version of the connected TiDB server. | -| SSL_VERSION | The current version of SSL in use. | -| HOST_IP | The current IP address of the connected TiDB server. | -| HOST_PORT | The current port of the connected TiDB server. | -| CLIENT_IP | The current IP address of the client. | -| CLIENT_PORT | The current port of the client. | +| CURRENT_DB | 当前数据库名称。当事件类别包含 DISCONNECT 时不记录此信息。 | +| CONNECTION_TYPE | 连接类型,包括 Socket、UnixSocket 和 SSL/TLS。 | +| PID | 当前连接的进程 ID。 | +| SERVER_VERSION | 当前连接的 TiDB 服务器版本。 | +| SSL_VERSION | 当前使用的 SSL 版本。 | +| HOST_IP | 当前连接的 TiDB 服务器 IP 地址。 | +| HOST_PORT | 当前连接的 TiDB 服务器端口。 | +| CLIENT_IP | 客户端的 IP 地址。 | +| CLIENT_PORT | 客户端的端口。 | -### Audit operation information +### 审计操作信息 -When the event class is `AUDIT` or a subclass of `AUDIT`, the audit logs contain the following information: +当事件类别为 `AUDIT` 或其子类时,审计日志包含以下信息: | Field | Description | |----------------|---------------------------------------------------------------------------------------------------------------| -| AUDIT_OP_TARGET| The objects of the setting related to TiDB database auditing. | -| AUDIT_OP_ARGS | The arguments of the setting related to TiDB database auditing. | +| AUDIT_OP_TARGET| 与 TiDB 数据库审计设置相关的对象。 | +| AUDIT_OP_ARGS | 与 TiDB 数据库审计设置相关的参数。 | -## Audit logging limitations +## 审计日志限制 -- Audit logging is only available via TiDB Cloud CLI at present. -- Audit logs can only be stored in TiDB Cloud at present. -- TiDB Cloud Serverless does not guarantee the sequential order of audit logs, which means you might have to review all log files to view the latest events. To sort the logs chronologically, you can use the `TIME` field in the audit logs. +- 目前仅可通过 TiDB Cloud CLI 获取审计日志。 +- 目前审计日志只能存储在 TiDB Cloud 内部。 +- TiDB Cloud Serverless 不保证审计日志的顺序性,这意味着你可能需要查看所有日志文件以获取最新事件。若需按时间顺序排序日志,可以使用审计日志中的 `TIME` 字段。 \ No newline at end of file diff --git a/tidb-cloud/serverless-driver-drizzle-example.md b/tidb-cloud/serverless-driver-drizzle-example.md index 6545627e719ee..1c8dde6e8dcb3 100644 --- a/tidb-cloud/serverless-driver-drizzle-example.md +++ b/tidb-cloud/serverless-driver-drizzle-example.md @@ -1,24 +1,24 @@ --- -title: TiDB Cloud Serverless 驱动程序 Drizzle 教程 -summary: 了解如何将 TiDB Cloud serverless 驱动程序与 Drizzle 配合使用。 +title: TiDB Cloud Serverless Driver Drizzle 教程 +summary: 学习如何在 Drizzle 中使用 TiDB Cloud serverless driver。 --- -# TiDB Cloud Serverless 驱动程序 Drizzle 教程 +# TiDB Cloud Serverless Driver Drizzle 教程 -[Drizzle ORM](https://orm.drizzle.team/) 是一个轻量级且高性能的 TypeScript ORM,专注于开发者体验。从 `drizzle-orm@0.31.2` 开始,它支持 [drizzle-orm/tidb-serverless](https://orm.drizzle.team/docs/get-started-mysql#tidb-serverless),使你能够通过 HTTPS 使用 [TiDB Cloud serverless 驱动程序](/tidb-cloud/serverless-driver.md)。 +[Drizzle ORM](https://orm.drizzle.team/) 是一款轻量级且高性能的 TypeScript ORM,注重开发者体验。从 `drizzle-orm@0.31.2` 开始,Drizzle 支持 [drizzle-orm/tidb-serverless](https://orm.drizzle.team/docs/get-started-mysql#tidb-serverless),你可以通过 [TiDB Cloud serverless driver](/tidb-cloud/serverless-driver.md) 以 HTTPS 方式连接 Drizzle。 -本教程介绍如何在 Node.js 环境和边缘环境中将 TiDB Cloud serverless 驱动程序与 Drizzle 配合使用。 +本教程介绍如何在 Node.js 环境和边缘环境中,将 TiDB Cloud serverless driver 与 Drizzle 搭配使用。 -## 在 Node.js 环境中使用 Drizzle 和 TiDB Cloud serverless 驱动程序 +## 在 Node.js 环境中使用 Drizzle 和 TiDB Cloud serverless driver -本节介绍如何在 Node.js 环境中将 TiDB Cloud serverless 驱动程序与 Drizzle 配合使用。 +本节介绍如何在 Node.js 环境中,将 TiDB Cloud serverless driver 与 Drizzle 搭配使用。 -### 开始之前 +### 前置条件 -要完成本教程,你需要: +完成本教程,你需要准备以下内容: - [Node.js](https://nodejs.org/en) >= 18.0.0。 -- [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) 或你首选的包管理器。 +- [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) 或你喜欢的包管理器。 - 一个 TiDB Cloud Serverless 集群。如果你还没有,可以[创建一个 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md)。 ### 步骤 1. 创建项目 @@ -36,7 +36,7 @@ summary: 了解如何将 TiDB Cloud serverless 驱动程序与 Drizzle 配合使 npm install drizzle-orm @tidbcloud/serverless ``` -3. 在项目的根目录中找到 `package.json` 文件,然后通过添加 `"type": "module"` 来指定 ES 模块: +3. 在项目根目录下,找到 `package.json` 文件,并通过添加 `"type": "module"` 指定 ES module: ```json { @@ -48,7 +48,7 @@ summary: 了解如何将 TiDB Cloud serverless 驱动程序与 Drizzle 配合使 } ``` -4. 在项目的根目录中添加一个 `tsconfig.json` 文件来定义 TypeScript 编译器选项。以下是示例文件: +4. 在项目根目录下,添加 `tsconfig.json` 文件以定义 TypeScript 编译选项。以下是示例文件: ```json { @@ -67,23 +67,23 @@ summary: 了解如何将 TiDB Cloud serverless 驱动程序与 Drizzle 配合使 } ``` -### 步骤 2. 设置环境 +### 步骤 2. 配置环境 -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标 TiDB Cloud Serverless 集群的名称进入其概览页面。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标 TiDB Cloud Serverless 集群名称,进入集群概览页。 -2. 在概览页面上,点击右上角的**连接**,在**连接方式**下拉列表中选择 `Serverless Driver`,然后点击**生成密码**创建一个随机密码。 +2. 在概览页右上角点击 **Connect**,在 **Connect With** 下拉列表中选择 `Serverless Driver`,然后点击 **Generate Password** 生成随机密码。 - > **提示:** + > **Tip:** > - > 如果你之前已经创建了密码,你可以使用原始密码,也可以点击**重置密码**生成一个新密码。 + > 如果你之前已经创建过密码,可以继续使用原密码,或者点击 **Reset Password** 生成新密码。 - 连接字符串的格式如下: + 连接字符串格式如下: ``` mysql://[username]:[password]@[host]/[database] ``` -3. 在本地环境中设置环境变量 `DATABASE_URL`。例如,在 Linux 或 macOS 中,你可以运行以下命令: +3. 在本地环境中设置环境变量 `DATABASE_URL`。例如,在 Linux 或 macOS 下,可以运行以下命令: ```shell export DATABASE_URL='mysql://[username]:[password]@[host]/[database]' @@ -91,9 +91,9 @@ summary: 了解如何将 TiDB Cloud serverless 驱动程序与 Drizzle 配合使 ### 步骤 3. 使用 Drizzle 查询数据 -1. 在你的 TiDB Cloud Serverless 集群中创建一个表。 +1. 在你的 TiDB Cloud Serverless 集群中创建一张表。 - 你可以使用 [TiDB Cloud 控制台中的 SQL 编辑器](/tidb-cloud/explore-data-with-chat2query.md)执行 SQL 语句。以下是示例: + 你可以使用 [TiDB Cloud 控制台的 SQL Editor](/tidb-cloud/explore-data-with-chat2query.md) 执行 SQL 语句。以下为示例: ```sql CREATE TABLE `test`.`users` ( @@ -103,58 +103,58 @@ summary: 了解如何将 TiDB Cloud serverless 驱动程序与 Drizzle 配合使 ); ``` -2. 在项目的根目录中创建一个名为 `hello-world.ts` 的文件,并添加以下代码: +2. 在项目根目录下,创建名为 `hello-world.ts` 的文件,并添加以下代码: ```ts import { connect } from '@tidbcloud/serverless'; import { drizzle } from 'drizzle-orm/tidb-serverless'; import { mysqlTable, serial, text, varchar } from 'drizzle-orm/mysql-core'; - // 初始化 + // Initialize const client = connect({ url: process.env.DATABASE_URL }); const db = drizzle(client); - // 定义模式 + // Define schema export const users = mysqlTable('users', { id: serial("id").primaryKey(), fullName: text('full_name'), phone: varchar('phone', { length: 256 }), }); - export type User = typeof users.$inferSelect; // 查询时的返回类型 - export type NewUser = typeof users.$inferInsert; // 插入类型 + export type User = typeof users.$inferSelect; // return type when queried + export type NewUser = typeof users.$inferInsert; // insert type - // 插入和选择数据 + // Insert and select data const user: NewUser = { fullName: 'John Doe', phone: '123-456-7890' }; await db.insert(users).values(user) const result: User[] = await db.select().from(users); console.log(result); ``` -### 步骤 4. 运行 TypeScript 代码 +### 步骤 4. 运行 Typescript 代码 -1. 安装 `ts-node` 将 TypeScript 转换为 JavaScript,然后安装 `@types/node` 为 Node.js 提供 TypeScript 类型定义。 +1. 安装 `ts-node` 用于将 TypeScript 转换为 JavaScript,并安装 `@types/node` 以为 Node.js 提供 TypeScript 类型定义。 ```shell npm install -g ts-node npm i --save-dev @types/node ``` -2. 使用以下命令运行 TypeScript 代码: +2. 使用以下命令运行 Typescript 代码: ```shell ts-node --esm hello-world.ts ``` -## 在边缘环境中使用 Drizzle 和 TiDB Cloud serverless 驱动程序 +## 在边缘环境中使用 Drizzle 和 TiDB Cloud serverless driver -本节以 Vercel Edge Function 为例。 +本节以 Vercel Edge Function 为例进行说明。 -### 开始之前 +### 前置条件 -要完成本教程,你需要: +完成本教程,你需要准备以下内容: -- 一个提供边缘环境的 [Vercel](https://vercel.com/docs) 账户。 -- [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) 或你首选的包管理器。 +- 一个支持边缘环境的 [Vercel](https://vercel.com/docs) 账号。 +- [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) 或你喜欢的包管理器。 - 一个 TiDB Cloud Serverless 集群。如果你还没有,可以[创建一个 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md)。 ### 步骤 1. 创建项目 @@ -165,13 +165,13 @@ summary: 了解如何将 TiDB Cloud serverless 驱动程序与 Drizzle 配合使 npm i -g vercel@latest ``` -2. 使用以下终端命令创建一个名为 `drizzle-example` 的 [Next.js](https://nextjs.org/) 项目: +2. 使用以下命令创建一个名为 `drizzle-example` 的 [Next.js](https://nextjs.org/) 项目: ```shell npx create-next-app@latest drizzle-example --ts --no-eslint --tailwind --no-src-dir --app --import-alias "@/*" ``` -3. 导航到 `drizzle-example` 目录: +3. 进入 `drizzle-example` 目录: ```shell cd drizzle-example @@ -183,17 +183,17 @@ summary: 了解如何将 TiDB Cloud serverless 驱动程序与 Drizzle 配合使 npm install drizzle-orm @tidbcloud/serverless --force ``` -### 步骤 2. 设置环境 +### 步骤 2. 配置环境 -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标 TiDB Cloud Serverless 集群的名称进入其概览页面。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标 TiDB Cloud Serverless 集群名称,进入集群概览页。 -2. 在概览页面上,点击右上角的**连接**,在**连接方式**下拉列表中选择 `Serverless Driver`,然后点击**生成密码**创建一个随机密码。 +2. 在概览页右上角点击 **Connect**,在 **Connect With** 下拉列表中选择 `Serverless Driver`,然后点击 **Generate Password** 生成随机密码。 - > **提示:** + > **Tip:** > - > 如果你之前已经创建了密码,你可以使用原始密码,也可以点击**重置密码**生成一个新密码。 + > 如果你之前已经创建过密码,可以继续使用原密码,或者点击 **Reset Password** 生成新密码。 - 连接字符串的格式如下: + 连接字符串格式如下: ``` mysql://[username]:[password]@[host]/[database] @@ -201,9 +201,9 @@ summary: 了解如何将 TiDB Cloud serverless 驱动程序与 Drizzle 配合使 ### 步骤 3. 创建边缘函数 -1. 在你的 TiDB Cloud Serverless 集群中创建一个表。 +1. 在你的 TiDB Cloud Serverless 集群中创建一张表。 - 你可以使用 [TiDB Cloud 控制台中的 SQL 编辑器](/tidb-cloud/explore-data-with-chat2query.md)执行 SQL 语句。以下是示例: + 你可以使用 [TiDB Cloud 控制台的 SQL Editor](/tidb-cloud/explore-data-with-chat2query.md) 执行 SQL 语句。以下为示例: ```sql CREATE TABLE `test`.`users` ( @@ -213,7 +213,7 @@ summary: 了解如何将 TiDB Cloud serverless 驱动程序与 Drizzle 配合使 ); ``` -2. 在项目的 `app` 目录中创建一个文件 `/api/edge-function-example/route.ts`,并添加以下代码: +2. 在项目的 `app` 目录下,创建文件 `/api/edge-function-example/route.ts`,并添加以下代码: ```ts import { NextResponse } from 'next/server'; @@ -223,21 +223,21 @@ summary: 了解如何将 TiDB Cloud serverless 驱动程序与 Drizzle 配合使 import { mysqlTable, serial, text, varchar } from 'drizzle-orm/mysql-core'; export const runtime = 'edge'; - // 初始化 + // Initialize const client = connect({ url: process.env.DATABASE_URL }); const db = drizzle(client); - // 定义模式 + // Define schema export const users = mysqlTable('users', { id: serial("id").primaryKey(), fullName: text('full_name'), phone: varchar('phone', { length: 256 }), }); - export type User = typeof users.$inferSelect; // 查询时的返回类型 - export type NewUser = typeof users.$inferInsert; // 插入类型 + export type User = typeof users.$inferSelect; // return type when queried + export type NewUser = typeof users.$inferInsert; // insert type export async function GET(request: NextRequest) { - // 插入和选择数据 + // Insert and select data const user: NewUser = { fullName: 'John Doe', phone: '123-456-7890' }; await db.insert(users).values(user) const result: User[] = await db.select().from(users); @@ -245,16 +245,16 @@ summary: 了解如何将 TiDB Cloud serverless 驱动程序与 Drizzle 配合使 } ``` -3. 在本地测试你的代码: +3. 本地测试你的代码: ```shell export DATABASE_URL='mysql://[username]:[password]@[host]/[database]' next dev ``` -4. 导航到 `http://localhost:3000/api/edge-function-example` 以获取路由的响应。 +4. 访问 `http://localhost:3000/api/edge-function-example`,获取路由返回的响应。 -### 步骤 4. 将代码部署到 Vercel +### 步骤 4. 部署代码到 Vercel 1. 使用 `DATABASE_URL` 环境变量将代码部署到 Vercel: @@ -262,11 +262,11 @@ summary: 了解如何将 TiDB Cloud serverless 驱动程序与 Drizzle 配合使 vercel -e DATABASE_URL='mysql://[username]:[password]@[host]/[database]' --prod ``` - 部署完成后,你将获得项目的 URL。 + 部署完成后,你会获得项目的 URL。 -2. 导航到 `${Your-URL}/api/edge-function-example` 页面以获取路由的响应。 +2. 访问 `${Your-URL}/api/edge-function-example` 页面,获取路由返回的响应。 -## 下一步 +## 后续操作 - 了解更多关于 [Drizzle](https://orm.drizzle.team/docs/overview) 和 [drizzle-orm/tidb-serverless](https://orm.drizzle.team/docs/get-started-mysql#tidb-serverless) 的信息。 -- 了解如何[将 TiDB Cloud 与 Vercel 集成](/tidb-cloud/integrate-tidbcloud-with-vercel.md)。 +- 学习如何 [集成 TiDB Cloud 与 Vercel](/tidb-cloud/integrate-tidbcloud-with-vercel.md)。 \ No newline at end of file diff --git a/tidb-cloud/serverless-driver-kysely-example.md b/tidb-cloud/serverless-driver-kysely-example.md index 3f3ecc6e63b52..bb05f71169f74 100644 --- a/tidb-cloud/serverless-driver-kysely-example.md +++ b/tidb-cloud/serverless-driver-kysely-example.md @@ -1,27 +1,27 @@ --- -title: TiDB Cloud Serverless 驱动程序 Kysely 教程 -summary: 学习如何使用 TiDB Cloud serverless 驱动程序与 Kysely。 +title: TiDB Cloud Serverless Driver Kysely 教程 +summary: 学习如何在 Kysely 中使用 TiDB Cloud serverless driver。 --- -# TiDB Cloud Serverless 驱动程序 Kysely 教程 +# TiDB Cloud Serverless Driver Kysely 教程 -[Kysely](https://kysely.dev/docs/intro) 是一个类型安全且支持自动补全的 TypeScript SQL 查询构建器。TiDB Cloud 提供了 [@tidbcloud/kysely](https://github.com/tidbcloud/kysely),使你能够通过 HTTPS 使用 [TiDB Cloud serverless 驱动程序](/tidb-cloud/serverless-driver.md) 来使用 Kysely。与传统的 TCP 方式相比,[@tidbcloud/kysely](https://github.com/tidbcloud/kysely) 带来以下优势: +[Kysely](https://kysely.dev/docs/intro) 是一个类型安全且支持自动补全的 TypeScript SQL 查询构建器。TiDB Cloud 提供了 [@tidbcloud/kysely](https://github.com/tidbcloud/kysely),使你能够通过 [TiDB Cloud serverless driver](/tidb-cloud/serverless-driver.md) 在 HTTPS 上使用 Kysely。与传统的 TCP 方式相比,[ @tidbcloud/kysely ](https://github.com/tidbcloud/kysely) 带来了以下优势: -- 在 serverless 环境中具有更好的性能。 -- 能够在边缘环境中使用 Kysely。 +- 在 serverless 环境下拥有更好的性能。 +- 能够在 edge 环境中使用 Kysely。 -本教程介绍如何在 Node.js 环境和边缘环境中使用 TiDB Cloud serverless 驱动程序与 Kysely。 +本教程介绍了如何在 Node.js 环境和 edge 环境中,将 TiDB Cloud serverless driver 与 Kysely 结合使用。 -## 在 Node.js 环境中使用 TiDB Cloud Kysely dialect +## 在 Node.js 环境中使用 TiDB Cloud Kysely 方言 -本节介绍如何在 Node.js 环境中使用 TiDB Cloud serverless 驱动程序与 Kysely。 +本节介绍如何在 Node.js 环境中,将 TiDB Cloud serverless driver 与 Kysely 结合使用。 -### 开始之前 +### 前置条件 -完成本教程需要以下准备: +完成本教程,你需要: - [Node.js](https://nodejs.org/en) >= 18.0.0。 -- [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) 或你偏好的包管理器。 +- [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) 或你喜欢的包管理器。 - 一个 TiDB Cloud Serverless 集群。如果你还没有,可以[创建一个 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md)。 ### 步骤 1. 创建项目 @@ -39,7 +39,7 @@ summary: 学习如何使用 TiDB Cloud serverless 驱动程序与 Kysely。 npm install kysely @tidbcloud/kysely @tidbcloud/serverless ``` -3. 在项目根目录中找到 `package.json` 文件,然后通过添加 `"type": "module"` 来指定 ES 模块: +3. 在项目根目录下,找到 `package.json` 文件,并通过添加 `"type": "module"` 指定 ES module: ```json { @@ -52,7 +52,7 @@ summary: 学习如何使用 TiDB Cloud serverless 驱动程序与 Kysely。 } ``` -4. 在项目根目录中添加 `tsconfig.json` 文件来定义 TypeScript 编译器选项。以下是示例文件: +4. 在项目根目录下,添加 `tsconfig.json` 文件以定义 TypeScript 编译选项。以下是示例文件: ```json { @@ -73,13 +73,13 @@ summary: 学习如何使用 TiDB Cloud serverless 驱动程序与 Kysely。 ### 步骤 2. 设置环境 -1. 在 TiDB Cloud Serverless 集群的概览页面,点击右上角的 **Connect**,然后从显示的对话框中获取数据库的连接字符串。连接字符串格式如下: +1. 在 TiDB Cloud Serverless 集群的 overview 页面,点击右上角的 **Connect**,然后在弹出的对话框中获取你的数据库连接字符串。连接字符串格式如下: ``` mysql://[username]:[password]@[host]/[database] ``` -2. 在本地环境中设置环境变量 `DATABASE_URL`。例如,在 Linux 或 macOS 中,可以运行以下命令: +2. 在本地环境中设置环境变量 `DATABASE_URL`。例如,在 Linux 或 macOS 下,可以运行以下命令: ```bash export DATABASE_URL='mysql://[username]:[password]@[host]/[database]' @@ -87,9 +87,9 @@ summary: 学习如何使用 TiDB Cloud serverless 驱动程序与 Kysely。 ### 步骤 3. 使用 Kysely 查询数据 -1. 在 TiDB Cloud Serverless 集群中创建一个表并插入一些数据。 +1. 在你的 TiDB Cloud Serverless 集群中创建一张表并插入一些数据。 - 你可以使用 [TiDB Cloud 控制台中的 SQL 编辑器](/tidb-cloud/explore-data-with-chat2query.md)来执行 SQL 语句。以下是示例: + 你可以使用 [TiDB Cloud 控制台中的 SQL Editor](/tidb-cloud/explore-data-with-chat2query.md) 执行 SQL 语句。以下为示例: ```sql CREATE TABLE `test`.`person` ( @@ -102,7 +102,7 @@ summary: 学习如何使用 TiDB Cloud serverless 驱动程序与 Kysely。 insert into test.person values (1,'pingcap','male') ``` -2. 在项目根目录中创建一个名为 `hello-world.ts` 的文件,并添加以下代码: +2. 在项目根目录下,创建名为 `hello-world.ts` 的文件,并添加以下代码: ```ts import { Kysely,GeneratedAlways,Selectable } from 'kysely' @@ -141,31 +141,31 @@ summary: 学习如何使用 TiDB Cloud serverless 驱动程序与 Kysely。 console.log(await findPeople()) ``` -### 步骤 4. 运行 TypeScript 代码 +### 步骤 4. 运行 Typescript 代码 -1. 安装 `ts-node` 来将 TypeScript 转换为 JavaScript,然后安装 `@types/node` 来提供 Node.js 的 TypeScript 类型定义。 +1. 安装 `ts-node` 用于将 TypeScript 转换为 JavaScript,并安装 `@types/node` 以为 Node.js 提供 TypeScript 类型定义。 ``` npm install -g ts-node npm i --save-dev @types/node ``` -2. 使用以下命令运行 TypeScript 代码: +2. 使用以下命令运行 Typescript 代码: ``` ts-node --esm hello-world.ts ``` -## 在边缘环境中使用 TiDB Cloud Kysely dialect +## 在 edge 环境中使用 TiDB Cloud Kysely 方言 -本节以在 Vercel Edge Function 中使用 TiDB Cloud Kysely dialect 为例。 +本节以 Vercel Edge Function 中的 TiDB Cloud Kysely 方言为例进行说明。 -### 开始之前 +### 前置条件 -完成本教程需要以下准备: +完成本教程,你需要: -- 一个提供边缘环境的 [Vercel](https://vercel.com/docs) 账户。 -- [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) 或你偏好的包管理器。 +- 一个提供 edge 环境的 [Vercel](https://vercel.com/docs) 账号。 +- [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) 或你喜欢的包管理器。 - 一个 TiDB Cloud Serverless 集群。如果你还没有,可以[创建一个 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md)。 ### 步骤 1. 创建项目 @@ -191,17 +191,17 @@ summary: 学习如何使用 TiDB Cloud serverless 驱动程序与 Kysely。 ### 步骤 2. 设置环境 -在 TiDB Cloud Serverless 集群的概览页面,点击右上角的 **Connect**,然后从显示的对话框中获取数据库的连接字符串。连接字符串格式如下: +在 TiDB Cloud Serverless 集群的 overview 页面,点击右上角的 **Connect**,然后在弹出的对话框中获取你的数据库连接字符串。连接字符串格式如下: ``` mysql://[username]:[password]@[host]/[database] ``` -### 步骤 3. 创建边缘函数 +### 步骤 3. 创建 edge function -1. 在 TiDB Cloud Serverless 集群中创建一个表并插入一些数据。 +1. 在你的 TiDB Cloud Serverless 集群中创建一张表并插入一些数据。 - 你可以使用 [TiDB Cloud 控制台中的 SQL 编辑器](/tidb-cloud/explore-data-with-chat2query.md)来执行 SQL 语句。以下是示例: + 你可以使用 [TiDB Cloud 控制台中的 SQL Editor](/tidb-cloud/explore-data-with-chat2query.md) 执行 SQL 语句。以下为示例: ```sql CREATE TABLE `test`.`person` ( @@ -214,7 +214,7 @@ mysql://[username]:[password]@[host]/[database] insert into test.person values (1,'pingcap','male') ``` -2. 在项目的 `app` 目录中创建一个文件 `/api/edge-function-example/route.ts`,并添加以下代码: +2. 在项目的 `app` 目录下,创建文件 `/api/edge-function-example/route.ts`,并添加以下代码: ```ts import { NextResponse } from 'next/server'; @@ -270,18 +270,18 @@ mysql://[username]:[password]@[host]/[database] } ``` - 上述代码接受一个查询参数 `query` 并返回查询结果。如果未提供查询参数,则返回 `person` 表中的所有记录。 + 上述代码接收一个查询参数 `query` 并返回查询结果。如果未提供该参数,则返回 `person` 表中的所有记录。 -3. 在本地测试你的代码: +3. 本地测试你的代码: ``` export DATABASE_URL='mysql://[username]:[password]@[host]/[database]' next dev ``` -4. 导航到 `http://localhost:3000/api/edge-function-example` 以获取路由的响应。 +4. 访问 `http://localhost:3000/api/edge-function-example`,即可获取该路由的响应。 -### 步骤 4. 将代码部署到 Vercel +### 步骤 4. 部署代码到 Vercel 1. 使用 `DATABASE_URL` 环境变量将代码部署到 Vercel: @@ -291,9 +291,9 @@ mysql://[username]:[password]@[host]/[database] 部署完成后,你将获得项目的 URL。 -2. 导航到 `${Your-URL}/api/edge-function-example` 页面以获取路由的响应。 +2. 访问 `${Your-URL}/api/edge-function-example` 页面,即可获取该路由的响应。 -## 下一步 +## 后续操作 - 了解更多关于 [Kysely](https://kysely.dev/docs/intro) 和 [@tidbcloud/kysely](https://github.com/tidbcloud/kysely) 的信息 -- 了解如何[将 TiDB Cloud 与 Vercel 集成](/tidb-cloud/integrate-tidbcloud-with-vercel.md) +- 学习如何 [将 TiDB Cloud 集成到 Vercel](/tidb-cloud/integrate-tidbcloud-with-vercel.md) diff --git a/tidb-cloud/serverless-driver-node-example.md b/tidb-cloud/serverless-driver-node-example.md index 1ef22852e73e5..157a96e2b6829 100644 --- a/tidb-cloud/serverless-driver-node-example.md +++ b/tidb-cloud/serverless-driver-node-example.md @@ -1,23 +1,23 @@ --- -title: TiDB Cloud Serverless 驱动程序 Node.js 教程 -summary: 学习如何在本地 Node.js 项目中使用 TiDB Cloud serverless 驱动程序。 +title: TiDB Cloud Serverless Driver Node.js 教程 +summary: 学习如何在本地 Node.js 项目中使用 TiDB Cloud serverless driver。 --- -# TiDB Cloud Serverless 驱动程序 Node.js 教程 +# TiDB Cloud Serverless Driver Node.js 教程 -本教程介绍如何在本地 Node.js 项目中使用 TiDB Cloud serverless 驱动程序。 +本教程介绍如何在本地 Node.js 项目中使用 TiDB Cloud serverless driver。 -> **注意:** +> **Note:** > > - 本教程仅适用于 TiDB Cloud Serverless 集群。 -> - 要了解如何在 Cloudflare Workers、Vercel Edge Functions 和 Netlify Edge Functions 中使用 TiDB Cloud serverless 驱动程序,请查看我们的[汽车销售分析](https://car-sales-insight.vercel.app/)和[示例代码库](https://github.com/tidbcloud/car-sales-insight)。 +> - 如果你想了解如何在 Cloudflare Workers、Vercel Edge Functions 和 Netlify Edge Functions 中使用 TiDB Cloud serverless driver,请参考我们的 [Insights into Automotive Sales](https://car-sales-insight.vercel.app/) 和 [示例仓库](https://github.com/tidbcloud/car-sales-insight)。 ## 开始之前 -要完成本分步教程,你需要: +要完成本分步教程,你需要准备以下内容: -- [Node.js](https://nodejs.org/en) >= 18.0.0 -- [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) 或你偏好的包管理器 +- [Node.js](https://nodejs.org/en) >= 18.0.0。 +- [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) 或你喜欢的包管理器。 - 一个 TiDB Cloud Serverless 集群。如果你还没有,可以[创建一个 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md)。 ## 步骤 1. 创建本地 Node.js 项目 @@ -29,25 +29,25 @@ summary: 学习如何在本地 Node.js 项目中使用 TiDB Cloud serverless 驱 cd node-example ``` -2. 使用 npm 或你偏好的包管理器安装 TiDB Cloud serverless 驱动程序。 +2. 使用 npm 或你喜欢的包管理器安装 TiDB Cloud serverless driver。 - 以下命令以 npm 安装为例。执行此命令将在你的项目目录中创建一个 `node_modules` 目录和一个 `package.json` 文件。 + 以下命令以 npm 安装为例。执行该命令后,会在你的项目目录下创建 `node_modules` 目录和 `package.json` 文件。 ``` npm install @tidbcloud/serverless ``` -## 步骤 2. 使用 serverless 驱动程序 +## 步骤 2. 使用 serverless driver -serverless 驱动程序同时支持 CommonJS 和 ES 模块。以下步骤以使用 ES 模块为例。 +serverless driver 同时支持 CommonJS 和 ES modules。以下步骤以 ES module 的用法为例。 -1. 在 TiDB Cloud Serverless 集群的概览页面上,点击右上角的**连接**,然后从显示的对话框中获取数据库的连接字符串。连接字符串格式如下: +1. 在你的 TiDB Cloud Serverless 集群的概览页面,点击右上角的 **Connect**,然后在弹出的对话框中获取你的数据库连接字符串。连接字符串格式如下: ``` - mysql://[username]:[password]@[host]/[database] + mysql://[username]:[password]@[host]/[database] ``` - -2. 在 `package.json` 文件中,通过添加 `type: "module"` 来指定 ES 模块。 + +2. 在 `package.json` 文件中,通过添加 `type: "module"` 来指定 ES module。 例如: @@ -60,12 +60,12 @@ serverless 驱动程序同时支持 CommonJS 和 ES 模块。以下步骤以使 } ``` -3. 在项目目录中创建一个名为 `index.js` 的文件,并添加以下代码: +3. 在你的项目目录下创建一个名为 `index.js` 的文件,并添加以下代码: ```js import { connect } from '@tidbcloud/serverless' - const conn = connect({url: 'mysql://[username]:[password]@[host]/[database]'}) // 替换为你的 TiDB Cloud Serverless 集群信息 + const conn = connect({url: 'mysql://[username]:[password]@[host]/[database]'}) // replace with your TiDB Cloud Serverless cluster information console.log(await conn.execute("show tables")) ``` @@ -77,13 +77,13 @@ serverless 驱动程序同时支持 CommonJS 和 ES 模块。以下步骤以使 ## 与早期版本 Node.js 的兼容性 -如果你使用的是 18.0.0 之前的 Node.js 版本(没有全局 `fetch` 函数),可以按照以下步骤获取 `fetch`: +如果你使用的 Node.js 版本低于 18.0.0,不包含全局 `fetch` 函数,可以通过以下步骤获取 `fetch`: -1. 安装提供 `fetch` 的包,例如 `undici`: +1. 安装一个提供 `fetch` 的包,例如 `undici`: ``` npm install undici - ``` + ``` 2. 将 `fetch` 函数传递给 `connect` 函数: @@ -92,4 +92,4 @@ serverless 驱动程序同时支持 CommonJS 和 ES 模块。以下步骤以使 import { fetch } from 'undici' const conn = connect({url: 'mysql://[username]:[password]@[host]/[database]',fetch}) - ``` + ``` \ No newline at end of file diff --git a/tidb-cloud/serverless-driver-prisma-example.md b/tidb-cloud/serverless-driver-prisma-example.md index a792a6089874f..4df5b29b279a1 100644 --- a/tidb-cloud/serverless-driver-prisma-example.md +++ b/tidb-cloud/serverless-driver-prisma-example.md @@ -1,20 +1,20 @@ --- -title: TiDB Cloud Serverless 驱动程序 Prisma 教程 -summary: 学习如何将 TiDB Cloud serverless 驱动程序与 Prisma ORM 一起使用。 +title: TiDB Cloud Serverless Driver Prisma 教程 +summary: 学习如何将 TiDB Cloud serverless driver 与 Prisma ORM 一起使用。 --- -# TiDB Cloud Serverless 驱动程序 Prisma 教程 +# TiDB Cloud Serverless Driver Prisma 教程 -[Prisma](https://www.prisma.io/docs) 是一个开源的下一代 ORM(对象关系映射),帮助开发者以直观、高效和安全的方式与数据库交互。TiDB Cloud 提供了 [@tidbcloud/prisma-adapter](https://github.com/tidbcloud/prisma-adapter),使你能够通过 HTTPS 使用 [TiDB Cloud serverless 驱动程序](/tidb-cloud/serverless-driver.md)来使用 [Prisma Client](https://www.prisma.io/docs/concepts/components/prisma-client)。与传统的 TCP 方式相比,[@tidbcloud/prisma-adapter](https://github.com/tidbcloud/prisma-adapter) 带来以下好处: +[Prisma](https://www.prisma.io/docs) 是一个开源的下一代 ORM(对象关系映射),可以帮助开发者以直观、高效且安全的方式与数据库交互。TiDB Cloud 提供了 [@tidbcloud/prisma-adapter](https://github.com/tidbcloud/prisma-adapter),使你能够通过 HTTPS 使用 [Prisma Client](https://www.prisma.io/docs/concepts/components/prisma-client) 连接 [TiDB Cloud serverless driver](/tidb-cloud/serverless-driver.md)。与传统的 TCP 方式相比,[@tidbcloud/prisma-adapter](https://github.com/tidbcloud/prisma-adapter) 带来了以下优势: -- 在 serverless 环境中提供更好的 Prisma Client 性能 -- 能够在边缘环境中使用 Prisma Client +- 在 serverless 环境下提升 Prisma Client 的性能 +- 支持在 edge 环境下使用 Prisma Client -本教程介绍如何在 serverless 环境和边缘环境中使用 [@tidbcloud/prisma-adapter](https://github.com/tidbcloud/prisma-adapter)。 +本教程介绍如何在 serverless 环境和 edge 环境中使用 [@tidbcloud/prisma-adapter](https://github.com/tidbcloud/prisma-adapter)。 ## 安装 -你需要同时安装 [@tidbcloud/prisma-adapter](https://github.com/tidbcloud/prisma-adapter) 和 [TiDB Cloud serverless 驱动程序](/tidb-cloud/serverless-driver.md)。你可以使用 [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) 或你喜欢的包管理器进行安装。 +你需要安装 [@tidbcloud/prisma-adapter](https://github.com/tidbcloud/prisma-adapter) 和 [TiDB Cloud serverless driver](/tidb-cloud/serverless-driver.md)。你可以使用 [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) 或你喜欢的包管理器进行安装。 以 npm 为例,你可以运行以下命令进行安装: @@ -25,7 +25,7 @@ npm install @tidbcloud/serverless ## 启用 `driverAdapters` -要使用 Prisma 适配器,你需要在 `schema.prisma` 文件中启用 `driverAdapters` 功能。例如: +要使用 Prisma adapter,你需要在 `schema.prisma` 文件中启用 `driverAdapters` 特性。例如: ```prisma generator client { @@ -41,9 +41,9 @@ datasource db { ## 初始化 Prisma Client -在使用 Prisma Client 之前,你需要使用 `@tidbcloud/prisma-adapter` 对其进行初始化。 +在使用 Prisma Client 之前,你需要用 `@tidbcloud/prisma-adapter` 进行初始化。 -对于早于 v6.6.0 的 `@tidbcloud/prisma-adapter`: +对于 v6.6.0 之前的 `@tidbcloud/prisma-adapter`: ```js import { connect } from '@tidbcloud/serverless'; @@ -67,21 +67,21 @@ const adapter = new PrismaTiDBCloud({ url: ${DATABASE_URL} }); const prisma = new PrismaClient({ adapter }); ``` -然后,来自 Prisma Client 的查询将被发送到 TiDB Cloud serverless 驱动程序进行处理。 +之后,Prisma Client 的查询将通过 TiDB Cloud serverless driver 进行处理。 -## 在 Node.js 环境中使用 Prisma 适配器 +## 在 Node.js 环境中使用 Prisma adapter -本节提供了在 Node.js 环境中使用 `@tidbcloud/prisma-adapter` 的示例。 +本节提供了在 Node.js 环境下使用 `@tidbcloud/prisma-adapter` 的示例。 -### 开始之前 +### 前置条件 -要完成本教程,你需要以下内容: +完成本教程,你需要准备以下内容: -- [Node.js](https://nodejs.org/en) >= 18.0.0。 -- [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) 或你喜欢的包管理器。 -- 一个 TiDB Cloud Serverless 集群。如果你没有,可以[创建一个 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md)。 +- [Node.js](https://nodejs.org/en) >= 18.0.0 +- [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) 或你喜欢的包管理器 +- 一个 TiDB Cloud Serverless 集群。如果你还没有,可以[创建一个 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md) -### 第 1 步:创建项目 +### 步骤 1. 创建项目 1. 创建一个名为 `prisma-example` 的项目: @@ -90,9 +90,9 @@ const prisma = new PrismaClient({ adapter }); cd prisma-example ``` -2. 安装 `@tidbcloud/prisma-adapter` 驱动适配器、`@tidbcloud/serverless` serverless 驱动程序和 Prisma CLI。 +2. 安装 `@tidbcloud/prisma-adapter` 驱动适配器、`@tidbcloud/serverless` serverless driver 以及 Prisma CLI。 - 以下命令使用 npm 作为包管理器。执行 `npm install @tidbcloud/serverless` 将在你的项目目录中创建一个 `node_modules` 目录和一个 `package.json` 文件。 + 以下命令以 npm 作为包管理器。执行 `npm install @tidbcloud/serverless` 会在你的项目目录下创建 `node_modules` 目录和 `package.json` 文件。 ``` npm install @tidbcloud/prisma-adapter @@ -100,7 +100,7 @@ const prisma = new PrismaClient({ adapter }); npm install prisma --save-dev ``` -3. 在 `package.json` 文件中,通过添加 `type: "module"` 来指定 ES 模块: +3. 在 `package.json` 文件中,通过添加 `type: "module"` 指定 ES module: ```json { @@ -116,21 +116,21 @@ const prisma = new PrismaClient({ adapter }); } ``` -### 第 2 步:设置环境 +### 步骤 2. 设置环境 -1. 在你的 TiDB Cloud Serverless 集群的概览页面上,点击右上角的**连接**,然后从显示的对话框中获取数据库的连接字符串。连接字符串看起来像这样: +1. 在 TiDB Cloud Serverless 集群的概览页面,点击右上角的 **Connect**,然后在弹出的对话框中获取你的数据库连接字符串。连接字符串格式如下: ``` mysql://[username]:[password]@[host]:4000/[database]?sslaccept=strict ``` -2. 在项目的根目录中,创建一个名为 `.env` 的文件,定义一个名为 `DATABASE_URL` 的环境变量,如下所示,然后将此变量中的占位符 `[]` 替换为连接字符串中的相应参数。 +2. 在项目根目录下创建一个名为 `.env` 的文件,定义名为 `DATABASE_URL` 的环境变量,并将该变量中的 `[]` 占位符替换为连接字符串中的对应参数。 ```dotenv DATABASE_URL='mysql://[username]:[password]@[host]:4000/[database]?sslaccept=strict' ``` - > **注意:** + > **Note:** > > `@tidbcloud/prisma-adapter` 仅支持通过 HTTPS 使用 Prisma Client。对于 [Prisma Migrate](https://www.prisma.io/docs/concepts/components/prisma-migrate) 和 [Prisma Introspection](https://www.prisma.io/docs/concepts/components/introspection),仍然使用传统的 TCP 连接。如果你只需要使用 Prisma Client,可以将 `DATABASE_URL` 简化为 `mysql://[username]:[password]@[host]/[database]` 格式。 @@ -140,9 +140,9 @@ const prisma = new PrismaClient({ adapter }); npm install dotenv ``` -### 第 3 步:定义你的架构 +### 步骤 3. 定义 schema -1. 创建一个名为 `schema.prisma` 的文件。在此文件中,包含 `driverAdapters` 预览功能并引用 `DATABASE_URL` 环境变量。以下是示例文件: +1. 创建一个名为 `schema.prisma` 的文件。在该文件中,包含 `driverAdapters` 预览特性,并引用 `DATABASE_URL` 环境变量。示例文件如下: ``` // schema.prisma @@ -157,7 +157,7 @@ const prisma = new PrismaClient({ adapter }); } ``` -2. 在 `schema.prisma` 文件中,为你的数据库表定义一个数据模型。在以下示例中,定义了一个名为 `user` 的数据模型。 +2. 在 `schema.prisma` 文件中,为你的数据库表定义数据模型。以下示例定义了一个名为 `user` 的数据模型。 ``` // schema.prisma @@ -179,13 +179,13 @@ const prisma = new PrismaClient({ adapter }); } ``` -3. 将你的数据库与 Prisma 架构同步。你可以手动在 TiDB Cloud Serverless 集群中创建数据库表,或使用 Prisma CLI 自动创建它们,如下所示: +3. 使用 Prisma schema 同步你的数据库。你可以手动在 TiDB Cloud Serverless 集群中创建数据库表,也可以使用 Prisma CLI 自动创建: ``` npx prisma db push ``` - 此命令将通过传统的 TCP 连接(而不是通过使用 `@tidbcloud/prisma-adapter` 的 HTTPS 连接)在你的 TiDB Cloud Serverless 集群中创建 `user` 表。这是因为它使用与 Prisma Migrate 相同的引擎。有关此命令的更多信息,请参阅[原型化你的架构](https://www.prisma.io/docs/concepts/components/prisma-migrate/db-push)。 + 该命令会通过传统的 TCP 连接在 TiDB Cloud Serverless 集群中创建 `user` 表,而不是通过 `@tidbcloud/prisma-adapter` 的 HTTPS 连接。这是因为它使用了与 Prisma Migrate 相同的引擎。关于该命令的更多信息,请参见 [Prototype your schema](https://www.prisma.io/docs/concepts/components/prisma-migrate/db-push)。 4. 生成 Prisma Client: @@ -193,11 +193,11 @@ const prisma = new PrismaClient({ adapter }); npx prisma generate ``` - 此命令将基于 Prisma 架构生成 Prisma Client。 + 该命令会根据 Prisma schema 生成 Prisma Client。 -### 第 4 步:执行 CRUD 操作 +### 步骤 4. 执行 CRUD 操作 -1. 创建一个名为 `hello-word.js` 的文件,并添加以下代码来初始化 Prisma Client: +1. 创建一个名为 `hello-word.js` 的文件,并添加以下代码以初始化 Prisma Client: ```js import { PrismaTiDBCloud } from '@tidbcloud/prisma-adapter'; @@ -271,9 +271,9 @@ const prisma = new PrismaClient({ adapter }); } ``` -## 在边缘环境中使用 Prisma 适配器 +## 在 edge 环境中使用 Prisma adapter -你可以在边缘环境(如 Vercel Edge Functions 和 Cloudflare Workers)中使用 v5.11.0 或更高版本的 `@tidbcloud/prisma-adapter`。 +你可以在 edge 环境(如 Vercel Edge Functions 和 Cloudflare Workers)中使用 v5.11.0 或更高版本的 `@tidbcloud/prisma-adapter`。 - [Vercel Edge Function 示例](https://github.com/tidbcloud/serverless-driver-example/tree/main/prisma/prisma-vercel-example) - [Cloudflare Workers 示例](https://github.com/tidbcloud/serverless-driver-example/tree/main/prisma/prisma-cloudflare-worker-example) diff --git a/tidb-cloud/serverless-driver.md b/tidb-cloud/serverless-driver.md index 7f6e411d97303..9b5f37f3ef06a 100644 --- a/tidb-cloud/serverless-driver.md +++ b/tidb-cloud/serverless-driver.md @@ -1,36 +1,36 @@ --- -title: TiDB Cloud Serverless 驱动(Beta) -summary: 了解如何从 serverless 和边缘环境连接到 TiDB Cloud Serverless。 +title: TiDB Cloud Serverless Driver (Beta) +summary: 了解如何从无服务器和边缘环境连接到 TiDB Cloud Serverless。 aliases: ['/tidbcloud/serverless-driver-config'] --- -# TiDB Cloud Serverless 驱动(Beta) +# TiDB Cloud Serverless Driver (Beta) -## 为什么使用 TiDB Cloud Serverless 驱动(Beta) +## 为什么要使用 TiDB Cloud Serverless Driver (Beta) -传统的基于 TCP 的 MySQL 驱动程序不适合 serverless 函数,因为它们需要长期存在的持久 TCP 连接,这与 serverless 函数的短暂特性相矛盾。此外,在边缘环境中,如 [Vercel Edge Functions](https://vercel.com/docs/functions/edge-functions) 和 [Cloudflare Workers](https://workers.cloudflare.com/),由于可能缺乏完整的 TCP 支持和完整的 Node.js 兼容性,这些驱动程序可能完全无法工作。 +传统的基于 TCP 的 MySQL 驱动程序并不适用于无服务器函数,因为它们期望建立长时间存在的持久 TCP 连接,这与无服务器函数的短暂生命周期相矛盾。此外,在 [Vercel Edge Functions](https://vercel.com/docs/functions/edge-functions) 和 [Cloudflare Workers](https://workers.cloudflare.com/) 等边缘环境中,可能缺乏对完整 TCP 的支持和完整的 Node.js 兼容性,这些驱动程序可能根本无法工作。 -JavaScript 版本的 [TiDB Cloud serverless 驱动(Beta)](https://github.com/tidbcloud/serverless-js) 允许你通过 HTTP 连接到 TiDB Cloud Serverless 集群,这通常在 serverless 环境中都支持。有了它,现在可以从边缘环境连接到 TiDB Cloud Serverless 集群,并减少 TCP 的连接开销,同时保持与传统基于 TCP 的 MySQL 驱动程序类似的开发体验。 +[TiDB Cloud serverless driver (Beta)](https://github.com/tidbcloud/serverless-js) 针对 JavaScript,可以通过 HTTP 连接到你的 TiDB Cloud Serverless 集群,而 HTTP 通常被无服务器环境所支持。借助该驱动,现在可以从边缘环境连接到 TiDB Cloud Serverless 集群,并在保持与传统基于 TCP 的 MySQL 驱动类似开发体验的同时,减少 TCP 带来的连接开销。 -> **注意:** +> **Note:** > -> 如果你更喜欢使用 RESTful API 而不是 SQL 或 ORM 进行编程,可以使用 [Data Service (beta)](/tidb-cloud/data-service-overview.md)。 +> 如果你更喜欢使用 RESTful API 进行编程而不是 SQL 或 ORM,可以使用 [Data Service (beta)](/tidb-cloud/data-service-overview.md)。 -## 安装 serverless 驱动 +## 安装 serverless driver -你可以使用 npm 安装驱动: +你可以通过 npm 安装该驱动: ```bash npm install @tidbcloud/serverless ``` -## 使用 serverless 驱动 +## 使用 serverless driver -你可以使用 serverless 驱动查询 TiDB Cloud Serverless 集群的数据或执行交互式事务。 +你可以使用 serverless driver 查询 TiDB Cloud Serverless 集群中的数据或执行交互式事务。 ### 查询 -要从 TiDB Cloud Serverless 集群查询数据,你需要先创建一个连接。然后你可以使用该连接执行原始 SQL 查询。例如: +要从 TiDB Cloud Serverless 集群查询数据,你需要先创建一个连接。然后可以使用该连接执行原始 SQL 查询。例如: ```ts import { connect } from '@tidbcloud/serverless' @@ -41,7 +41,7 @@ const results = await conn.execute('select * from test where id = ?',[1]) ### 事务(实验性) -你也可以使用 serverless 驱动执行交互式事务。例如: +你也可以使用 serverless driver 执行交互式事务。例如: ```ts import { connect } from '@tidbcloud/serverless' @@ -61,7 +61,7 @@ try { ## 边缘环境示例 -以下是在边缘环境中使用 serverless 驱动的一些示例。完整示例可以尝试这个[在线演示](https://github.com/tidbcloud/car-sales-insight)。 +以下是在边缘环境中使用 serverless driver 的一些示例。你也可以尝试这个 [在线演示](https://github.com/tidbcloud/car-sales-insight) 获取完整示例。 @@ -80,7 +80,7 @@ export async function GET(request: NextRequest) { } ``` -了解更多关于[在 Vercel 中使用 TiDB Cloud serverless 驱动](/tidb-cloud/integrate-tidbcloud-with-vercel.md)。 +了解更多关于 [在 Vercel 中使用 TiDB Cloud serverless driver](/tidb-cloud/integrate-tidbcloud-with-vercel.md)。
@@ -100,7 +100,7 @@ export default { }; ``` -了解更多关于[在 Cloudflare Workers 中使用 TiDB Cloud serverless 驱动](/tidb-cloud/integrate-tidbcloud-with-cloudflare.md)。 +了解更多关于 [在 Cloudflare Workers 中使用 TiDB Cloud serverless driver](/tidb-cloud/integrate-tidbcloud-with-cloudflare.md)。
@@ -116,7 +116,7 @@ export default async () => { } ``` -了解更多关于[在 Netlify 中使用 TiDB Cloud serverless 驱动](/tidb-cloud/integrate-tidbcloud-with-netlify.md#use-the-edge-function)。 +了解更多关于 [在 Netlify 中使用 TiDB Cloud serverless driver](/tidb-cloud/integrate-tidbcloud-with-netlify.md#use-the-edge-function)。
@@ -144,33 +144,33 @@ const result = await conn.execute('show tables') -## 配置 serverless 驱动 +## 配置 serverless driver -你可以在连接级别和 SQL 级别配置 TiDB Cloud serverless 驱动。 +你可以在连接级别和 SQL 级别配置 TiDB Cloud serverless driver。 ### 连接级别配置 -在连接级别,你可以进行以下配置: +在连接级别,你可以进行如下配置: -| 名称 | 类型 | 默认值 | 描述 | -|--------------|----------|---------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| `username` | string | N/A | TiDB Cloud Serverless 的用户名 | -| `password` | string | N/A | TiDB Cloud Serverless 的密码 | -| `host` | string | N/A | TiDB Cloud Serverless 的主机名 | -| `database` | string | `test` | TiDB Cloud Serverless 的数据库 | -| `url` | string | N/A | 数据库的 URL,格式为 `mysql://[username]:[password]@[host]/[database]`,如果你打算连接到默认数据库,可以省略 `database`。 | -| `fetch` | function | global fetch | 自定义 fetch 函数。例如,你可以在 node.js 中使用 `undici` fetch。 | -| `arrayMode` | bool | `false` | 是否将结果以数组而不是对象形式返回。要获得更好的性能,请设置为 `true`。 | -| `fullResult` | bool | `false` | 是否返回完整的结果对象而不是仅返回行。要获得更详细的结果,请设置为 `true`。 | -| `decoders` | object | `{}` | 一组键值对,使你能够自定义不同列类型的解码过程。在每个键值对中,你可以指定一个列类型作为键,并指定一个相应的函数作为值。这个函数接收从 TiDB Cloud serverless 驱动接收到的原始字符串值作为参数,并返回解码后的值。 | +| Name | Type | Default value | Description | +|--------------|----------|---------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| `username` | string | N/A | TiDB Cloud Serverless 的用户名 | +| `password` | string | N/A | TiDB Cloud Serverless 的密码 | +| `host` | string | N/A | TiDB Cloud Serverless 的主机名 | +| `database` | string | `test` | TiDB Cloud Serverless 的数据库 | +| `url` | string | N/A | 数据库的 URL,格式为 `mysql://[username]:[password]@[host]/[database]`,如果你打算连接到默认数据库,可以省略 `database`。 | +| `fetch` | function | global fetch | 自定义 fetch 函数。例如,你可以在 node.js 中使用 `undici` 的 fetch。 | +| `arrayMode` | bool | `false` | 是否以数组而不是对象的形式返回结果。为了获得更好的性能,可以设置为 `true`。 | +| `fullResult` | bool | `false` | 是否返回完整的结果对象而不仅仅是行数据。为了获得更详细的结果,可以设置为 `true`。 | +| `decoders` | object | `{}` | 一组键值对,允许你为不同的列类型自定义解码过程。在每一对中,你可以指定列类型作为 key,并指定相应的函数作为 value。该函数以 TiDB Cloud serverless driver 返回的原始字符串值为参数,并返回解码后的值。 | -**数据库 URL** +**Database URL** -> **注意:** +> **Note:** > -> 如果你的用户名、密码或数据库名称包含特殊字符,在通过 URL 传递时必须对这些字符进行[百分比编码](https://en.wikipedia.org/wiki/Percent-encoding)。例如,密码 `password1@//?` 需要在 URL 中编码为 `password1%40%2F%2F%3F`。 +> 如果你的用户名、密码或数据库名包含特殊字符,在通过 URL 传递时必须对这些字符进行 [百分号编码](https://en.wikipedia.org/wiki/Percent-encoding)。例如,密码 `password1@//?` 需要在 URL 中编码为 `password1%40%2F%2F%3F`。 -当配置了 `url` 时,就不需要单独配置 `host`、`username`、`password` 和 `database`。以下代码是等效的: +当配置了 `url` 后,无需单独配置 `host`、`username`、`password` 和 `database`。以下代码是等价的: ```ts const config = { @@ -195,22 +195,22 @@ const conn = connect(config) ### SQL 级别选项 -> **注意:** +> **Note:** > > SQL 级别选项的优先级高于连接级别配置。 在 SQL 级别,你可以配置以下选项: -| 选项 | 类型 | 默认值 | 描述 | +| Option | Type | Default value | Description | |--------------|--------|-------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| `arrayMode` | bool | `false` | 是否将结果以数组而不是对象形式返回。要获得更好的性能,请设置为 `true`。 | -| `fullResult` | bool | `false` | 是否返回完整的结果对象而不是仅返回行。要获得更详细的结果,请设置为 `true`。 | -| `isolation` | string | `REPEATABLE READ`| 事务隔离级别,可以设置为 `READ COMMITTED` 或 `REPEATABLE READ`。 | -| `decoders` | object | `{}` | 一组键值对,使你能够自定义不同列类型的解码过程。在每个键值对中,你可以指定一个列类型作为键,并指定一个相应的函数作为值。这个函数接收从 TiDB Cloud serverless 驱动接收到的原始字符串值作为参数,并返回解码后的值。如果你在连接级别和 SQL 级别都配置了 `decoders`,连接级别配置的具有不同键的键值对将合并到 SQL 级别生效。如果在两个级别都指定了相同的键(即列类型),SQL 级别的值优先。 | +| `arrayMode` | bool | `false` | 是否以数组而不是对象的形式返回结果。为了获得更好的性能,可以设置为 `true`。 | +| `fullResult` | bool | `false` | 是否返回完整的结果对象而不仅仅是行数据。为了获得更详细的结果,可以设置为 `true`。 | +| `isolation` | string | `REPEATABLE READ` | 事务隔离级别,可以设置为 `READ COMMITTED` 或 `REPEATABLE READ`。 | +| `decoders` | object | `{}` | 一组键值对,允许你为不同的列类型自定义解码过程。在每一对中,你可以指定列类型作为 key,并指定相应的函数作为 value。该函数以 TiDB Cloud serverless driver 返回的原始字符串值为参数,并返回解码后的值。如果你在连接级别和 SQL 级别都配置了 `decoders`,则连接级别中 key 不同的键值对会合并到 SQL 级别生效。如果同一个 key(即列类型)在两个级别都指定了,则以 SQL 级别的 value 为准。 | **arrayMode 和 fullResult** -要将完整的结果对象以数组形式返回,你可以按如下方式配置 `arrayMode` 和 `fullResult` 选项: +如果你希望以数组形式返回完整的结果对象,可以如下配置 `arrayMode` 和 `fullResult` 选项: ```ts const conn = connect({url: process.env['DATABASE_URL'] || 'mysql://[username]:[password]@[host]/[database]'}) @@ -228,7 +228,7 @@ const tx = await conn.begin({isolation:"READ COMMITTED"}) **decoders** -要自定义返回的列值格式,你可以在 `connect()` 方法中按如下方式配置 `decoder` 选项: +如果你想自定义返回列值的格式,可以在 `connect()` 方法中配置 `decoder` 选项,如下所示: ```ts import { connect, ColumnType } from '@tidbcloud/serverless'; @@ -236,15 +236,15 @@ import { connect, ColumnType } from '@tidbcloud/serverless'; const conn = connect({ url: 'mysql://[username]:[password]@[host]/[database]', decoders: { - // 默认情况下,TiDB Cloud serverless 驱动将 BIGINT 类型作为文本值返回。这个解码器将 BIGINT 转换为 JavaScript 内置的 BigInt 类型。 + // 默认情况下,TiDB Cloud serverless driver 会将 BIGINT 类型作为文本值返回。此解码器将 BIGINT 转换为 JavaScript 内置的 BigInt 类型。 [ColumnType.BIGINT]: (rawValue: string) => BigInt(rawValue), - // 默认情况下,TiDB Cloud serverless 驱动将 DATETIME 类型作为 'yyyy-MM-dd HH:mm:ss' 格式的文本值返回。这个解码器将 DATETIME 文本转换为 JavaScript 原生 Date 对象。 + // 默认情况下,TiDB Cloud serverless driver 会将 DATETIME 类型以 'yyyy-MM-dd HH:mm:ss' 格式的文本值返回。此解码器将 DATETIME 文本转换为 JavaScript 原生的 Date 对象。 [ColumnType.DATETIME]: (rawValue: string) => new Date(rawValue), } }) -// 你也可以在 SQL 级别配置 decoder 选项来覆盖连接级别具有相同键的解码器。 +// 你也可以在 SQL 级别配置 decoder 选项,以覆盖连接级别中相同 key 的 decoders。 conn.execute(`select ...`, [], { decoders: { // ... @@ -252,24 +252,24 @@ conn.execute(`select ...`, [], { }) ``` -> **注意:** +> **Note:** > -> TiDB Cloud serverless 驱动配置变更: +> TiDB Cloud serverless driver 配置变更: > -> - v0.0.7:添加 SQL 级别选项 `isolation`。 -> - v0.0.10:添加连接级别配置 `decoders` 和 SQL 级别选项 `decoders`。 +> - v0.0.7:新增 SQL 级别选项 `isolation`。 +> - v0.0.10:新增连接级别配置 `decoders` 和 SQL 级别选项 `decoders`。 ## 功能特性 ### 支持的 SQL 语句 -支持 DDL 和以下 SQL 语句:`SELECT`、`SHOW`、`EXPLAIN`、`USE`、`INSERT`、`UPDATE`、`DELETE`、`BEGIN`、`COMMIT`、`ROLLBACK` 和 `SET`。 +支持 DDL,并支持以下 SQL 语句:`SELECT`、`SHOW`、`EXPLAIN`、`USE`、`INSERT`、`UPDATE`、`DELETE`、`BEGIN`、`COMMIT`、`ROLLBACK` 和 `SET`。 ### 数据类型映射 -TiDB Cloud Serverless 和 Javascript 之间的类型映射如下: +TiDB Cloud Serverless 与 Javascript 之间的数据类型映射如下: -| TiDB Cloud Serverless 类型 | Javascript 类型 | +| TiDB Cloud Serverless type | Javascript type | |----------------------|-----------------| | TINYINT | number | | UNSIGNED TINYINT | number | @@ -308,35 +308,35 @@ TiDB Cloud Serverless 和 Javascript 之间的类型映射如下: | NULL | null | | Others | string | -> **注意:** +> **Note:** > -> 确保在 TiDB Cloud Serverless 中使用默认的 `utf8mb4` 字符集进行 JavaScript 字符串的类型转换,因为 TiDB Cloud serverless 驱动使用 UTF-8 编码将它们解码为字符串。 +> 请确保在 TiDB Cloud Serverless 中使用默认的 `utf8mb4` 字符集进行类型转换为 JavaScript 字符串,因为 TiDB Cloud serverless driver 使用 UTF-8 编码将其解码为字符串。 -> **注意:** +> **Note:** > -> TiDB Cloud serverless 驱动数据类型映射变更: +> TiDB Cloud serverless driver 数据类型映射变更: > -> - v0.1.0:`BINARY`、`VARBINARY`、`TINYBLOB`、`BLOB`、`MEDIUMBLOB`、`LONGBLOB` 和 `BIT` 类型现在返回 `Uint8Array` 而不是 `string`。 +> - v0.1.0:`BINARY`、`VARBINARY`、`TINYBLOB`、`BLOB`、`MEDIUMBLOB`、`LONGBLOB` 和 `BIT` 类型现在返回为 `Uint8Array`,而不是 `string`。 ### ORM 集成 -TiDB Cloud serverless 驱动已经与以下 ORM 集成: +TiDB Cloud serverless driver 已集成以下 ORM: -- [TiDB Cloud serverless 驱动 Kysely 方言](https://github.com/tidbcloud/kysely)。 -- [TiDB Cloud serverless 驱动 Prisma 适配器](https://github.com/tidbcloud/prisma-adapter)。 +- [TiDB Cloud serverless driver Kysely dialect](https://github.com/tidbcloud/kysely)。 +- [TiDB Cloud serverless driver Prisma adapter](https://github.com/tidbcloud/prisma-adapter)。 -## 定价 +## 计费 -serverless 驱动本身是免费的,但使用驱动访问数据会产生 [Request Units (RUs)](/tidb-cloud/tidb-cloud-glossary.md#request-unit) 和存储使用量。定价遵循 [TiDB Cloud Serverless 定价](https://www.pingcap.com/tidb-serverless-pricing-details/) 模型。 +serverless driver 本身是免费的,但使用该驱动访问数据会产生 [Request Units (RUs)](/tidb-cloud/tidb-cloud-glossary.md#request-unit) 和存储用量。计费遵循 [TiDB Cloud Serverless 计费](https://www.pingcap.com/tidb-serverless-pricing-details/) 模型。 ## 限制 -目前,使用 serverless 驱动有以下限制: +目前,使用 serverless driver 有以下限制: -- 单个查询最多可以获取 10,000 行数据。 -- 一次只能执行一条 SQL 语句。目前不支持在一个查询中执行多条 SQL 语句。 -- 尚不支持通过[私有端点](/tidb-cloud/set-up-private-endpoint-connections-serverless.md)连接。 +- 单次查询最多可获取 10,000 行数据。 +- 每次只能执行一条 SQL 语句,不支持在一个查询中执行多条 SQL 语句。 +- 暂不支持通过 [私有终端节点](/tidb-cloud/set-up-private-endpoint-connections-serverless.md) 连接。 -## 下一步 +## 后续步骤 -- 了解如何[在本地 Node.js 项目中使用 TiDB Cloud serverless 驱动](/tidb-cloud/serverless-driver-node-example.md)。 +- 了解如何 [在本地 Node.js 项目中使用 TiDB Cloud serverless driver](/tidb-cloud/serverless-driver-node-example.md)。 \ No newline at end of file diff --git a/tidb-cloud/serverless-export.md b/tidb-cloud/serverless-export.md index 5dbda4d8693b1..ec330548647b7 100644 --- a/tidb-cloud/serverless-export.md +++ b/tidb-cloud/serverless-export.md @@ -5,17 +5,17 @@ summary: 了解如何从 TiDB Cloud Serverless 集群导出数据。 # 从 TiDB Cloud Serverless 导出数据 -TiDB Cloud Serverless 导出功能(Beta)是一项服务,可让你将数据从 TiDB Cloud Serverless 集群导出到本地文件或外部存储服务。你可以将导出的数据用于备份、迁移、数据分析或其他用途。 +TiDB Cloud Serverless 导出(Beta)是一项服务,支持你将数据从 TiDB Cloud Serverless 集群导出到本地文件或外部存储服务。你可以将导出的数据用于备份、迁移、数据分析或其他用途。 -虽然你也可以使用 [mysqldump](https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html) 和 TiDB [Dumpling](https://docs.pingcap.com/tidb/dev/dumpling-overview) 等工具导出数据,但 TiDB Cloud Serverless 导出功能提供了一种更便捷、高效的方式来从 TiDB Cloud Serverless 集群导出数据。它具有以下优势: +虽然你也可以使用 [mysqldump](https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html) 和 TiDB [Dumpling](https://docs.pingcap.com/tidb/dev/dumpling-overview) 等工具导出数据,但 TiDB Cloud Serverless 导出为你提供了更便捷、高效的导出方式。其优势包括: -- 便捷性:导出服务提供了一种简单易用的方式来从 TiDB Cloud Serverless 集群导出数据,无需额外的工具或资源。 -- 隔离性:导出服务使用独立的计算资源,确保与你的在线服务资源隔离。 -- 一致性:导出服务确保导出数据的一致性,且不会造成锁定,不影响你的在线服务。 +- 便捷性:导出服务提供了简单易用的方式,无需额外工具或资源即可从 TiDB Cloud Serverless 集群导出数据。 +- 隔离性:导出服务使用独立的计算资源,确保与线上服务资源隔离。 +- 一致性:导出服务保证导出数据的一致性且不会加锁,不影响你的线上服务。 > **注意:** > -> 目前最大导出大小为 1 TiB。如需导出更多数据或请求更高的导出速度,请联系 [TiDB Cloud 支持团队](/tidb-cloud/tidb-cloud-support.md)。 +> 当前最大导出数据量为 1 TiB。如需导出更多数据或申请更高的导出速度,请联系 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 ## 导出位置 @@ -27,66 +27,66 @@ TiDB Cloud Serverless 导出功能(Beta)是一项服务,可让你将数据 - [Amazon S3](https://aws.amazon.com/s3/) - [Google Cloud Storage](https://cloud.google.com/storage) - [Azure Blob Storage](https://azure.microsoft.com/en-us/services/storage/blobs/) - - [阿里云对象存储服务(OSS)](https://www.alibabacloud.com/product/oss) + - [阿里云对象存储 OSS](https://www.alibabacloud.com/product/oss) > **注意:** > -> 如果要导出的数据量较大(超过 100 GiB),建议导出到外部存储。 +> 如果导出数据量较大(超过 100 GiB),建议导出到外部存储。 ### 本地文件 -要将数据从 TiDB Cloud Serverless 集群导出到本地文件,你需要[使用 TiDB Cloud 控制台](#导出数据到本地文件)或[使用 TiDB Cloud CLI](/tidb-cloud/ticloud-serverless-export-create.md) 导出数据,然后使用 TiDB Cloud CLI 下载导出的数据。 +要将数据从 TiDB Cloud Serverless 集群导出到本地文件,你需要 [通过 TiDB Cloud 控制台导出数据](#export-data-to-a-local-file) 或 [通过 TiDB Cloud CLI 导出数据](/tidb-cloud/ticloud-serverless-export-create.md),然后使用 TiDB Cloud CLI 下载导出的数据。 -导出数据到本地文件有以下限制: +导出到本地文件有以下限制: -- 不支持使用 TiDB Cloud 控制台下载导出的数据。 -- 导出的数据保存在 TiDB Cloud 的暂存区域,两天后过期。你需要及时下载导出的数据。 -- 如果暂存区域的存储空间已满,你将无法导出数据到本地文件。 +- 不支持通过 TiDB Cloud 控制台下载导出数据。 +- 导出数据会保存在 TiDB Cloud 的暂存区,且将在两天后过期。你需要及时下载导出数据。 +- 如果暂存区存储空间已满,将无法导出数据到本地文件。 ### Amazon S3 -要导出数据到 Amazon S3,你需要提供以下信息: +导出数据到 Amazon S3 时,你需要提供以下信息: - URI:`s3:////` -- 以下访问凭证之一: - - [访问密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html):确保访问密钥具有 `s3:PutObject` 和 `s3:ListBucket` 权限。 - - [角色 ARN](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html):确保角色 ARN(Amazon Resource Name)具有 `s3:PutObject` 和 `s3:ListBucket` 权限。注意,只有托管在 AWS 上的集群支持角色 ARN。 +- 以下任一访问凭证: + - [访问密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html):确保该访问密钥拥有 `s3:PutObject` 和 `s3:ListBucket` 权限。 + - [角色 ARN](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html):确保该角色 ARN(Amazon Resource Name)拥有 `s3:PutObject` 和 `s3:ListBucket` 权限。注意,仅托管在 AWS 上的集群支持角色 ARN。 -更多信息,请参见[配置 Amazon S3 访问](/tidb-cloud/serverless-external-storage.md#configure-amazon-s3-access)。 +更多信息,参见 [配置 Amazon S3 访问](/tidb-cloud/serverless-external-storage.md#configure-amazon-s3-access)。 ### Google Cloud Storage -要导出数据到 Google Cloud Storage,你需要提供以下信息: +导出数据到 Google Cloud Storage 时,你需要提供以下信息: - URI:`gs:////` -- 访问凭证:存储桶的 **base64 编码**[服务账号密钥](https://cloud.google.com/iam/docs/creating-managing-service-account-keys)。确保服务账号密钥具有 `storage.objects.create` 权限。 +- 访问凭证:你的 bucket 的 **base64 编码** [服务账号密钥](https://cloud.google.com/iam/docs/creating-managing-service-account-keys)。确保该服务账号密钥拥有 `storage.objects.create` 权限。 -更多信息,请参见[配置 GCS 访问](/tidb-cloud/serverless-external-storage.md#configure-gcs-access)。 +更多信息,参见 [配置 GCS 访问](/tidb-cloud/serverless-external-storage.md#configure-gcs-access)。 ### Azure Blob Storage -要导出数据到 Azure Blob Storage,你需要提供以下信息: +导出数据到 Azure Blob Storage 时,你需要提供以下信息: - URI:`azure://.blob.core.windows.net///` 或 `https://.blob.core.windows.net///` -- 访问凭证:Azure Blob Storage 容器的[共享访问签名(SAS)令牌](https://docs.microsoft.com/en-us/azure/storage/common/storage-sas-overview)。确保 SAS 令牌对 `Container` 和 `Object` 资源具有 `Read` 和 `Write` 权限。 +- 访问凭证:你的 Azure Blob Storage 容器的 [共享访问签名(SAS)令牌](https://docs.microsoft.com/en-us/azure/storage/common/storage-sas-overview)。确保该 SAS 令牌对 `Container` 和 `Object` 资源拥有 `Read` 和 `Write` 权限。 -更多信息,请参见[配置 Azure Blob Storage 访问](/tidb-cloud/serverless-external-storage.md#configure-azure-blob-storage-access)。 +更多信息,参见 [配置 Azure Blob Storage 访问](/tidb-cloud/serverless-external-storage.md#configure-azure-blob-storage-access)。 ### 阿里云 OSS -要导出数据到阿里云 OSS,你需要提供以下信息: +导出数据到阿里云 OSS 时,你需要提供以下信息: - URI:`oss:////` -- 访问凭证:阿里云账号的 [AccessKey 对](https://www.alibabacloud.com/help/en/ram/user-guide/create-an-accesskey-pair)。确保 AccessKey 对具有 `oss:PutObject`、`oss:ListBuckets` 和 `oss:GetBucketInfo` 权限,以允许将数据导出到 OSS 存储桶。 +- 访问凭证:你的阿里云账号的 [AccessKey 对](https://www.alibabacloud.com/help/en/ram/user-guide/create-an-accesskey-pair)。确保该 AccessKey 对拥有 `oss:PutObject`、`oss:ListBuckets` 和 `oss:GetBucketInfo` 权限,以允许数据导出到 OSS bucket。 -更多信息,请参见[配置阿里云对象存储服务(OSS)访问](/tidb-cloud/serverless-external-storage.md#configure-alibaba-cloud-object-storage-service-oss-access)。 +更多信息,参见 [配置阿里云对象存储 OSS 访问](/tidb-cloud/serverless-external-storage.md#configure-alibaba-cloud-object-storage-service-oss-access)。 ## 导出选项 ### 数据过滤 -- TiDB Cloud 控制台支持导出选定的数据库和表。 -- TiDB Cloud CLI 支持使用 SQL 语句和[表过滤器](/table-filter.md)导出数据。 +- TiDB Cloud 控制台支持按所选数据库和数据表导出数据。 +- TiDB Cloud CLI 支持通过 SQL 语句和 [表过滤器](/table-filter.md) 导出数据。 ### 数据格式 @@ -94,28 +94,28 @@ TiDB Cloud Serverless 导出功能(Beta)是一项服务,可让你将数据 - `SQL`:以 SQL 格式导出数据。 - `CSV`:以 CSV 格式导出数据。你可以指定以下选项: - - `delimiter`:指定导出数据中使用的分隔符。默认分隔符为 `"`。 + - `delimiter`:指定导出数据中使用的定界符。默认定界符为 `"`。 - `separator`:指定导出数据中用于分隔字段的字符。默认分隔符为 `,`。 - - `header`:指定是否在导出数据中包含标题行。默认值为 `true`。 + - `header`:指定是否在导出数据中包含表头行。默认值为 `true`。 - `null-value`:指定导出数据中表示 NULL 值的字符串。默认值为 `\N`。 - `Parquet`:以 Parquet 格式导出数据。 -模式和数据的导出遵循以下命名约定: +导出的 schema 和数据文件命名规则如下: -| 项目 | 未压缩 | 已压缩 | -|-----------------|-------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------| -| 数据库模式 | {database}-schema-create.sql | {database}-schema-create.sql.{compression-type} | -| 表模式 | {database}.{table}-schema.sql | {database}.{table}-schema.sql.{compression-type} | -| 数据 | {database}.{table}.{0001}.{csv|parquet|sql} | {database}.{table}.{0001}.{csv|sql}.{compression-type}
{database}.{table}.{0001}.{compression-type}.parquet | +| 项目 | 未压缩文件名 | 压缩后文件名 | +|-----------------|-----------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------| +| 数据库 schema | {database}-schema-create.sql | {database}-schema-create.sql.{compression-type} | +| 表 schema | {database}.{table}-schema.sql | {database}.{table}-schema.sql.{compression-type} | +| 数据 | {database}.{table}.{0001}.{csv|parquet|sql} | {database}.{table}.{0001}.{csv|sql}.{compression-type}
{database}.{table}.{0001}.{compression-type}.parquet | ### 数据压缩 你可以使用以下算法压缩导出的 CSV 和 SQL 数据: -- `gzip`(默认):使用 `gzip` 压缩导出的数据。 -- `snappy`:使用 `snappy` 压缩导出的数据。 -- `zstd`:使用 `zstd` 压缩导出的数据。 -- `none`:不压缩导出的数据。 +- `gzip`(默认):使用 `gzip` 压缩导出数据。 +- `snappy`:使用 `snappy` 压缩导出数据。 +- `zstd`:使用 `zstd` 压缩导出数据。 +- `none`:不压缩导出数据。 你可以使用以下算法压缩导出的 Parquet 数据: @@ -124,79 +124,79 @@ TiDB Cloud Serverless 导出功能(Beta)是一项服务,可让你将数据 - `snappy`:使用 `snappy` 压缩 Parquet 文件。 - `none`:不压缩 Parquet 文件。 -### 数据转换 - -在导出数据到 Parquet 格式时,TiDB Cloud Serverless 和 Parquet 之间的数据转换如下: - -| TiDB Cloud Serverless 类型 | Parquet 基本类型 | Parquet 逻辑类型 | -|----------------------------|-------------------------|----------------------------------------------| -| VARCHAR | BYTE_ARRAY | String(UTF8) | -| TIME | BYTE_ARRAY | String(UTF8) | -| TINYTEXT | BYTE_ARRAY | String(UTF8) | -| MEDIUMTEXT | BYTE_ARRAY | String(UTF8) | -| TEXT | BYTE_ARRAY | String(UTF8) | -| LONGTEXT | BYTE_ARRAY | String(UTF8) | -| SET | BYTE_ARRAY | String(UTF8) | -| JSON | BYTE_ARRAY | String(UTF8) | -| DATE | BYTE_ARRAY | String(UTF8) | -| CHAR | BYTE_ARRAY | String(UTF8) | -| VECTOR | BYTE_ARRAY | String(UTF8) | -| DECIMAL(1<=p<=9) | INT32 | DECIMAL(p,s) | -| DECIMAL(10<=p<=18) | INT64 | DECIMAL(p,s) | -| DECIMAL(p>=19) | BYTE_ARRAY | String(UTF8) | -| ENUM | BYTE_ARRAY | String(UTF8) | -| TIMESTAMP | INT64 | TIMESTAMP(unit=MICROS,isAdjustedToUTC=false) | -| DATETIME | INT64 | TIMESTAMP(unit=MICROS,isAdjustedToUTC=false) | -| YEAR | INT32 | / | -| TINYINT | INT32 | / | -| UNSIGNED TINYINT | INT32 | / | -| SMALLINT | INT32 | / | -| UNSIGNED SMALLINT | INT32 | / | -| MEDIUMINT | INT32 | / | -| UNSIGNED MEDIUMINT | INT32 | / | -| INT | INT32 | / | -| UNSIGNED INT | FIXED_LEN_BYTE_ARRAY(9) | DECIMAL(20,0) | -| BIGINT | FIXED_LEN_BYTE_ARRAY(9) | DECIMAL(20,0) | -| UNSIGNED BIGINT | BYTE_ARRAY | String(UTF8) | -| FLOAT | FLOAT | / | -| DOUBLE | DOUBLE | / | -| BLOB | BYTE_ARRAY | / | -| TINYBLOB | BYTE_ARRAY | / | -| MEDIUMBLOB | BYTE_ARRAY | / | -| LONGBLOB | BYTE_ARRAY | / | -| BINARY | BYTE_ARRAY | / | -| VARBINARY | BYTE_ARRAY | / | -| BIT | BYTE_ARRAY | / | +### 数据类型转换 + +当导出数据为 Parquet 格式时,TiDB Cloud Serverless 与 Parquet 之间的数据类型转换如下: + +| TiDB Cloud Serverless 类型 | Parquet 原始类型 | Parquet 逻辑类型 | +|----------------------------|--------------------------|--------------------------------------------------| +| VARCHAR | BYTE_ARRAY | String(UTF8) | +| TIME | BYTE_ARRAY | String(UTF8) | +| TINYTEXT | BYTE_ARRAY | String(UTF8) | +| MEDIUMTEXT | BYTE_ARRAY | String(UTF8) | +| TEXT | BYTE_ARRAY | String(UTF8) | +| LONGTEXT | BYTE_ARRAY | String(UTF8) | +| SET | BYTE_ARRAY | String(UTF8) | +| JSON | BYTE_ARRAY | String(UTF8) | +| DATE | BYTE_ARRAY | String(UTF8) | +| CHAR | BYTE_ARRAY | String(UTF8) | +| VECTOR | BYTE_ARRAY | String(UTF8) | +| DECIMAL(1<=p<=9) | INT32 | DECIMAL(p,s) | +| DECIMAL(10<=p<=18) | INT64 | DECIMAL(p,s) | +| DECIMAL(p>=19) | BYTE_ARRAY | String(UTF8) | +| ENUM | BYTE_ARRAY | String(UTF8) | +| TIMESTAMP | INT64 | TIMESTAMP(unit=MICROS,isAdjustedToUTC=false) | +| DATETIME | INT64 | TIMESTAMP(unit=MICROS,isAdjustedToUTC=false) | +| YEAR | INT32 | / | +| TINYINT | INT32 | / | +| UNSIGNED TINYINT | INT32 | / | +| SMALLINT | INT32 | / | +| UNSIGNED SMALLINT | INT32 | / | +| MEDIUMINT | INT32 | / | +| UNSIGNED MEDIUMINT | INT32 | / | +| INT | INT32 | / | +| UNSIGNED INT | FIXED_LEN_BYTE_ARRAY(9) | DECIMAL(20,0) | +| BIGINT | FIXED_LEN_BYTE_ARRAY(9) | DECIMAL(20,0) | +| UNSIGNED BIGINT | BYTE_ARRAY | String(UTF8) | +| FLOAT | FLOAT | / | +| DOUBLE | DOUBLE | / | +| BLOB | BYTE_ARRAY | / | +| TINYBLOB | BYTE_ARRAY | / | +| MEDIUMBLOB | BYTE_ARRAY | / | +| LONGBLOB | BYTE_ARRAY | / | +| BINARY | BYTE_ARRAY | / | +| VARBINARY | BYTE_ARRAY | / | +| BIT | BYTE_ARRAY | / | ## 示例 ### 导出数据到本地文件 -
+
-1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 +1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框切换组织、项目和集群。 -2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 +2. 点击目标集群名称进入概览页,然后点击左侧导航栏的 **Data** > **Import**。 -3. 在**导入**页面,点击右上角的**导出数据到**,然后从下拉列表中选择**本地文件**。填写以下参数: +3. 在 **Import** 页面,点击右上角的 **Export Data to**,在下拉列表中选择 **Local File**,并填写以下参数: - - **任务名称**:输入导出任务的名称。默认值为 `SNAPSHOT_{snapshot_time}`。 - - **导出数据**:选择要导出的数据库和表。 - - **数据格式**:选择 **SQL**、**CSV** 或 **Parquet**。 - - **压缩**:选择 **Gzip**、**Snappy**、**Zstd** 或 **None**。 + - **Task Name**:输入导出任务名称。默认值为 `SNAPSHOT_{snapshot_time}`。 + - **Exported Data**:选择你要导出的数据库和数据表。 + - **Data Format**:选择 **SQL**、**CSV** 或 **Parquet**。 + - **Compression**:选择 **Gzip**、**Snappy**、**Zstd** 或 **None**。 > **提示:** > - > 如果你的集群之前没有导入或导出任何数据,你需要点击页面底部的**点击此处导出数据到...**来导出数据。 + > 如果你的集群之前未导入或导出过数据,需要在页面底部点击 **Click here to export data to...** 进行导出。 -4. 点击**导出**。 +4. 点击 **Export**。 -5. 导出任务成功后,你可以复制导出任务详情中显示的下载命令,然后在 [TiDB Cloud CLI](/tidb-cloud/cli-reference.md) 中运行该命令下载导出的数据。 +5. 导出任务成功后,你可以复制导出任务详情中显示的下载命令,并在 [TiDB Cloud CLI](/tidb-cloud/cli-reference.md) 中运行该命令下载导出数据。
@@ -208,44 +208,44 @@ TiDB Cloud Serverless 导出功能(Beta)是一项服务,可让你将数据 ticloud serverless export create -c ``` - 你将从输出中获得导出 ID。 + 你将在输出中获得一个导出 ID。 -2. 导出任务成功后,将导出的数据下载到本地文件: +2. 导出任务成功后,将导出数据下载到本地文件: ```shell ticloud serverless export download -c -e ``` - 有关下载命令的更多信息,请参见 [ticloud serverless export download](/tidb-cloud/ticloud-serverless-export-download.md)。 - + 有关下载命令的更多信息,参见 [ticloud serverless export download](/tidb-cloud/ticloud-serverless-export-download.md)。 +
### 导出数据到 Amazon S3 -
+
-1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 +1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框切换组织、项目和集群。 -2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 +2. 点击目标集群名称进入概览页,然后点击左侧导航栏的 **Data** > **Import**。 -3. 在**导入**页面,点击右上角的**导出数据到**,然后从下拉列表中选择 **Amazon S3**。填写以下参数: +3. 在 **Import** 页面,点击右上角的 **Export Data to**,在下拉列表中选择 **Amazon S3**,并填写以下参数: - - **任务名称**:输入导出任务的名称。默认值为 `SNAPSHOT_{snapshot_time}`。 - - **导出数据**:选择要导出的数据库和表。 - - **数据格式**:选择 **SQL**、**CSV** 或 **Parquet**。 - - **压缩**:选择 **Gzip**、**Snappy**、**Zstd** 或 **None**。 - - **文件夹 URI**:输入 Amazon S3 的 URI,格式为 `s3:////`。 - - **存储桶访问**:选择以下访问凭证之一,然后填写凭证信息: - - **AWS 角色 ARN**:输入具有访问存储桶权限的角色 ARN。建议使用 AWS CloudFormation 创建角色 ARN。更多信息,请参见[配置 TiDB Cloud Serverless 的外部存储访问](/tidb-cloud/serverless-external-storage.md#configure-amazon-s3-access)。 - - **AWS 访问密钥**:输入具有访问存储桶权限的访问密钥 ID 和访问密钥密钥。 + - **Task Name**:输入导出任务名称。默认值为 `SNAPSHOT_{snapshot_time}`。 + - **Exported Data**:选择你要导出的数据库和数据表。 + - **Data Format**:选择 **SQL**、**CSV** 或 **Parquet**。 + - **Compression**:选择 **Gzip**、**Snappy**、**Zstd** 或 **None**。 + - **Folder URI**:输入 Amazon S3 的 URI,格式为 `s3:////`。 + - **Bucket Access**:选择以下任一访问凭证并填写凭证信息: + - **AWS Role ARN**:输入有权限访问 bucket 的角色 ARN。推荐使用 AWS CloudFormation 创建角色 ARN。更多信息参见 [为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#configure-amazon-s3-access)。 + - **AWS Access Key**:输入有权限访问 bucket 的 access key ID 和 access key secret。 -4. 点击**导出**。 +4. 点击 **Export**。
@@ -257,10 +257,10 @@ ticloud serverless export create -c --target-type S3 --s3.uri ticloud serverless export create -c --target-type S3 --s3.uri --s3.role-arn --filter "database.table" ``` -- `s3.uri`:Amazon S3 URI,格式为 `s3:////`。 -- `s3.access-key-id`:具有访问存储桶权限的用户的访问密钥 ID。 -- `s3.secret-access-key`:具有访问存储桶权限的用户的访问密钥密钥。 -- `s3.role-arn`:具有访问存储桶权限的角色 ARN。 +- `s3.uri`:Amazon S3 的 URI,格式为 `s3:////`。 +- `s3.access-key-id`:有权限访问 bucket 的用户的 access key ID。 +- `s3.secret-access-key`:有权限访问 bucket 的用户的 access key secret。 +- `s3.role-arn`:有权限访问 bucket 的角色 ARN。
@@ -268,26 +268,26 @@ ticloud serverless export create -c --target-type S3 --s3.uri ### 导出数据到 Google Cloud Storage -
+
-1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 +1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框切换组织、项目和集群。 -2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 +2. 点击目标集群名称进入概览页,然后点击左侧导航栏的 **Data** > **Import**。 -3. 在**导入**页面,点击右上角的**导出数据到**,然后从下拉列表中选择 **Google Cloud Storage**。填写以下参数: +3. 在 **Import** 页面,点击右上角的 **Export Data to**,在下拉列表中选择 **Google Cloud Storage**,并填写以下参数: - - **任务名称**:输入导出任务的名称。默认值为 `SNAPSHOT_{snapshot_time}`。 - - **导出数据**:选择要导出的数据库和表。 - - **数据格式**:选择 **SQL**、**CSV** 或 **Parquet**。 - - **压缩**:选择 **Gzip**、**Snappy**、**Zstd** 或 **None**。 - - **文件夹 URI**:输入 Google Cloud Storage 的 URI,格式为 `gs:////`。 - - **存储桶访问**:上传具有访问存储桶权限的 Google Cloud 凭证文件。 + - **Task Name**:输入导出任务名称。默认值为 `SNAPSHOT_{snapshot_time}`。 + - **Exported Data**:选择你要导出的数据库和数据表。 + - **Data Format**:选择 **SQL**、**CSV** 或 **Parquet**。 + - **Compression**:选择 **Gzip**、**Snappy**、**Zstd** 或 **None**。 + - **Folder URI**:输入 Google Cloud Storage 的 URI,格式为 `gs:////`。 + - **Bucket Access**:上传有权限访问 bucket 的 Google Cloud 凭证文件。 -4. 点击**导出**。 +4. 点击 **Export**。
@@ -297,7 +297,7 @@ ticloud serverless export create -c --target-type S3 --s3.uri ticloud serverless export create -c --target-type GCS --gcs.uri --gcs.service-account-key --filter "database.table" ``` -- `gcs.uri`:Google Cloud Storage 存储桶的 URI,格式为 `gs:////`。 +- `gcs.uri`:Google Cloud Storage bucket 的 URI,格式为 `gs:////`。 - `gcs.service-account-key`:base64 编码的服务账号密钥。
@@ -306,26 +306,26 @@ ticloud serverless export create -c --target-type GCS --gcs.uri -
+
-1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 +1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框切换组织、项目和集群。 -2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 +2. 点击目标集群名称进入概览页,然后点击左侧导航栏的 **Data** > **Import**。 -3. 在**导入**页面,点击右上角的**导出数据到**,然后从下拉列表中选择 **Azure Blob Storage**。填写以下参数: +3. 在 **Import** 页面,点击右上角的 **Export Data to**,在下拉列表中选择 **Azure Blob Storage**,并填写以下参数: - - **任务名称**:输入导出任务的名称。默认值为 `SNAPSHOT_{snapshot_time}`。 - - **导出数据**:选择要导出的数据库和表。 - - **数据格式**:选择 **SQL**、**CSV** 或 **Parquet**。 - - **压缩**:选择 **Gzip**、**Snappy**、**Zstd** 或 **None**。 - - **文件夹 URI**:输入 Azure Blob Storage 的 URI,格式为 `azure://.blob.core.windows.net///`。 - - **SAS 令牌**:输入具有访问容器权限的 SAS 令牌。建议使用 [Azure ARM 模板](https://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/)创建 SAS 令牌。更多信息,请参见[配置 TiDB Cloud Serverless 的外部存储访问](/tidb-cloud/serverless-external-storage.md#configure-azure-blob-storage-access)。 + - **Task Name**:输入导出任务名称。默认值为 `SNAPSHOT_{snapshot_time}`。 + - **Exported Data**:选择你要导出的数据库和数据表。 + - **Data Format**:选择 **SQL**、**CSV** 或 **Parquet**。 + - **Compression**:选择 **Gzip**、**Snappy**、**Zstd** 或 **None**。 + - **Folder URI**:输入 Azure Blob Storage 的 URI,格式为 `azure://.blob.core.windows.net///`。 + - **SAS Token**:输入有权限访问容器的 SAS token。推荐使用 [Azure ARM 模板](https://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/) 创建 SAS token。更多信息参见 [为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md#configure-azure-blob-storage-access)。 -4. 点击**导出**。 +4. 点击 **Export**。
@@ -336,7 +336,7 @@ ticloud serverless export create -c --target-type AZURE_BLOB --azbl ``` - `azblob.uri`:Azure Blob Storage 的 URI,格式为 `(azure|https)://.blob.core.windows.net///`。 -- `azblob.sas-token`:Azure Blob Storage 的账号 SAS 令牌。 +- `azblob.sas-token`:Azure Blob Storage 的账户 SAS token。
@@ -344,28 +344,28 @@ ticloud serverless export create -c --target-type AZURE_BLOB --azbl ### 导出数据到阿里云 OSS -
+
-1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 +1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框切换组织、项目和集群。 -2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 +2. 点击目标集群名称进入概览页,然后点击左侧导航栏的 **Data** > **Import**。 -3. 在**导入**页面,点击右上角的**导出数据到**,然后从下拉列表中选择**阿里云 OSS**。 +3. 在 **Import** 页面,点击右上角的 **Export Data to**,在下拉列表中选择 **Alibaba Cloud OSS**。 4. 填写以下参数: - - **任务名称**:输入导出任务的名称。默认值为 `SNAPSHOT_{snapshot_time}`。 - - **导出数据**:选择要导出的数据库和表。 - - **数据格式**:选择 **SQL**、**CSV** 或 **Parquet**。 - - **压缩**:选择 **Gzip**、**Snappy**、**Zstd** 或 **None**。 - - **文件夹 URI**:输入要导出数据的阿里云 OSS URI,格式为 `oss:////`。 - - **AccessKey ID** 和 **AccessKey Secret**:输入具有访问存储桶权限的 AccessKey ID 和 AccessKey Secret。 + - **Task Name**:输入导出任务名称。默认值为 `SNAPSHOT_{snapshot_time}`。 + - **Exported Data**:选择你要导出的数据库和数据表。 + - **Data Format**:选择 **SQL**、**CSV** 或 **Parquet**。 + - **Compression**:选择 **Gzip**、**Snappy**、**Zstd** 或 **None**。 + - **Folder URI**:输入你要导出数据的阿里云 OSS URI,格式为 `oss:////`。 + - **AccessKey ID** 和 **AccessKey Secret**:输入有权限访问 bucket 的 AccessKey ID 和 AccessKey Secret。 -5. 点击**导出**。 +5. 点击 **Export**。
@@ -375,33 +375,33 @@ ticloud serverless export create -c --target-type AZURE_BLOB --azbl ticloud serverless export create -c --target-type OSS --oss.uri --oss.access-key-id --oss.access-key-secret --filter "database.table" ``` -- `oss.uri`:要导出数据的阿里云 OSS URI,格式为 `oss:////`。 -- `oss.access-key-id`:具有访问存储桶权限的用户的 AccessKey ID。 -- `oss.access-key-secret`:具有访问存储桶权限的用户的 AccessKey Secret。 +- `oss.uri`:你要导出数据的阿里云 OSS URI,格式为 `oss:////`。 +- `oss.access-key-id`:有权限访问 bucket 的用户的 AccessKey ID。 +- `oss.access-key-secret`:有权限访问 bucket 的用户的 AccessKey Secret。
### 取消导出任务 -要取消正在进行的导出任务,请执行以下步骤: +要取消正在进行的导出任务,请按以下步骤操作: -
+
-1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 +1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框切换组织、项目和集群。 -2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 +2. 点击目标集群名称进入概览页,然后点击左侧导航栏的 **Data** > **Import**。 -3. 在**导入**页面,点击**导出**查看导出任务列表。 +3. 在 **Import** 页面,点击 **Export** 查看导出任务列表。 -4. 选择要取消的导出任务,然后点击**操作**。 +4. 选择你要取消的导出任务,然后点击 **Action**。 -5. 从下拉列表中选择**取消**。注意,你只能取消处于**运行中**状态的导出任务。 +5. 在下拉列表中选择 **Cancel**。注意,你只能取消状态为 **Running** 的导出任务。
@@ -416,13 +416,13 @@ ticloud serverless export cancel -c -e ## 导出速度 -导出速度取决于你的[集群套餐](/tidb-cloud/select-cluster-tier.md#cluster-plans)。详情请参见下表: +导出速度取决于你的 [集群套餐](/tidb-cloud/select-cluster-tier.md#cluster-plans)。详情见下表: -| 套餐 | 导出速度 | +| 套餐类型 | 导出速度 | |:-------------------|:-------------------| -| 免费集群套餐 | 最高 25 MiB/s | -| 可扩展集群套餐 | 最高 100 MiB/s | +| 免费集群套餐 | 最高 25 MiB/s | +| 可扩展集群套餐 | 最高 100 MiB/s | -## 定价 +## 计费 -导出服务在 beta 期间免费。你只需为成功或已取消的导出任务过程中产生的[请求单元(RU)](/tidb-cloud/tidb-cloud-glossary.md#request-unit)付费。对于失败的导出任务,你将不会被收费。 +导出服务在 Beta 期间免费。你只需为导出过程中(无论任务成功或取消)产生的 [Request Units (RUs)](/tidb-cloud/tidb-cloud-glossary.md#request-unit) 支付费用。对于失败的导出任务,不会收取费用。 \ No newline at end of file diff --git a/tidb-cloud/serverless-external-storage.md b/tidb-cloud/serverless-external-storage.md index 37cd227ad15a8..ecbe08ecf6ca2 100644 --- a/tidb-cloud/serverless-external-storage.md +++ b/tidb-cloud/serverless-external-storage.md @@ -1,88 +1,88 @@ --- title: 配置 TiDB Cloud Serverless 外部存储访问 -summary: 了解如何配置 Amazon Simple Storage Service (Amazon S3) 访问。 +summary: 了解如何配置 Amazon Simple Storage Service (Amazon S3) 访问权限。 --- -# 配置 TiDB Cloud Serverless 的外部存储访问 +# 为 TiDB Cloud Serverless 配置外部存储访问 -如果你想在 TiDB Cloud Serverless 集群中从外部存储导入数据或将数据导出到外部存储,你需要配置跨账户访问。本文档描述了如何为 TiDB Cloud Serverless 集群配置外部存储访问。 +如果你希望在 TiDB Cloud Serverless 集群中从外部存储导入数据或将数据导出到外部存储,你需要配置跨账号访问。本文档介绍如何为 TiDB Cloud Serverless 集群配置外部存储访问权限。 -如果你需要为 TiDB Cloud Dedicated 集群配置这些外部存储,请参见[配置 TiDB Cloud Dedicated 的外部存储访问](/tidb-cloud/dedicated-external-storage.md)。 +如果你需要为 TiDB Cloud Dedicated 集群配置这些外部存储,请参见 [为 TiDB Cloud Dedicated 配置外部存储访问](/tidb-cloud/dedicated-external-storage.md)。 ## 配置 Amazon S3 访问 -要允许 TiDB Cloud Serverless 集群访问你的 Amazon S3 存储桶中的源数据,请使用以下任一方法为集群配置存储桶访问: +为了让 TiDB Cloud Serverless 集群访问你 Amazon S3 存储桶中的源数据,可以通过以下任一方式为集群配置存储桶访问权限: -- [使用角色 ARN](#使用角色-arn-配置-amazon-s3-访问):使用角色 ARN 访问你的 Amazon S3 存储桶。 -- [使用 AWS 访问密钥](#使用-aws-访问密钥配置-amazon-s3-访问):使用 IAM 用户的访问密钥访问你的 Amazon S3 存储桶。 +- [使用 Role ARN](#configure-amazon-s3-access-using-a-role-arn):使用 Role ARN 访问你的 Amazon S3 存储桶。 +- [使用 AWS 访问密钥](#configure-amazon-s3-access-using-an-aws-access-key):使用 IAM 用户的访问密钥访问你的 Amazon S3 存储桶。 -### 使用角色 ARN 配置 Amazon S3 访问 +### 使用 Role ARN 配置 Amazon S3 访问 -建议你使用 [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) 创建角色 ARN。按照以下步骤创建: +推荐使用 [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) 创建 Role ARN。请按照以下步骤创建: -> **注意:** +> **Note:** > -> 角色 ARN 访问 Amazon S3 仅支持云提供商为 AWS 的集群。如果你使用其他云提供商,请改用 AWS 访问密钥。更多信息,请参见[使用 AWS 访问密钥配置 Amazon S3 访问](#使用-aws-访问密钥配置-amazon-s3-访问)。 +> 仅当集群的云服务商为 AWS 时,才支持通过 Role ARN 访问 Amazon S3。如果你使用其他云服务商,请改用 AWS 访问密钥。更多信息请参见 [使用 AWS 访问密钥配置 Amazon S3 访问](#configure-amazon-s3-access-using-an-aws-access-key)。 -1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/) 并导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 - 2. 点击目标集群的名称以进入其概览页面,然后在左侧导航栏中点击 **Data** > **Import**。 + 2. 点击目标集群名称进入概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 打开**添加新 ARN**对话框。 +2. 打开 **Add New ARN** 对话框。 - - 如果你想从 Amazon S3 导入数据,按以下步骤打开**添加新 ARN**对话框: + - 如果你想从 Amazon S3 导入数据,按如下方式打开 **Add New ARN** 对话框: - 1. 点击**从 S3 导入**。 - 2. 填写**文件 URI**字段。 - 3. 选择 **AWS Role ARN** 并点击**点击此处使用 AWS CloudFormation 创建新的**。 + 1. 点击 **Import from S3**。 + 2. 填写 **File URI** 字段。 + 3. 选择 **AWS Role ARN**,并点击 **Click here to create new one with AWS CloudFormation**。 - - 如果你想将数据导出到 Amazon S3,按以下步骤打开**添加新 ARN**对话框: + - 如果你想将数据导出到 Amazon S3,按如下方式打开 **Add New ARN** 对话框: - 1. 点击**导出数据到...** > **Amazon S3**。如果你的集群之前从未导入或导出过任何数据,请点击页面底部的**点击此处导出数据到...** > **Amazon S3**。 - 2. 填写**文件夹 URI**字段。 - 3. 选择 **AWS Role ARN** 并点击**点击此处使用 AWS CloudFormation 创建新的**。 + 1. 点击 **Export data to...** > **Amazon S3**。如果你的集群之前未导入或导出过任何数据,请点击页面底部的 **Click here to export data to...** > **Amazon S3**。 + 2. 填写 **Folder URI** 字段。 + 3. 选择 **AWS Role ARN**,并点击 **Click here to create new one with AWS CloudFormation**。 -3. 使用 AWS CloudFormation 模板创建角色 ARN。 +3. 使用 AWS CloudFormation 模板创建 Role ARN。 - 1. 在**添加新 ARN**对话框中,点击 **AWS Console with CloudFormation Template**。 + 1. 在 **Add New ARN** 对话框中,点击 **AWS Console with CloudFormation Template**。 - 2. 登录 [AWS 管理控制台](https://console.aws.amazon.com),你将被重定向到 AWS CloudFormation **快速创建堆栈**页面。 + 2. 登录 [AWS 管理控制台](https://console.aws.amazon.com),你将被重定向到 AWS CloudFormation 的 **Quick create stack** 页面。 - 3. 填写**角色名称**。 + 3. 填写 **Role Name**。 - 4. 确认创建新角色并点击**创建堆栈**以创建角色 ARN。 + 4. 确认创建新角色并点击 **Create stack** 以创建 Role ARN。 - 5. CloudFormation 堆栈执行完成后,你可以点击**输出**选项卡,在**值**列中找到角色 ARN 值。 + 5. CloudFormation stack 执行完成后,你可以点击 **Outputs** 标签页,在 **Value** 列中找到 Role ARN 的值。 ![img.png](/media/tidb-cloud/serverless-external-storage/serverless-role-arn.png) -如果你在使用 AWS CloudFormation 创建角色 ARN 时遇到任何问题,可以按照以下步骤手动创建: +如果你在使用 AWS CloudFormation 创建 Role ARN 时遇到问题,可以按照以下步骤手动创建:
-点击此处查看详细信息 +点击此处查看详细步骤 -1. 在前面说明中描述的**添加新 ARN**对话框中,点击**遇到问题?手动创建角色 ARN**。你将获得 **TiDB Cloud 账户 ID** 和 **TiDB Cloud 外部 ID**。 +1. 在前述步骤描述的 **Add New ARN** 对话框中,点击 **Having trouble? Create Role ARN manually**。你将获得 **TiDB Cloud Account ID** 和 **TiDB Cloud External ID**。 2. 在 AWS 管理控制台中,为你的 Amazon S3 存储桶创建托管策略。 - 1. 登录 [AWS 管理控制台](https://console.aws.amazon.com/) 并打开 [Amazon S3 控制台](https://console.aws.amazon.com/s3/)。 + 1. 登录 [AWS 管理控制台](https://console.aws.amazon.com/),打开 [Amazon S3 控制台](https://console.aws.amazon.com/s3/)。 - 2. 在**存储桶**列表中,选择包含源数据的存储桶名称,然后点击**复制 ARN**以获取你的 S3 存储桶 ARN(例如,`arn:aws:s3:::tidb-cloud-source-data`)。记下存储桶 ARN 以供后续使用。 + 2. 在 **Buckets** 列表中,选择包含源数据的存储桶名称,然后点击 **Copy ARN** 获取你的 S3 存储桶 ARN(例如,`arn:aws:s3:::tidb-cloud-source-data`)。请记录该存储桶 ARN 以备后用。 - ![复制存储桶 ARN](/media/tidb-cloud/copy-bucket-arn.png) + ![Copy bucket ARN](/media/tidb-cloud/copy-bucket-arn.png) - 3. 打开 [IAM 控制台](https://console.aws.amazon.com/iam/),在左侧导航栏中点击**策略**,然后点击**创建策略**。 + 3. 打开 [IAM 控制台](https://console.aws.amazon.com/iam/),在左侧导航栏点击 **Policies**,然后点击 **Create Policy**。 - ![创建策略](/media/tidb-cloud/aws-create-policy.png) + ![Create a policy](/media/tidb-cloud/aws-create-policy.png) - 4. 在**创建策略**页面,点击 **JSON** 选项卡。 + 4. 在 **Create policy** 页面,点击 **JSON** 标签。 - 5. 根据你的需求在策略文本字段中配置策略。以下是一个可用于从 TiDB Cloud Serverless 集群导出数据和导入数据的示例。 + 5. 根据你的需求在策略文本框中配置策略。以下示例可用于从 TiDB Cloud Serverless 集群导出数据和导入数据。 - 从 TiDB Cloud Serverless 集群导出数据需要 **s3:PutObject** 和 **s3:ListBucket** 权限。 - - 将数据导入 TiDB Cloud Serverless 集群需要 **s3:GetObject**、**s3:GetObjectVersion** 和 **s3:ListBucket** 权限。 + - 向 TiDB Cloud Serverless 集群导入数据需要 **s3:GetObject**、**s3:GetObjectVersion** 和 **s3:ListBucket** 权限。 ```json { @@ -110,18 +110,18 @@ summary: 了解如何配置 Amazon Simple Storage Service (Amazon S3) 访问。 } ``` - 在策略文本字段中,将以下配置替换为你自己的值。 + 在策略文本框中,将以下配置替换为你自己的值。 - `"Resource": "//*"`。例如: - - 如果你的源数据存储在 `tidb-cloud-source-data` 存储桶的根目录中,使用 `"Resource": "arn:aws:s3:::tidb-cloud-source-data/*"`。 - - 如果你的源数据存储在存储桶的 `mydata` 目录中,使用 `"Resource": "arn:aws:s3:::tidb-cloud-source-data/mydata/*"`。 + - 如果你的源数据存储在 `tidb-cloud-source-data` 存储桶的根目录下,使用 `"Resource": "arn:aws:s3:::tidb-cloud-source-data/*"`。 + - 如果你的源数据存储在存储桶的 `mydata` 目录下,使用 `"Resource": "arn:aws:s3:::tidb-cloud-source-data/mydata/*"`。 - 确保在目录末尾添加 `/*`,以便 TiDB Cloud 可以访问此目录中的所有文件。 + 请确保目录末尾添加了 `/*`,以便 TiDB Cloud 能访问该目录下的所有文件。 - - `"Resource": ""`,例如 `"Resource": "arn:aws:s3:::tidb-cloud-source-data"`。 + - `"Resource": ""`,例如,`"Resource": "arn:aws:s3:::tidb-cloud-source-data"`。 - - 如果你已启用带有客户管理密钥加密的 AWS Key Management Service 密钥(SSE-KMS),请确保策略中包含以下配置。`"arn:aws:kms:ap-northeast-1:105880447796:key/c3046e91-fdfc-4f3a-acff-00597dd3801f"` 是存储桶的示例 KMS 密钥。 + - 如果你启用了 AWS Key Management Service 密钥(SSE-KMS)并使用客户管理密钥加密,请确保策略中包含以下配置。`"arn:aws:kms:ap-northeast-1:105880447796:key/c3046e91-fdfc-4f3a-acff-00597dd3801f"` 是该存储桶的一个示例 KMS 密钥。 ``` { @@ -134,161 +134,161 @@ summary: 了解如何配置 Amazon Simple Storage Service (Amazon S3) 访问。 } ``` - - 如果你的存储桶中的对象是从另一个加密存储桶复制的,KMS 密钥值需要包含两个存储桶的密钥。例如,`"Resource": ["arn:aws:kms:ap-northeast-1:105880447796:key/c3046e91-fdfc-4f3a-acff-00597dd3801f","arn:aws:kms:ap-northeast-1:495580073302:key/0d7926a7-6ecc-4bf7-a9c1-a38f0faec0cd"]`。 + - 如果你的存储桶中的对象是从另一个加密存储桶复制过来的,KMS 密钥值需要包含两个存储桶的密钥。例如,`"Resource": ["arn:aws:kms:ap-northeast-1:105880447796:key/c3046e91-fdfc-4f3a-acff-00597dd3801f","arn:aws:kms:ap-northeast-1:495580073302:key/0d7926a7-6ecc-4bf7-a9c1-a38f0faec0cd"]`。 - 6. 点击**下一步**。 + 6. 点击 **Next**。 - 7. 设置策略名称,添加策略标签(可选),然后点击**创建策略**。 + 7. 设置策略名称,添加策略标签(可选),然后点击 **Create policy**。 -3. 在 AWS 管理控制台中,为 TiDB Cloud 创建访问角色并获取角色 ARN。 +3. 在 AWS 管理控制台中,为 TiDB Cloud 创建访问角色并获取 Role ARN。 - 1. 在 [IAM 控制台](https://console.aws.amazon.com/iam/)中,在左侧导航栏中点击**角色**,然后点击**创建角色**。 + 1. 在 [IAM 控制台](https://console.aws.amazon.com/iam/)中,点击左侧导航栏的 **Roles**,然后点击 **Create role**。 - ![创建角色](/media/tidb-cloud/aws-create-role.png) + ![Create a role](/media/tidb-cloud/aws-create-role.png) - 2. 要创建角色,填写以下信息: + 2. 创建角色时,填写以下信息: - - 在**可信实体类型**中,选择 **AWS 账户**。 - - 在 **AWS 账户**中,选择**其他 AWS 账户**,然后将 TiDB Cloud 账户 ID 粘贴到**账户 ID**字段中。 - - 在**选项**中,点击**需要外部 ID(当第三方将承担此角色时的最佳实践)**,然后将 TiDB Cloud 外部 ID 粘贴到**外部 ID**字段中。如果创建角色时没有需要外部 ID,一旦为项目中的一个 TiDB 集群完成配置,该项目中的所有 TiDB 集群都可以使用相同的角色 ARN 访问你的 Amazon S3 存储桶。如果使用账户 ID 和外部 ID 创建角色,则只有相应的 TiDB 集群可以访问存储桶。 + - 在 **Trusted entity type** 中选择 **AWS account**。 + - 在 **An AWS account** 中选择 **Another AWS account**,然后将 TiDB Cloud account ID 粘贴到 **Account ID** 字段。 + - 在 **Options** 中,点击 **Require external ID (Best practice when a third party will assume this role)**,然后将 TiDB Cloud External ID 粘贴到 **External ID** 字段。如果创建角色时未勾选 Require external ID,则该项目下所有 TiDB 集群都可以使用同一个 Role ARN 访问你的 Amazon S3 存储桶。如果使用 account ID 和 external ID 创建角色,则只有对应的 TiDB 集群可以访问该存储桶。 - 3. 点击**下一步**打开策略列表,选择你刚刚创建的策略,然后点击**下一步**。 + 3. 点击 **Next** 打开策略列表,选择你刚刚创建的策略,然后点击 **Next**。 - 4. 在**角色详细信息**中,为角色设置名称,然后点击右下角的**创建角色**。创建角色后,将显示角色列表。 + 4. 在 **Role details** 中设置角色名称,然后点击右下角的 **Create role**。角色创建完成后,会显示角色列表。 - 5. 在角色列表中,点击你刚刚创建的角色名称以进入其摘要页面,然后你可以获取角色 ARN。 + 5. 在角色列表中,点击你刚刚创建的角色名称进入其概览页面,然后你可以获取 Role ARN。 - ![复制 AWS 角色 ARN](/media/tidb-cloud/aws-role-arn.png) + ![Copy AWS role ARN](/media/tidb-cloud/aws-role-arn.png)
### 使用 AWS 访问密钥配置 Amazon S3 访问 -建议你使用 IAM 用户(而不是 AWS 账户根用户)创建访问密钥。 +推荐使用 IAM 用户(而不是 AWS 账号 root 用户)来创建访问密钥。 -按照以下步骤配置访问密钥: +请按照以下步骤配置访问密钥: -1. 创建 IAM 用户。更多信息,请参见[创建 IAM 用户](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html#id_users_create_console)。 +1. 创建 IAM 用户。更多信息请参见 [创建 IAM 用户](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html#id_users_create_console)。 -2. 使用你的 AWS 账户 ID 或账户别名以及你的 IAM 用户名和密码登录 [IAM 控制台](https://console.aws.amazon.com/iam)。 +2. 使用你的 AWS 账号 ID 或账号别名,以及 IAM 用户名和密码登录 [IAM 控制台](https://console.aws.amazon.com/iam)。 -3. 创建访问密钥。更多信息,请参见[为 IAM 用户创建访问密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html#Using_CreateAccessKey)。 +3. 创建访问密钥。更多信息请参见 [为 IAM 用户创建访问密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html#Using_CreateAccessKey)。 -> **注意:** +> **Note:** > -> TiDB Cloud 不会存储你的访问密钥。建议你在导入或导出完成后[删除访问密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html#Using_CreateAccessKey)。 +> TiDB Cloud 不会存储你的访问密钥。建议在导入或导出完成后 [删除访问密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html#Using_CreateAccessKey)。 ## 配置 GCS 访问 -要允许 TiDB Cloud Serverless 集群访问你的 GCS 存储桶,你需要为存储桶配置 GCS 访问。你可以使用服务账号密钥配置存储桶访问: +为了让 TiDB Cloud Serverless 集群访问你的 GCS 存储桶,你需要为存储桶配置 GCS 访问权限。你可以使用服务账号密钥来配置存储桶访问: -按照以下步骤配置服务账号密钥: +请按照以下步骤配置服务账号密钥: -1. 在 Google Cloud [服务账号页面](https://console.cloud.google.com/iam-admin/serviceaccounts),点击**创建服务账号**以创建服务账号。更多信息,请参见[创建服务账号](https://cloud.google.com/iam/docs/creating-managing-service-accounts)。 +1. 在 Google Cloud [服务账号页面](https://console.cloud.google.com/iam-admin/serviceaccounts)点击 **CREATE SERVICE ACCOUNT** 创建服务账号。更多信息请参见 [创建服务账号](https://cloud.google.com/iam/docs/creating-managing-service-accounts)。 1. 输入服务账号名称。 - 2. 可选:输入服务账号的描述。 - 3. 点击**创建并继续**以创建服务账号。 - 4. 在`授予此服务账号对项目的访问权限`中,选择具有所需权限的 [IAM 角色](https://cloud.google.com/iam/docs/understanding-roles)。 + 2. 可选:输入服务账号描述。 + 3. 点击 **CREATE AND CONTINUE** 创建服务账号。 + 4. 在 `Grant this service account access to project` 中,选择具有所需权限的 [IAM 角色](https://cloud.google.com/iam/docs/understanding-roles)。 - 从 TiDB Cloud Serverless 集群导出数据需要具有 `storage.objects.create` 权限的角色。 - - 将数据导入 TiDB Cloud Serverless 集群需要具有 `storage.buckets.get`、`storage.objects.get` 和 `storage.objects.list` 权限的角色。 + - 向 TiDB Cloud Serverless 集群导入数据需要具有 `storage.buckets.get`、`storage.objects.get` 和 `storage.objects.list` 权限的角色。 - 5. 点击**继续**进入下一步。 - 6. 可选:在`授予用户访问此服务账号的权限`中,选择需要[将服务账号附加到其他资源](https://cloud.google.com/iam/docs/attach-service-accounts)的成员。 - 7. 点击**完成**以完成服务账号创建。 + 5. 点击 **Continue** 进入下一步。 + 6. 可选:在 `Grant users access to this service account` 中,选择需要 [将服务账号附加到其他资源](https://cloud.google.com/iam/docs/attach-service-accounts) 的成员。 + 7. 点击 **Done** 完成服务账号创建。 ![service-account](/media/tidb-cloud/serverless-external-storage/gcs-service-account.png) -2. 点击服务账号,然后在`密钥`页面点击**添加密钥**以创建服务账号密钥。 +2. 点击服务账号,然后在 `KEYS` 页面点击 **ADD KEY** 创建服务账号密钥。 ![service-account-key](/media/tidb-cloud/serverless-external-storage/gcs-service-account-key.png) -3. 选择默认的 `JSON` 密钥类型,然后点击**创建**以下载 Google Cloud 凭证文件。该文件包含配置 TiDB Cloud Serverless 集群的 GCS 访问时需要使用的服务账号密钥。 +3. 选择默认的 `JSON` 密钥类型,然后点击 **CREATE** 下载 Google Cloud 凭证文件。该文件包含你在为 TiDB Cloud Serverless 集群配置 GCS 访问时需要使用的服务账号密钥。 ## 配置 Azure Blob Storage 访问 -要允许 TiDB Cloud Serverless 访问你的 Azure Blob 容器,你需要为容器创建服务 SAS 令牌。 +为了让 TiDB Cloud Serverless 访问你的 Azure Blob 容器,你需要为容器创建服务 SAS token。 -你可以使用 [Azure ARM 模板](https://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/overview)(推荐)或手动配置创建 SAS 令牌。 +你可以使用 [Azure ARM 模板](https://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/overview)(推荐)或手动配置来创建 SAS token。 -要使用 Azure ARM 模板创建 SAS 令牌,请按照以下步骤操作: +要使用 Azure ARM 模板创建 SAS token,请按照以下步骤操作: -1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/) 并导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 - 2. 点击目标集群的名称以进入其概览页面,然后在左侧导航栏中点击 **Data** > **Import**。 + 2. 点击目标集群名称进入概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 打开**通过 ARM 模板部署生成新的 SAS 令牌**对话框。 +2. 打开 **Generate New SAS Token via ARM Template Deployment** 对话框。 - 1. 点击**导出数据到...** > **Azure Blob Storage**。如果你的集群之前从未导入或导出过任何数据,请点击页面底部的**点击此处导出数据到...** > **Azure Blob Storage**。 + 1. 点击 **Export data to...** > **Azure Blob Storage**。如果你的集群之前未导入或导出过任何数据,请点击页面底部的 **Click here to export data to...** > **Azure Blob Storage**。 - 2. 滚动到 **Azure Blob Storage 设置**区域,然后在 SAS 令牌字段下点击**点击此处使用 Azure ARM 模板创建新的**。 + 2. 向下滚动到 **Azure Blob Storage Settings** 区域,然后在 SAS Token 字段下点击 **Click here to create a new one with Azure ARM template**。 -3. 使用 Azure ARM 模板创建 SAS 令牌。 +3. 使用 Azure ARM 模板创建 SAS token。 - 1. 在**通过 ARM 模板部署生成新的 SAS 令牌**对话框中,点击**点击打开预配置 ARM 模板的 Azure 门户**。 + 1. 在 **Generate New SAS Token via ARM Template Deployment** 对话框中,点击 **Click to open the Azure Portal with the pre-configured ARM template**。 - 2. 登录 Azure 后,你将被重定向到 Azure **自定义部署**页面。 + 2. 登录 Azure 后,你将被重定向到 Azure **Custom deployment** 页面。 - 3. 在**自定义部署**页面中填写**资源组**和**存储账号名称**。你可以从容器所在的存储账号概览页面获取所有信息。 + 3. 在 **Custom deployment** 页面填写 **Resource group** 和 **Storage Account Name**。你可以在容器所在的存储账号概览页面获取所有信息。 ![azure-storage-account-overview](/media/tidb-cloud/serverless-external-storage/azure-storage-account-overview.png) - 4. 点击**查看 + 创建**或**下一步**以查看部署。点击**创建**开始部署。 + 4. 点击 **Review + create** 或 **Next** 以审核部署。点击 **Create** 开始部署。 - 5. 完成后,你将被重定向到部署概览页面。导航到**输出**部分以获取 SAS 令牌。 + 5. 部署完成后,你将被重定向到部署概览页面。前往 **Outputs** 区域获取 SAS token。 -如果你在使用 Azure ARM 模板创建 SAS 令牌时遇到任何问题,请按照以下步骤手动创建: +如果你在使用 Azure ARM 模板创建 SAS token 时遇到问题,请按照以下步骤手动创建:
-点击此处查看详细信息 +点击此处查看详细步骤 -1. 在 [Azure 存储账号](https://portal.azure.com/#browse/Microsoft.Storage%2FStorageAccounts)页面,点击容器所属的存储账号。 +1. 在 [Azure Storage account](https://portal.azure.com/#browse/Microsoft.Storage%2FStorageAccounts) 页面,点击包含容器的存储账号。 -2. 在你的**存储账号**页面,点击**安全性 + 网络**,然后点击**共享访问签名**。 +2. 在 **Storage account** 页面,点击 **Security+network**,然后点击 **Shared access signature**。 ![sas-position](/media/tidb-cloud/serverless-external-storage/azure-sas-position.png) -3. 在**共享访问签名**页面,按如下方式创建具有所需权限的服务 SAS 令牌。更多信息,请参见[创建服务 SAS 令牌](https://docs.microsoft.com/en-us/azure/storage/common/storage-sas-overview)。 +3. 在 **Shared access signature** 页面,按如下方式创建具有所需权限的服务 SAS token。更多信息请参见 [创建服务 SAS token](https://docs.microsoft.com/en-us/azure/storage/common/storage-sas-overview)。 - 1. 在**允许的服务**部分,选择 **Blob** 服务。 - 2. 在**允许的资源类型**部分,选择**容器**和**对象**。 - 3. 在**允许的权限**部分,根据需要选择权限。 + 1. 在 **Allowed services** 区域,选择 **Blob** 服务。 + 2. 在 **Allowed Resource types** 区域,选择 **Container** 和 **Object**。 + 3. 在 **Allowed permissions** 区域,根据需要选择权限。 - - 从 TiDB Cloud Serverless 集群导出数据需要**读取**和**写入**权限。 - - 将数据导入 TiDB Cloud Serverless 集群需要**读取**和**列表**权限。 + - 从 TiDB Cloud Serverless 集群导出数据需要 **Read** 和 **Write** 权限。 + - 向 TiDB Cloud Serverless 集群导入数据需要 **Read** 和 **List** 权限。 - 4. 根据需要调整**开始和到期日期/时间**。 - 5. 其他设置可以保持默认值。 + 4. 根据需要调整 **Start and expiry date/time**。 + 5. 其他设置可保持默认值。 ![sas-create](/media/tidb-cloud/serverless-external-storage/azure-sas-create.png) -4. 点击**生成 SAS 和连接字符串**以生成 SAS 令牌。 +4. 点击 **Generate SAS and connection string** 生成 SAS token。
## 配置阿里云对象存储服务(OSS)访问 -要允许 TiDB Cloud Serverless 访问你的阿里云 OSS 存储桶,你需要为存储桶创建 AccessKey 对。 +为了让 TiDB Cloud Serverless 访问你的阿里云 OSS 存储桶,你需要为存储桶创建 AccessKey 对。 -按照以下步骤配置 AccessKey 对: +请按照以下步骤配置 AccessKey 对: -1. 创建 RAM 用户并获取 AccessKey 对。更多信息,请参见[创建 RAM 用户](https://www.alibabacloud.com/help/en/ram/user-guide/create-a-ram-user)。 +1. 创建 RAM 用户并获取 AccessKey 对。更多信息请参见 [创建 RAM 用户](https://www.alibabacloud.com/help/en/ram/user-guide/create-a-ram-user)。 - 在**访问方式**部分,选择**使用永久 AccessKey 访问**。 + 在 **Access Mode** 区域,选择 **Using permanent AccessKey to access**。 -2. 创建具有所需权限的自定义策略。更多信息,请参见[创建自定义策略](https://www.alibabacloud.com/help/en/ram/user-guide/create-a-custom-policy)。 +2. 创建具有所需权限的自定义策略。更多信息请参见 [创建自定义策略](https://www.alibabacloud.com/help/en/ram/user-guide/create-a-custom-policy)。 - - 在**效果**部分,选择**允许**。 - - 在**服务**部分,选择**对象存储服务**。 - - 在**操作**部分,根据需要选择权限。 + - 在 **Effect** 区域,选择 **Allow**。 + - 在 **Service** 区域,选择 **Object Storage Service**。 + - 在 **Action** 区域,根据需要选择权限。 - 要将数据导入 TiDB Cloud Serverless 集群,授予 **oss:GetObject**、**oss:GetBucketInfo** 和 **oss:ListObjects** 权限。 + 向 TiDB Cloud Serverless 集群导入数据时,授予 **oss:GetObject**、**oss:GetBucketInfo** 和 **oss:ListObjects** 权限。 - 要从 TiDB Cloud Serverless 集群导出数据,授予 **oss:PutObject**、**oss:GetBucketInfo** 和 **oss:ListBuckets** 权限。 + 从 TiDB Cloud Serverless 集群导出数据时,授予 **oss:PutObject**、**oss:GetBucketInfo** 和 **oss:ListBuckets** 权限。 - - 在**资源**部分,选择存储桶和存储桶中的对象。 + - 在 **Resource** 区域,选择存储桶及其内的对象。 -3. 将自定义策略附加到 RAM 用户。更多信息,请参见[为 RAM 用户授权](https://www.alibabacloud.com/help/en/ram/user-guide/grant-permissions-to-the-ram-user)。 +3. 将自定义策略附加到 RAM 用户。更多信息请参见 [为 RAM 用户授权](https://www.alibabacloud.com/help/en/ram/user-guide/grant-permissions-to-the-ram-user)。 \ No newline at end of file diff --git a/tidb-cloud/serverless-faqs.md b/tidb-cloud/serverless-faqs.md index 3b2a4b8cb29b8..7037d80f49c8c 100644 --- a/tidb-cloud/serverless-faqs.md +++ b/tidb-cloud/serverless-faqs.md @@ -1,6 +1,6 @@ --- title: TiDB Cloud Serverless 常见问题 -summary: 了解关于 TiDB Cloud Serverless 的常见问题(FAQ)。 +summary: 了解与 TiDB Cloud Serverless 相关的最常见问题(FAQ)。 aliases: ['/tidbcloud/serverless-tier-faqs'] --- @@ -8,146 +8,146 @@ aliases: ['/tidbcloud/serverless-tier-faqs'] -本文列出了关于 TiDB Cloud Serverless 的最常见问题。 +本文档列出了关于 TiDB Cloud Serverless 的最常见问题。 -## 一般问题 +## 通用常见问题 ### 什么是 TiDB Cloud Serverless? -TiDB Cloud Serverless 为你和你的组织提供具有完整 HTAP 功能的 TiDB 数据库。它是一个完全托管的、自动扩展的 TiDB 部署,让你可以立即开始使用数据库,无需关心底层节点即可开发和运行应用程序,并根据应用程序的工作负载变化自动扩展。 +TiDB Cloud Serverless 为你和你的组织提供具备完整 HTAP 能力的 TiDB 数据库。它是 TiDB 的全托管、自动弹性伸缩的部署方式,让你可以立即开始使用数据库,开发和运行应用程序时无需关心底层节点,并且能够根据应用负载变化自动扩缩容。 ### 如何开始使用 TiDB Cloud Serverless? -参考 5 分钟[快速上手 TiDB Cloud](/tidb-cloud/tidb-cloud-quickstart.md)。 +请参考 5 分钟上手的 [TiDB Cloud 快速入门](/tidb-cloud/tidb-cloud-quickstart.md)。 -### 我可以在 TiDB Cloud 中创建多少个 TiDB Cloud Serverless 集群? +### 在 TiDB Cloud 中,我最多可以创建多少个 TiDB Cloud Serverless 集群? -对于 TiDB Cloud 中的每个组织,默认情况下最多可以创建五个[免费集群](/tidb-cloud/select-cluster-tier.md#free-cluster-plan)。要创建更多 TiDB Cloud Serverless 集群,你需要添加信用卡并创建[可扩展集群](/tidb-cloud/select-cluster-tier.md#scalable-cluster-plan)以供使用。 +对于 TiDB Cloud 中的每个组织,默认最多可以创建五个 [免费集群](/tidb-cloud/select-cluster-tier.md#free-cluster-plan)。如需创建更多 TiDB Cloud Serverless 集群,你需要添加信用卡并创建 [可扩展集群](/tidb-cloud/select-cluster-tier.md#scalable-cluster-plan) 以供使用。 ### TiDB Cloud 的所有功能在 TiDB Cloud Serverless 上都完全支持吗? -某些 TiDB Cloud 功能在 TiDB Cloud Serverless 上部分支持或不支持。更多信息,请参见 [TiDB Cloud Serverless 限制和配额](/tidb-cloud/serverless-limitations.md)。 +部分 TiDB Cloud 功能在 TiDB Cloud Serverless 上仅部分支持或暂不支持。详细信息请参见 [TiDB Cloud Serverless 限制与配额](/tidb-cloud/serverless-limitations.md)。 -### TiDB Cloud Serverless 何时会在 AWS 以外的云平台(如 Google Cloud 或 Azure)上可用? +### TiDB Cloud Serverless 何时会支持除 AWS 以外的云平台,如 Google Cloud 或 Azure? -我们正在积极扩展 TiDB Cloud Serverless 到其他云平台,包括 Google Cloud 和 Azure。但是,由于我们目前专注于填补差距并确保所有环境中的功能无缝运行,因此目前还没有确切的时间表。请放心,我们正在努力使 TiDB Cloud Serverless 在更多云平台上可用,我们会随着进展及时更新社区。 +我们正在积极推进 TiDB Cloud Serverless 向包括 Google Cloud 和 Azure 在内的其他云平台扩展。但目前尚无具体时间表,因为我们当前专注于弥补功能差距并确保所有环境下的无缝体验。请放心,我们会持续努力让 TiDB Cloud Serverless 支持更多云平台,并在进展过程中及时向社区更新。 -### 我在 TiDB Cloud Serverless 可用之前创建了一个 Developer Tier 集群。我还能继续使用我的集群吗? +### 在 TiDB Cloud Serverless 推出前,我创建了 Developer Tier 集群。还能继续使用我的集群吗? -是的,你的 Developer Tier 集群已自动迁移到 TiDB Cloud Serverless 集群,为你提供改进的用户体验,而不会中断你之前的使用。 +可以,你的 Developer Tier 集群已自动迁移为 TiDB Cloud Serverless 集群,无需中断即可获得更好的用户体验。 -### TiDB Cloud Serverless 中的列式存储是什么? +### 什么是 TiDB Cloud Serverless 的列式存储? -TiDB Cloud Serverless 中的列式存储作为行式存储的额外副本,确保强一致性。与传统的按行存储数据的行式存储不同,列式存储按列组织数据,优化数据分析任务。 +TiDB Cloud Serverless 的列式存储作为行存储的额外副本,确保强一致性。与传统的行存储(按行存储数据)不同,列式存储按列组织数据,优化了数据分析任务。 -列式存储是 TiDB 的一个关键特性,通过无缝融合事务和分析工作负载,实现混合事务和分析处理(HTAP)功能。 +列式存储是实现 TiDB HTAP(混合事务与分析处理)能力的关键特性,通过无缝融合事务型和分析型负载。 -为了高效管理列式存储数据,TiDB Cloud Serverless 使用独立的弹性 TiFlash 引擎。在查询执行期间,优化器指导集群自动决定是从行式存储还是列式存储中检索数据。 +为高效管理列式存储数据,TiDB Cloud Serverless 使用独立的弹性 TiFlash 引擎。在查询执行时,优化器会引导集群自动决定是从行存储还是列存储读取数据。 -### 什么时候应该在 TiDB Cloud Serverless 中使用列式存储? +### 在哪些场景下应使用 TiDB Cloud Serverless 的列式存储? -在以下场景中,考虑在 TiDB Cloud Serverless 中使用列式存储: +在以下场景下建议使用 TiDB Cloud Serverless 的列式存储: -- 你的工作负载涉及需要高效数据扫描和聚合的分析任务。 -- 你优先考虑提高性能,特别是对于分析工作负载。 -- 你想要将分析处理与事务处理隔离,以防止对事务处理(TP)工作负载的性能影响。独立的列式存储有助于优化这些不同的工作负载模式。 +- 你的负载包含需要高效数据扫描和聚合的分析型任务。 +- 你优先考虑分析型负载的性能提升。 +- 你希望将分析处理与事务处理隔离,避免对 TP(事务处理)负载产生性能影响。独立的列式存储有助于优化不同负载模式。 -在这些场景中,列式存储可以显著提高查询性能,并为系统中的混合工作负载提供无缝体验。 +在这些场景下,列式存储可以显著提升查询性能,并为系统中的混合负载提供无缝体验。 ### 如何在 TiDB Cloud Serverless 中使用列式存储? -在 TiDB Cloud Serverless 中使用列式存储与在 TiFlash 中使用类似。你可以在表级和数据库级启用列式存储: +在 TiDB Cloud Serverless 中使用列式存储的方式与 TiFlash 类似。你可以在表级或数据库级启用列式存储: -- 表级:为表分配 TiFlash 副本以启用该特定表的列式存储。 -- 数据库级:为数据库中的所有表配置 TiFlash 副本,以在整个数据库中使用列式存储。 +- 表级:为某个表分配 TiFlash 副本,即可为该表启用列式存储。 +- 数据库级:为数据库中的所有表配置 TiFlash 副本,实现整个数据库的列式存储。 -为表设置 TiFlash 副本后,TiDB 会自动将数据从该表的行式存储复制到列式存储。这确保了数据一致性并优化了分析查询的性能。 +为表设置 TiFlash 副本后,TiDB 会自动将该表的数据从行存储同步到列式存储,确保数据一致性并优化分析型查询的性能。 -有关如何设置 TiFlash 副本的更多信息,请参见[创建 TiFlash 副本](/tiflash/create-tiflash-replicas.md)。 +关于如何设置 TiFlash 副本,详见 [创建 TiFlash 副本](/tiflash/create-tiflash-replicas.md)。 -## 计费和计量问题 +## 计费与计量常见问题 -### 什么是请求单元? +### 什么是 Request Units? -TiDB Cloud Serverless 采用按需付费模式,这意味着你只需为存储空间和集群使用付费。在此模式下,所有集群活动(如 SQL 查询、批量操作和后台作业)都以[请求单元(RUs)](/tidb-cloud/tidb-cloud-glossary.md#request-unit)来量化。RU 是对集群上发起的请求的大小和复杂性的抽象度量。更多信息,请参见 [TiDB Cloud Serverless 定价详情](https://www.pingcap.com/tidb-cloud-serverless-pricing-details/)。 +TiDB Cloud Serverless 采用按需付费模式,你只需为存储空间和集群使用量付费。在该模式下,所有集群活动(如 SQL 查询、批量操作和后台任务)都以 [Request Units(RUs)](/tidb-cloud/tidb-cloud-glossary.md#request-unit) 进行量化。RU 是对集群请求规模和复杂度的抽象度量。详细信息请参见 [TiDB Cloud Serverless 价格详情](https://www.pingcap.com/tidb-cloud-serverless-pricing-details/)。 -### TiDB Cloud Serverless 有免费计划吗? +### TiDB Cloud Serverless 是否有免费套餐? -对于组织中的前五个 TiDB Cloud Serverless 集群,TiDB Cloud 为每个集群提供以下免费使用配额: +对于你所在组织的前五个 TiDB Cloud Serverless 集群,TiDB Cloud 为每个集群提供如下免费额度: -- 行式存储:5 GiB -- 列式存储:5 GiB -- [请求单元(RUs)](/tidb-cloud/tidb-cloud-glossary.md#request-unit):每月 5000 万 RUs +- 行存储:5 GiB +- 列存储:5 GiB +- [Request Units(RUs)](/tidb-cloud/tidb-cloud-glossary.md#request-unit):每月 5000 万 RU -如果你使用可扩展集群,超出免费配额的使用将被收费。对于免费集群,一旦达到免费配额,该集群的读写操作将被限制,直到你升级到可扩展集群或在新月份开始时重置使用量。 +如果你使用的是可扩展集群,超出免费额度的部分将会计费。对于免费集群,达到免费额度后,该集群的读写操作将被限流,直到你升级为可扩展集群或新月初重置用量。 -更多信息,请参见 [TiDB Cloud Serverless 使用配额](/tidb-cloud/select-cluster-tier.md#usage-quota)。 +更多信息请参见 [TiDB Cloud Serverless 使用额度](/tidb-cloud/select-cluster-tier.md#usage-quota)。 -### 免费计划有什么限制? +### 免费套餐有哪些限制? -在免费计划下,由于资源不可扩展,集群性能受限。这导致每个查询的内存分配限制为 256 MiB,并可能导致每秒请求单元(RUs)的明显瓶颈。要最大化集群性能并避免这些限制,你可以升级到[可扩展集群](/tidb-cloud/select-cluster-tier.md#scalable-cluster-plan)。 +在免费套餐下,由于资源不可扩展,集群性能受到限制。每个查询的内存分配被限制为 256 MiB,并且每秒的 RU 可能出现明显瓶颈。为最大化集群性能并避免这些限制,你可以升级为 [可扩展集群](/tidb-cloud/select-cluster-tier.md#scalable-cluster-plan)。 -### 如何估算我的工作负载所需的 RUs 数量并规划每月预算? +### 如何评估我的工作负载所需的 RU 数量并规划每月预算? -要获取单个 SQL 语句的 RU 消耗,你可以使用 [`EXPLAIN ANALYZE`](/sql-statements/sql-statement-explain-analyze.md#ru-request-unit-consumption) SQL 语句。但是,需要注意的是,`EXPLAIN ANALYZE` 返回的 RUs 使用量不包括出口 RUs,因为出口使用量是在网关中单独测量的,TiDB 服务器并不知道这些信息。 +要获取单条 SQL 语句的 RU 消耗,可以使用 [`EXPLAIN ANALYZE`](/sql-statements/sql-statement-explain-analyze.md#ru-request-unit-consumption) SQL 语句。但需要注意,`EXPLAIN ANALYZE` 返回的 RU 用量不包含出口(egress)RUs,因为出口用量在网关单独计量,TiDB 服务器无法得知。 -要获取集群使用的 RUs 和存储量,请查看集群概览页面上的**本月使用量**面板。通过此面板中的过去资源使用数据和实时资源使用情况,你可以跟踪集群的资源消耗并估算合理的支出限额。如果免费配额无法满足你的需求,你可以升级到[可扩展集群](/tidb-cloud/select-cluster-tier.md#scalable-cluster-plan)并编辑支出限额。更多信息,请参见 [TiDB Cloud Serverless 使用配额](/tidb-cloud/select-cluster-tier.md#usage-quota)。 +要查看集群的 RU 和存储用量,请在集群概览页面查看 **Usage this month** 面板。结合历史资源用量和该面板的实时用量数据,你可以跟踪集群资源消耗并合理预估支出上限。如果免费额度无法满足需求,你可以升级为 [可扩展集群](/tidb-cloud/select-cluster-tier.md#scalable-cluster-plan) 并设置支出上限。更多信息请参见 [TiDB Cloud Serverless 使用额度](/tidb-cloud/select-cluster-tier.md#usage-quota)。 -### 如何优化我的工作负载以最小化消耗的 RUs 数量? +### 如何优化我的工作负载以减少 RU 消耗? -确保你的查询已按照[优化 SQL 性能](/develop/dev-guide-optimize-sql-overview.md)中的指南进行了仔细优化。要识别消耗最多 RUs 的 SQL 语句,请导航到集群的[**诊断**](/tidb-cloud/tune-performance.md#view-the-diagnosis-page)页面,然后查看 **SQL 语句**标签,你可以在其中观察 SQL 执行情况并按**总 RU**或**平均 RU**查看排名靠前的语句。更多信息,请参见[语句分析](/tidb-cloud/tune-performance.md#statement-analysis)。此外,最小化出口流量的数量对于减少 RUs 消耗也很重要。为此,建议在查询中只返回必要的列和行,这反过来有助于减少网络出口流量。这可以通过仔细选择和过滤要返回的列和行来实现,从而优化网络利用率。 +请确保你的查询已根据 [SQL 性能优化](/develop/dev-guide-optimize-sql-overview.md) 指南进行优化,以获得最佳性能。要识别消耗 RU 最多的 SQL 语句,可前往集群的 [**Diagnosis**](/tidb-cloud/tune-performance.md#view-the-diagnosis-page) 页面,查看 **SQL Statements** 标签页,在此可按 **Total RU** 或 **Mean RU** 排序,观察 SQL 执行情况和高消耗语句。更多信息请参见 [语句分析](/tidb-cloud/tune-performance.md#statement-analysis)。此外,减少出口流量同样有助于降低 RU 消耗。建议在查询中仅返回必要的列和行,从而减少网络出口流量。通过精确选择和过滤返回的列与行,可以优化网络利用率。 -### TiDB Cloud Serverless 如何计量存储? +### TiDB Cloud Serverless 的存储如何计量? -存储根据 TiDB Cloud Serverless 集群中存储的数据量计量,以每月 GiB 为单位。它通过将所有表和索引的总大小(不包括数据压缩或副本)乘以该月数据存储的小时数来计算。 +存储计量基于 TiDB Cloud Serverless 集群中存储的数据量,以 GiB/月为单位。计算方式为:所有表和索引的总大小(不含数据压缩或副本)乘以该月内数据存储的小时数。 -### 为什么在立即删除表或数据库后存储使用量大小保持不变? +### 为什么在立即删除表或数据库后,存储用量没有变化? -这是因为 TiDB 会在一定时间内保留已删除的表和数据库。这个保留期确保依赖这些表的事务可以继续执行而不会中断。此外,保留期使 [`FLASHBACK TABLE`](/sql-statements/sql-statement-flashback-table.md)/[`FLASHBACK DATABASE`](/sql-statements/sql-statement-flashback-database.md) 功能成为可能,允许你恢复误删的表和数据库。 +这是因为 TiDB 会在一段时间内保留已删除的表和数据库。该保留期确保依赖这些表的事务可以继续执行不受影响。此外,保留期也使 [`FLASHBACK TABLE`](/sql-statements/sql-statement-flashback-table.md)/[`FLASHBACK DATABASE`](/sql-statements/sql-statement-flashback-database.md) 功能成为可能,便于你在误删时恢复表和数据库。 -### 为什么在我没有主动运行任何查询时也会有 RU 消耗? +### 为什么在没有主动运行查询时仍有 RU 消耗? -RU 消耗可能发生在各种场景中。一个常见场景是在后台查询期间,例如在 TiDB 实例之间同步架构更改。另一个场景是当某些 Web 控制台功能生成查询时,如加载架构。即使没有明确的用户触发,这些进程也会使用 RUs。 +多种场景下会产生 RU 消耗。常见场景包括后台查询(如在 TiDB 实例间同步模式变更),以及某些 Web 控制台功能生成的查询(如加载模式)。这些过程即使没有用户显式触发,也会消耗 RU。 -### 为什么在我的工作负载稳定时会出现 RU 使用量的峰值? +### 为什么在负载稳定时 RU 用量会出现突增? -RU 使用量的峰值可能是由 TiDB 中必要的后台作业导致的。这些作业,如自动分析表和重建统计信息,是生成优化查询计划所必需的。 +RU 用量突增可能由 TiDB 的必要后台任务引起。这些任务(如自动分析表和重建统计信息)是生成优化查询计划所必需的。 -### 当我的集群耗尽免费配额或超出支出限额时会发生什么? +### 当集群用尽免费额度或超出支出上限时会发生什么? -一旦集群达到其免费配额或支出限额,集群会立即拒绝任何新的连接尝试,直到增加配额或在新月份开始时重置使用量。在达到配额之前建立的现有连接将保持活动状态,但会经历限制。更多信息,请参见 [TiDB Cloud Serverless 限制和配额](/tidb-cloud/serverless-limitations.md#usage-quota)。 +一旦集群达到免费额度或支出上限,系统会立即拒绝任何新的连接请求,直到额度提升或新月初重置用量。已建立的连接在达到额度前会保持活跃,但会受到限流。更多信息请参见 [TiDB Cloud Serverless 限制与配额](/tidb-cloud/serverless-limitations.md#usage-quota)。 -### 为什么在导入数据时我观察到 RU 使用量的峰值? +### 为什么在导入数据时 RU 用量会出现突增? -在 TiDB Cloud Serverless 集群的数据导入过程中,只有在数据成功导入时才会发生 RU 消耗,这导致 RU 使用量出现峰值。 +在 TiDB Cloud Serverless 集群的数据导入过程中,只有数据成功导入时才会产生 RU 消耗,因此会导致 RU 用量突增。 -### 在 TiDB Cloud Serverless 中使用列式存储涉及哪些成本? +### 在 TiDB Cloud Serverless 中使用列式存储会产生哪些费用? -TiDB Cloud Serverless 中列式存储的定价与行式存储类似。当你使用列式存储时,会创建一个额外的副本来存储你的数据(不包括索引)。从行式存储到列式存储的数据复制不会产生额外费用。 +TiDB Cloud Serverless 的列式存储计费方式与行存储类似。使用列式存储时,会额外创建一个副本用于存储数据(不含索引)。从行存储到列式存储的数据同步不会产生额外费用。 -有关详细定价信息,请参见 [TiDB Cloud Serverless 定价详情](https://www.pingcap.com/tidb-serverless-pricing-details/)。 +详细价格信息请参见 [TiDB Cloud Serverless 价格详情](https://www.pingcap.com/tidb-serverless-pricing-details/)。 -### 使用列式存储是否更贵? +### 使用列式存储会更贵吗? -TiDB Cloud Serverless 中的列式存储由于额外副本而产生额外成本,需要更多存储和资源用于数据复制。但是,在运行分析查询时,列式存储变得更具成本效益。 +TiDB Cloud Serverless 的列式存储由于额外副本,会产生更多存储和数据同步资源的费用。但在运行分析型查询时,列式存储更具性价比。 -根据 TPC-H 基准测试,在列式存储上运行分析查询的成本约为使用行式存储时成本的三分之一。 +根据 TPC-H 基准测试,在列式存储上运行分析型查询的成本约为行存储的三分之一。 -因此,虽然由于额外副本可能会有初始成本,但在分析过程中减少的计算成本可以使其对特定用例更具成本效益。特别是对于有分析需求的用户,列式存储可以显著降低成本,提供可观的成本节省机会。 +因此,虽然初期因副本增加会有额外成本,但分析型查询的计算成本降低,使其在特定场景下更具成本优势。尤其对于有分析需求的用户,列式存储可大幅降低成本,带来显著的节省空间。 -## 安全问题 +## 安全常见问题 -### 我的 TiDB Cloud Serverless 是共享的还是专用的? +### 我的 TiDB Cloud Serverless 是共享还是专用的? -serverless 技术设计用于多租户,所有集群使用的资源是共享的。要获得具有隔离基础设施和资源的托管 TiDB 服务,你可以升级到 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated)。 +Serverless 技术为多租户设计,所有集群使用的资源是共享的。如需获得基础设施和资源隔离的托管 TiDB 服务,你可以升级为 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated)。 -### TiDB Cloud Serverless 如何确保安全? +### TiDB Cloud Serverless 如何保障安全性? -- 你的连接通过传输层安全性(TLS)加密。有关使用 TLS 连接到 TiDB Cloud Serverless 的更多信息,请参见[到 TiDB Cloud Serverless 的 TLS 连接](/tidb-cloud/secure-connections-to-serverless-clusters.md)。 -- TiDB Cloud Serverless 上的所有持久化数据都使用集群运行所在的云提供商的工具进行静态加密。 +- 你的连接通过传输层安全协议(TLS)加密。关于如何使用 TLS 连接 TiDB Cloud Serverless,详见 [TLS 连接到 TiDB Cloud Serverless](/tidb-cloud/secure-connections-to-serverless-clusters.md)。 +- TiDB Cloud Serverless 上所有持久化数据均采用集群所在云服务商的工具进行静态加密。 -## 维护问题 +## 运维常见问题 ### 我可以升级集群运行的 TiDB 版本吗? -不可以。TiDB Cloud Serverless 集群会在我们在 TiDB Cloud 上推出新的 TiDB 版本时自动升级。你可以在 [TiDB Cloud 控制台](https://tidbcloud.com/project/clusters)或最新的[发布说明](https://docs.pingcap.com/tidbcloud/tidb-cloud-release-notes)中查看集群运行的 TiDB 版本。或者,你也可以连接到集群并使用 `SELECT version()` 或 `SELECT tidb_version()` 来检查 TiDB 版本。 +不可以。TiDB Cloud Serverless 集群会随着 TiDB Cloud 推出新版本自动升级。你可以在 [TiDB Cloud 控制台](https://tidbcloud.com/project/clusters) 或最新的 [发布说明](https://docs.pingcap.com/tidbcloud/tidb-cloud-release-notes) 中查看集群当前运行的 TiDB 版本。你也可以连接到集群,使用 `SELECT version()` 或 `SELECT tidb_version()` 查询 TiDB 版本。 \ No newline at end of file diff --git a/tidb-cloud/serverless-high-availability.md b/tidb-cloud/serverless-high-availability.md index 839e052f6d098..26ca727edb73d 100644 --- a/tidb-cloud/serverless-high-availability.md +++ b/tidb-cloud/serverless-high-availability.md @@ -1,114 +1,114 @@ --- title: TiDB Cloud Serverless 的高可用性 -summary: 了解 TiDB Cloud Serverless 的高可用性架构。探索可用区和区域高可用性选项、自动备份、故障转移流程,以及 TiDB 如何确保数据持久性和业务连续性。 +summary: 了解 TiDB Cloud Serverless 的高可用性架构。探索分区高可用性和区域高可用性选项、自动备份、故障转移流程,以及 TiDB 如何确保数据持久性和业务连续性。 --- # TiDB Cloud Serverless 的高可用性 -TiDB Cloud Serverless 在设计时就内置了强大的机制来默认维持高可用性和数据持久性,防止单点故障并确保在面对中断时能够持续提供服务。作为基于经过实战检验的 TiDB 开源产品的完全托管服务,它继承了 TiDB 的核心高可用性(HA)特性,并通过额外的云原生功能增强了这些特性。 +TiDB Cloud Serverless 默认设计了强大的机制来保持高可用性和数据持久性,防止单点故障,并确保即使在发生中断时也能持续提供服务。作为基于经过实战考验的 TiDB 开源产品的全托管服务,它继承了 TiDB 的核心高可用(HA)特性,并结合了额外的云原生能力。 ## 概述 -TiDB 使用 Raft 共识算法来确保高可用性和数据持久性。该算法在多个节点之间一致地复制数据变更,使 TiDB 即使在节点故障或网络分区的情况下也能处理读写请求。这种方法提供了高数据持久性和容错能力。 +TiDB 通过 Raft 一致性算法来确保高可用性和数据持久性。该算法会将数据变更一致地复制到多个节点,即使在节点故障或网络分区的情况下,TiDB 也能处理读写请求。这种方式同时提供了高数据持久性和容错能力。 -TiDB Cloud Serverless 通过两种类型的高可用性来扩展这些功能,以满足不同的运营需求: +TiDB Cloud Serverless 通过两种高可用性选项扩展了这些能力,以满足不同的运维需求: -- **可用区高可用性(默认)**:此选项将所有节点放置在单个可用区内,减少网络延迟。它确保高可用性,无需跨区域的应用程序级冗余,适用于优先考虑单个区域内低延迟的应用程序。可用区高可用性在所有支持 TiDB Cloud Serverless 的区域中都可用。更多信息,请参见[可用区高可用性架构](#可用区高可用性架构)。 +- **分区高可用性(默认)**:该选项将所有节点部署在同一个可用区内,从而降低网络延迟。它无需应用层跨区冗余即可实现高可用性,适用于优先考虑单区低延迟的应用。分区高可用性在所有支持 TiDB Cloud Serverless 的区域均可用。更多信息,参见 [分区高可用性架构](#zonal-high-availability-architecture)。 -- **区域高可用性(测试版)**:此选项将节点分布在多个可用区中,提供最大程度的基础设施隔离和冗余。它提供最高级别的可用性,但需要跨区域的应用程序级冗余。如果你需要针对区域内基础设施故障的最大可用性保护,建议选择此选项。请注意,这会增加延迟并可能产生跨区域数据传输费用。此功能仅在支持多可用区的特定区域中可用,且只能在集群创建时启用。更多信息,请参见[区域高可用性架构](#区域高可用性架构)。 +- **区域高可用性(测试版)**:该选项将节点分布在多个可用区,实现最大程度的基础设施隔离和冗余。它提供最高级别的可用性,但需要应用层实现跨区冗余。如果你需要最大程度防护单区基础设施故障,建议选择该选项。需要注意的是,这会增加延迟,并可能产生跨区数据传输费用。该功能仅在支持多可用区的特定区域可用,并且只能在集群创建时启用。更多信息,参见 [区域高可用性架构](#regional-high-availability-architecture)。 -## 可用区高可用性架构 +## 分区高可用性架构 > **注意:** > -> 可用区高可用性是默认选项,在所有支持 TiDB Cloud Serverless 的 AWS 区域中都可用。 +> 分区高可用性是默认选项,并在所有支持 TiDB Cloud Serverless 的 AWS 区域可用。 -当你使用默认的可用区高可用性创建集群时,所有组件(包括 Gateway、TiDB、TiKV 和 TiFlash 计算/写入节点)都在同一可用区中运行。数据平面中这些组件的放置通过虚拟机池提供基础设施冗余,由于组件位置相近,最大限度地减少了故障转移时间和网络延迟。 +当你以默认的分区高可用性创建集群时,所有组件,包括 Gateway、TiDB、TiKV 和 TiFlash 计算/写入节点,都会运行在同一个可用区内。这些组件在数据平面上的部署通过虚拟机池提供基础设施冗余,从而最大程度减少故障转移时间和由于同地部署带来的网络延迟。 -![TiDB Cloud Serverless 可用区高可用性](/media/tidb-cloud/serverless-zonal-high-avaliability-aws.png) +![TiDB Cloud Serverless zonal high availability](/media/tidb-cloud/serverless-zonal-high-avaliability-aws.png) -在可用区高可用性架构中: +在分区高可用性架构中: -- Placement Driver (PD) 部署在多个可用区中,通过跨区域冗余复制数据确保高可用性。 -- 数据在本地可用区内的 TiKV 服务器和 TiFlash 写入节点之间复制。 -- TiDB 服务器和 TiFlash 计算节点从 TiKV 和 TiFlash 写入节点读取和写入数据,这些节点通过存储级复制得到保护。 +- Placement Driver(PD)部署在多个可用区,实现跨区冗余数据复制以确保高可用性。 +- 数据会在本地可用区内的 TiKV 服务器和 TiFlash 写入节点之间复制。 +- TiDB 服务器和 TiFlash 计算节点从 TiKV 和 TiFlash 写入节点读取和写入数据,这些节点通过存储层复制机制得到保护。 ### 故障转移流程 -TiDB Cloud Serverless 为你的应用程序确保透明的故障转移流程。在故障转移期间: +TiDB Cloud Serverless 为你的应用确保了透明的故障转移流程。在故障转移期间: -- 创建新的副本来替换失败的副本。 +- 会创建一个新的副本来替换故障副本。 -- 提供存储服务的服务器从 Amazon S3 上的持久化数据中恢复本地缓存,使系统与副本恢复到一致状态。 +- 提供存储服务的服务器会从 Amazon S3 持久化数据中恢复本地缓存,将系统恢复到与副本一致的状态。 -在存储层,持久化数据会定期推送到 Amazon S3 以实现高持久性。此外,即时更新不仅在多个 TiKV 服务器之间复制,还存储在每个服务器的 EBS 上,这进一步复制了数据以提供额外的持久性。TiDB 通过在毫秒级别内回退和重试来自动解决问题,确保故障转移过程对客户端应用程序保持无缝。 +在存储层,持久化数据会定期推送到 Amazon S3,以实现高持久性。此外,最新的数据不仅会在多个 TiKV 服务器之间复制,还会存储在每台服务器的 EBS 上,EBS 也会进一步复制数据以增强持久性。TiDB 会自动在毫秒级别进行退避和重试,确保故障转移过程对客户端应用无缝。 -网关和计算层是无状态的,因此故障转移涉及立即在其他地方重启它们。应用程序应该实现连接重试逻辑。虽然可用区设置提供了高可用性,但它无法处理整个区域故障。如果区域变得不可用,将会出现停机,直到区域及其依赖的服务恢复。 +网关和计算层是无状态的,因此故障转移只需立即在其他地方重启即可。应用应实现连接重试逻辑。虽然分区部署提供了高可用性,但无法应对整个可用区的故障。如果该区不可用,将会发生停机,直到该区及其依赖服务恢复。 ## 区域高可用性架构 -当你使用区域高可用性创建集群时,关键的 OLTP(在线事务处理)工作负载组件(如 PD 和 TiKV)部署在多个可用区中,以确保冗余复制并最大化可用性。在正常运行期间,Gateway、TiDB 和 TiFlash 计算/写入节点等组件托管在主要可用区中。数据平面中这些组件通过虚拟机池提供基础设施冗余,由于组件位置相近,最大限度地减少了故障转移时间和网络延迟。 +当你以区域高可用性创建集群时,关键的 OLTP(联机事务处理)工作负载组件,如 PD 和 TiKV,会部署在多个可用区,实现冗余复制并最大化可用性。在正常运行期间,Gateway、TiDB 和 TiFlash 计算/写入节点等组件会托管在主可用区。这些数据平面组件通过虚拟机池提供基础设施冗余,从而最大程度减少故障转移时间和由于同地部署带来的网络延迟。 > **注意:** > -> - 区域高可用性目前处于测试阶段,仅在 AWS 东京(`ap-northeast-1`)区域可用。 -> - 你只能在集群创建时启用区域高可用性。 +> - 区域高可用性目前为测试版,仅在 AWS 东京(`ap-northeast-1`)区域可用。 +> - 区域高可用性只能在集群创建时启用。 -![TiDB Cloud Serverless 区域高可用性](/media/tidb-cloud/serverless-regional-high-avaliability-aws.png) +![TiDB Cloud Serverless regional high availability](/media/tidb-cloud/serverless-regional-high-avaliability-aws.png) 在区域高可用性架构中: -- Placement Driver (PD) 和 TiKV 部署在多个可用区中,数据始终在区域之间冗余复制,以确保最高级别的可用性。 -- 数据在主要可用区内的 TiFlash 写入节点之间复制。 -- TiDB 服务器和 TiFlash 计算节点从这些 TiKV 和 TiFlash 写入节点读取和写入数据,这些节点通过存储级复制得到保护。 +- Placement Driver(PD)和 TiKV 部署在多个可用区,数据始终在各区间冗余复制,以确保最高级别的可用性。 +- 数据会在主可用区内的 TiFlash 写入节点之间复制。 +- TiDB 服务器和 TiFlash 计算节点从这些 TiKV 和 TiFlash 写入节点读取和写入数据,这些节点通过存储层复制机制得到保护。 ### 故障转移流程 -在罕见的主要区域故障场景中(可能由自然灾害、配置更改、软件问题或硬件故障引起),关键的 OLTP 工作负载组件(包括 Gateway 和 TiDB)会自动在备用可用区中启动。流量会自动重定向到备用区域,以确保快速恢复和维持业务连续性。 +在极少数情况下,主可用区发生故障(如自然灾害、配置变更、软件问题或硬件故障),关键的 OLTP 工作负载组件,包括 Gateway 和 TiDB,会自动在备用可用区启动。流量会自动重定向到备用区,以确保快速恢复并保持业务连续性。 -TiDB Cloud Serverless 通过执行以下操作,在主要区域故障期间最大限度地减少服务中断并确保业务连续性: +TiDB Cloud Serverless 通过以下措施,在主可用区故障时最大程度减少服务中断并确保业务连续性: -- 在备用可用区中自动创建 Gateway 和 TiDB 的新副本。 -- 使用弹性负载均衡器检测备用可用区中的活动网关副本,并将来自失败主要区域的 OLTP 流量重定向。 +- 自动在备用可用区创建 Gateway 和 TiDB 的新副本。 +- 通过弹性负载均衡器检测备用可用区的活跃 Gateway 副本,并将 OLTP 流量从故障主区重定向到备用区。 -除了通过 TiKV 复制提供高可用性外,TiKV 实例的部署和配置还确保每个数据副本放置在不同的可用区中。只要有两个可用区正常运行,系统就能保持可用。为了实现高持久性,通过定期将数据备份到 S3 来确保数据持久性。即使两个区域发生故障,存储在 S3 中的数据仍然可以访问和恢复。 +除了通过 TiKV 复制提供高可用性外,TiKV 实例还会部署并配置为将每个数据副本放置在不同的可用区。只要有两个可用区正常运行,系统就能保持可用性。为实现高持久性,数据会定期备份到 S3。即使两个可用区同时故障,存储在 S3 上的数据依然可访问和恢复。 -应用程序不受非主要区域故障的影响,并且不会察觉到此类事件。在主要区域故障期间,Gateway 和 TiDB 在备用可用区中启动以处理工作负载。确保你的应用程序实现重试逻辑,以将新请求重定向到备用可用区中的活动服务器。 +应用不会受到非主可用区故障的影响,也不会感知到此类事件。在主可用区故障期间,Gateway 和 TiDB 会在备用可用区启动以处理工作负载。请确保你的应用实现重试逻辑,将新请求重定向到备用可用区的活跃服务器。 -## 自动备份和持久性 +## 自动备份与持久性 -数据库备份对于业务连续性和灾难恢复至关重要,有助于保护你的数据免受损坏或意外删除。通过备份,你可以将数据库恢复到保留期内的特定时间点,最大限度地减少数据丢失和停机时间。 +数据库备份对于业务连续性和灾难恢复至关重要,有助于防止数据损坏或意外删除。通过备份,你可以在保留期内将数据库恢复到某个时间点,最大程度减少数据丢失和停机时间。 -TiDB Cloud Serverless 提供强大的自动备份机制,以确保持续的数据保护: +TiDB Cloud Serverless 提供了强大的自动备份机制,确保持续的数据保护: -- **每日全量备份**:每天创建一次数据库的完整备份,捕获整个数据库状态。 -- **持续事务日志备份**:事务日志持续备份,大约每 5 分钟一次,具体频率取决于数据库活动。 +- **每日全量备份**:每天会创建一次数据库的全量备份,捕获整个数据库的状态。 +- **持续事务日志备份**:事务日志会持续备份,大约每 5 分钟一次,具体频率取决于数据库活动量。 -这些自动备份使你能够从全量备份恢复数据库,或通过结合全量备份和持续事务日志从特定时间点恢复。这种灵活性确保你可以将数据库恢复到事件发生前的精确时间点。 +这些自动备份使你可以通过全量备份或结合全量备份与持续事务日志,将数据库恢复到某个特定时间点。这种灵活性确保你可以将数据库恢复到事故发生前的精确时间点。 > **注意:** > -> 自动备份(包括基于快照的备份和用于时间点恢复(PITR)的持续备份)在 Amazon S3 上执行,提供区域级的高持久性。 +> 自动备份(包括基于快照的备份和用于时间点恢复(PITR)的持续备份)均在 Amazon S3 上执行,S3 提供区域级别的高持久性。 ## 故障期间对会话的影响 -在故障期间,失败服务器上的进行中事务可能会中断。虽然故障转移对应用程序是透明的,但你必须实现逻辑来处理活动事务期间的可恢复故障。不同的故障场景处理如下: +在故障发生时,正在故障服务器上运行的事务可能会被中断。虽然故障转移对应用是透明的,但你必须实现逻辑来处理活动事务中的可恢复故障。不同的故障场景处理方式如下: -- **TiDB 故障**:如果 TiDB 实例发生故障,客户端连接不受影响,因为 TiDB Cloud Serverless 自动通过网关重新路由流量。虽然失败的 TiDB 实例上的事务可能会中断,但系统确保已提交的数据得到保留,新事务由另一个可用的 TiDB 实例处理。 -- **Gateway 故障**:如果 Gateway 发生故障,客户端连接会中断。但是,TiDB Cloud Serverless 网关是无状态的,可以立即在新的区域或服务器中重启。流量会自动重定向到新的网关,最大限度地减少停机时间。 +- **TiDB 故障**:如果 TiDB 实例发生故障,客户端连接不会受到影响,因为 TiDB Cloud Serverless 会自动通过 Gateway 重路由流量。虽然在故障 TiDB 实例上的事务可能会被中断,但系统会确保已提交的数据被保留,新事务会由其他可用的 TiDB 实例处理。 +- **Gateway 故障**:如果 Gateway 发生故障,客户端连接会被中断。但 TiDB Cloud Serverless 的 Gateway 是无状态的,可以立即在新的可用区或服务器上重启。流量会自动重定向到新的 Gateway,最大程度减少停机时间。 -建议在你的应用程序中实现重试逻辑以处理可恢复的故障。有关实现详细信息,请参考你的驱动程序或 ORM 文档(例如,[JDBC](https://dev.mysql.com/doc/connector-j/en/connector-j-config-failover.html))。 +建议你在应用中实现重试逻辑以处理可恢复故障。具体实现细节请参考你的驱动或 ORM 文档(例如 [JDBC](https://dev.mysql.com/doc/connector-j/en/connector-j-config-failover.html))。 ## RTO 和 RPO 在制定业务连续性计划时,请考虑以下两个关键指标: -- 恢复时间目标(RTO):应用程序在中断事件后完全恢复所需的最大可接受时间。 -- 恢复点目标(RPO):在从计划外中断事件恢复期间,应用程序可以容忍丢失的最近数据更新的最大可接受时间间隔。 +- 恢复时间目标(RTO):应用在发生中断事件后完全恢复所能接受的最长时间。 +- 恢复点目标(RPO):在从计划外中断事件恢复时,应用可容忍丢失的最近数据更新的最长时间间隔。 -下表比较了每种高可用性选项的 RTO 和 RPO: +下表对比了每种高可用性选项的 RTO 和 RPO: -| 高可用性架构 | RTO(停机时间) | RPO(数据丢失) | -|--------------------------------|-------------------------------|-----------------| -| 可用区高可用性 | 接近 0 秒 | 0 | -| 区域高可用性 | 通常少于 600 秒 | 0 | +| 高可用性架构 | RTO(停机时间) | RPO(数据丢失) | +|------------------------|--------------------------|-----------------| +| 分区高可用性 | 近 0 秒 | 0 | +| 区域高可用性 | 通常小于 600 秒 | 0 | \ No newline at end of file diff --git a/tidb-cloud/serverless-limitations.md b/tidb-cloud/serverless-limitations.md index 53bc223072f13..08ea4cec3e189 100644 --- a/tidb-cloud/serverless-limitations.md +++ b/tidb-cloud/serverless-limitations.md @@ -1,78 +1,78 @@ --- -title: TiDB Cloud Serverless 限制和配额 +title: TiDB Cloud Serverless 限制与配额 summary: 了解 TiDB Cloud Serverless 的限制。 aliases: ['/tidbcloud/serverless-tier-limitations'] --- -# TiDB Cloud Serverless 限制和配额 +# TiDB Cloud Serverless 限制与配额 -TiDB Cloud Serverless 几乎可以支持所有 TiDB 支持的工作负载,但在 TiDB 自管理或 TiDB Cloud Dedicated 集群与 TiDB Cloud Serverless 集群之间存在一些功能差异。本文档描述了 TiDB Cloud Serverless 的限制。 +TiDB Cloud Serverless 支持几乎所有 TiDB 支持的工作负载,但与 TiDB 自主部署版或 TiDB Cloud 专属集群相比,TiDB Cloud Serverless 集群在某些功能上存在差异。本文档介绍了 TiDB Cloud Serverless 的相关限制。 -我们正在不断填补 TiDB Cloud Serverless 和 TiDB Cloud Dedicated 之间的功能差距。如果你需要这些差距中的功能或能力,请使用 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 或[联系我们](https://www.pingcap.com/contact-us/?from=en)提出功能请求。 +我们正在不断缩小 TiDB Cloud Serverless 与 TiDB Cloud 专属集群之间的功能差距。如果你需要这些尚未支持的功能或能力,请使用 [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 或 [联系我们](https://www.pingcap.com/contact-us/?from=en) 提交功能需求。 ## 限制 ### 审计日志 -- 目前不支持[数据库审计日志](/tidb-cloud/tidb-cloud-auditing.md)。 +- [数据库审计日志](/tidb-cloud/tidb-cloud-auditing.md) 目前不可用。 ### 连接 -- 只能使用[公共端点](/tidb-cloud/connect-via-standard-connection-serverless.md)和[私有端点](/tidb-cloud/set-up-private-endpoint-connections-serverless.md)。你不能使用 [VPC 对等连接](/tidb-cloud/set-up-vpc-peering-connections.md)连接到 TiDB Cloud Serverless 集群。 -- 不支持 [IP 访问列表](/tidb-cloud/configure-ip-access-list.md)。 +- 仅支持 [Public Endpoint](/tidb-cloud/connect-via-standard-connection-serverless.md) 和 [Private Endpoint](/tidb-cloud/set-up-private-endpoint-connections-serverless.md) 连接方式。你无法使用 [VPC Peering](/tidb-cloud/set-up-vpc-peering-connections.md) 连接到 TiDB Cloud Serverless 集群。 +- 不支持 [IP Access list](/tidb-cloud/configure-ip-access-list.md)。 ### 加密 -- 你的 TiDB Cloud Serverless 集群中持久化的数据使用管理集群的云提供商提供的加密工具进行加密。对于[可扩展集群](/tidb-cloud/select-cluster-tier.md#scalable-cluster-plan),在集群创建过程中可以选择使用第二层加密,在默认的静态加密之外提供额外的安全级别。 -- 目前不支持使用[客户管理的加密密钥 (CMEK)](/tidb-cloud/tidb-cloud-encrypt-cmek.md)。 +- 你在 TiDB Cloud Serverless 集群中持久化的数据会使用云服务商提供的加密工具进行加密。对于 [可扩展集群](/tidb-cloud/select-cluster-tier.md#scalable-cluster-plan),在集群创建过程中可选择启用第二层加密,为默认的静态加密提供额外的安全保障。 +- 目前不支持使用 [客户自管加密密钥(CMEK)](/tidb-cloud/tidb-cloud-encrypt-cmek.md)。 ### 维护窗口 -- 目前不支持[维护窗口](/tidb-cloud/configure-maintenance-window.md)。 +- [维护窗口](/tidb-cloud/configure-maintenance-window.md) 目前不可用。 -### 监控和诊断 +### 监控与诊断 -- 目前不支持[第三方监控集成](/tidb-cloud/third-party-monitoring-integrations.md)。 -- 目前不支持[内置告警](/tidb-cloud/monitor-built-in-alerting.md)。 -- 目前不支持 [Key Visualizer](/tidb-cloud/tune-performance.md#key-visualizer)。 -- 目前不支持 [Index Insight](/tidb-cloud/tune-performance.md#index-insight-beta)。 +- 不支持 [第三方监控集成](/tidb-cloud/third-party-monitoring-integrations.md)。 +- 不支持 [内置告警](/tidb-cloud/monitor-built-in-alerting.md)。 +- 不支持 [Key Visualizer](/tidb-cloud/tune-performance.md#key-visualizer)。 +- 不支持 [Index Insight](/tidb-cloud/tune-performance.md#index-insight-beta)。 ### 自助升级 -- TiDB Cloud Serverless 是 TiDB 的完全托管部署。TiDB Cloud Serverless 的主要和次要版本升级由 TiDB Cloud 处理,因此用户无法主动发起。 +- TiDB Cloud Serverless 是 TiDB 的全托管部署。TiDB Cloud Serverless 的主版本和次版本升级由 TiDB Cloud 统一管理,用户无法自行发起升级。 -### 数据流 +### 流式数据 -- 目前 TiDB Cloud Serverless 不支持 [Changefeed](/tidb-cloud/changefeed-overview.md)。 -- 目前 TiDB Cloud Serverless 不支持[数据迁移](/tidb-cloud/migrate-from-mysql-using-data-migration.md)。 +- TiDB Cloud Serverless 目前不支持 [Changefeed](/tidb-cloud/changefeed-overview.md)。 +- TiDB Cloud Serverless 目前不支持 [数据迁移](/tidb-cloud/migrate-from-mysql-using-data-migration.md)。 -### 生存时间 (TTL) +### 生存时间(TTL) -- 在 TiDB Cloud Serverless 中,表的 [`TTL_JOB_INTERVAL`](/time-to-live.md#ttl-job) 属性固定为 `15m` 且不能修改。这意味着 TiDB Cloud Serverless 每 15 分钟调度一次后台作业来清理过期数据。 +- 在 TiDB Cloud Serverless 中,表的 [`TTL_JOB_INTERVAL`](/time-to-live.md#ttl-job) 属性固定为 `15m`,不可修改。这意味着 TiDB Cloud Serverless 每 15 分钟会调度一次后台任务清理过期数据。 ### 其他 -- 事务不能持续超过 30 分钟。 -- 有关 SQL 限制的更多详细信息,请参阅[受限的 SQL 功能](/tidb-cloud/limited-sql-features.md)。 +- 事务持续时间不能超过 30 分钟。 +- 有关 SQL 限制的更多细节,请参阅 [Limited SQL Features](/tidb-cloud/limited-sql-features.md)。 ## 使用配额 -对于 TiDB Cloud 中的每个组织,默认最多可以创建五个[免费集群](/tidb-cloud/select-cluster-tier.md#free-cluster-plan)。要创建更多的 TiDB Cloud Serverless 集群,你需要添加信用卡并创建[可扩展集群](/tidb-cloud/select-cluster-tier.md#scalable-cluster-plan)以供使用。 +在 TiDB Cloud 的每个组织中,默认最多可以创建 5 个 [免费集群](/tidb-cloud/select-cluster-tier.md#free-cluster-plan)。如需创建更多 TiDB Cloud Serverless 集群,你需要添加信用卡并创建 [可扩展集群](/tidb-cloud/select-cluster-tier.md#scalable-cluster-plan) 以进行使用。 -对于组织中的前五个 TiDB Cloud Serverless 集群,无论是免费还是可扩展集群,TiDB Cloud 都为每个集群提供以下免费使用配额: +对于你组织中的前 5 个 TiDB Cloud Serverless 集群(无论是免费还是可扩展),TiDB Cloud 为每个集群提供如下免费使用配额: -- 行式存储:5 GiB -- 列式存储:5 GiB -- [请求单位 (RUs)](/tidb-cloud/tidb-cloud-glossary.md#request-unit):每月 5000 万 RU +- 行存储:5 GiB +- 列存储:5 GiB +- [Request Units (RUs)](/tidb-cloud/tidb-cloud-glossary.md#request-unit):每月 5000 万 RU -请求单位 (RU) 是用于跟踪查询或事务资源消耗的计量单位。它是一个指标,允许你估算处理数据库中特定请求所需的计算资源。请求单位也是 TiDB Cloud Serverless 服务的计费单位。 +Request Unit(RU)是用于衡量查询或事务资源消耗的单位。它是一种指标,可以帮助你估算处理特定数据库请求所需的计算资源。Request Unit 也是 TiDB Cloud Serverless 服务的计费单位。 -一旦集群达到其使用配额,它会立即拒绝任何新的连接尝试,直到你[增加配额](/tidb-cloud/manage-serverless-spend-limit.md#update-spending-limit)或在新月开始时重置使用量。在达到配额之前建立的现有连接将保持活动状态,但会经历限流。 +当集群达到其使用配额时,将立即拒绝所有新的连接尝试,直到你 [增加配额](/tidb-cloud/manage-serverless-spend-limit.md#update-spending-limit) 或在新月开始时重置使用量。已在达到配额前建立的连接会保持活跃,但会受到限流影响。 -要了解不同资源(包括读取、写入、SQL CPU 和网络出口)的 RU 消耗、定价详情和限流信息,请参阅 [TiDB Cloud Serverless 定价详情](https://www.pingcap.com/tidb-cloud-serverless-pricing-details)。 +如需了解不同资源(包括读、写、SQL CPU 和网络出口)的 RU 消耗、定价详情及限流信息,请参阅 [TiDB Cloud Serverless Pricing Details](https://www.pingcap.com/tidb-cloud-serverless-pricing-details)。 -如果你想创建具有额外配额的 TiDB Cloud Serverless 集群,可以选择可扩展集群计划,并在集群创建页面上编辑支出限制。有关更多信息,请参阅[创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md)。 +如果你希望创建配额更高的 TiDB Cloud Serverless 集群,可以选择可扩展集群计划,并在集群创建页面编辑消费上限。更多信息请参见 [Create a TiDB Cloud Serverless cluster](/tidb-cloud/create-tidb-cluster-serverless.md)。 -创建 TiDB Cloud Serverless 集群后,你仍然可以在集群概览页面上查看和编辑支出限制。有关更多信息,请参阅[管理 TiDB Cloud Serverless 集群的支出限制](/tidb-cloud/manage-serverless-spend-limit.md)。 +在创建 TiDB Cloud Serverless 集群后,你仍然可以在集群概览页面查看和编辑消费上限。更多信息请参见 [Manage Spending Limit for TiDB Cloud Serverless Clusters](/tidb-cloud/manage-serverless-spend-limit.md)。 \ No newline at end of file diff --git a/tidb-cloud/set-up-private-endpoint-connections-on-azure.md b/tidb-cloud/set-up-private-endpoint-connections-on-azure.md index 18319f5268fa6..f20a5874b7506 100644 --- a/tidb-cloud/set-up-private-endpoint-connections-on-azure.md +++ b/tidb-cloud/set-up-private-endpoint-connections-on-azure.md @@ -1,123 +1,123 @@ --- -title: 通过 Azure Private Link 连接到 TiDB Cloud Dedicated 集群 -summary: 了解如何通过 Azure Private Link 连接到 TiDB Cloud Dedicated 集群。 +title: 通过 Azure Private Link 连接 TiDB Cloud 专属集群 +summary: 了解如何通过 Azure Private Link 连接 TiDB Cloud 专属集群。 --- -# 通过 Azure Private Link 连接到 TiDB Cloud Dedicated 集群 +# 通过 Azure Private Link 连接 TiDB Cloud 专属集群 -本文档介绍如何通过 [Azure Private Link](https://learn.microsoft.com/en-us/azure/private-link/private-link-overview) 连接到 TiDB Cloud Dedicated 集群。 +本文档介绍如何通过 [Azure Private Link](https://learn.microsoft.com/en-us/azure/private-link/private-link-overview) 连接你的 TiDB Cloud 专属集群。 -> **提示:** +> **Tip:** > -> - 要了解如何通过 AWS 私有端点连接到 TiDB Cloud Dedicated 集群,请参见[通过 AWS PrivateLink 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections.md)。 -> - 要了解如何通过 Google Cloud 私有端点连接到 TiDB Cloud Dedicated 集群,请参见[通过 Google Cloud Private Service Connect 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md)。 -> - 要了解如何通过私有端点连接到 TiDB Cloud Serverless 集群,请参见[通过私有端点连接到 TiDB Cloud Serverless](/tidb-cloud/set-up-private-endpoint-connections-serverless.md)。 +> - 如果你想了解如何通过 AWS 私有终端节点连接 TiDB Cloud 专属集群,请参见 [Connect to a TiDB Cloud Dedicated Cluster via AWS PrivateLink](/tidb-cloud/set-up-private-endpoint-connections.md)。 +> - 如果你想了解如何通过 Google Cloud 私有终端节点连接 TiDB Cloud 专属集群,请参见 [Connect to a TiDB Cloud Dedicated Cluster via Google Cloud Private Service Connect](/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md)。 +> - 如果你想了解如何通过私有终端节点连接 TiDB Cloud Serverless 集群,请参见 [Connect to TiDB Cloud Serverless via Private Endpoint](/tidb-cloud/set-up-private-endpoint-connections-serverless.md)。 -TiDB Cloud 支持通过 [Azure Private Link](https://learn.microsoft.com/en-us/azure/private-link/private-link-overview) 对托管在 Azure 虚拟网络中的 TiDB Cloud 服务进行高度安全和单向访问,就像该服务在你自己的虚拟网络中一样。你可以在你的虚拟网络中创建私有端点,然后通过具有权限的端点连接到 TiDB Cloud 服务。 +TiDB Cloud 支持通过 [Azure Private Link](https://learn.microsoft.com/en-us/azure/private-link/private-link-overview) 在 Azure 虚拟网络中对托管的 TiDB Cloud 服务进行高度安全的单向访问,就像该服务在你自己的虚拟网络中一样。你可以在你的虚拟网络中创建一个私有终端节点,然后通过该终端节点并获得权限后连接 TiDB Cloud 服务。 -在 Azure Private Link 的支持下,端点连接是安全和私密的,不会将你的数据暴露在公共互联网上。此外,端点连接支持 CIDR 重叠,并且更易于网络管理。 +借助 Azure Private Link,终端节点连接是安全且私有的,不会将你的数据暴露在公网上。此外,终端节点连接支持 CIDR 重叠,便于网络管理。 -Azure Private Link 的架构如下:[^1] +Azure Private Link 的架构如下所示:[^1] -![Azure Private Link 架构](/media/tidb-cloud/azure-private-endpoint-arch.png) +![Azure Private Link architecture](/media/tidb-cloud/azure-private-endpoint-arch.png) -有关私有端点和端点服务的更详细定义,请参见以下 Azure 文档: +关于私有终端节点和终端节点服务的更详细定义,请参见以下 Azure 文档: -- [什么是 Azure Private Link](https://learn.microsoft.com/en-us/azure/private-link/private-link-overview) -- [什么是私有端点](https://learn.microsoft.com/en-us/azure/private-link/private-endpoint-overview) -- [创建私有端点](https://learn.microsoft.com/en-us/azure/private-link/create-private-endpoint-portal?tabs=dynamic-ip) +- [What is Azure Private Link](https://learn.microsoft.com/en-us/azure/private-link/private-link-overview) +- [What is a private endpoint](https://learn.microsoft.com/en-us/azure/private-link/private-endpoint-overview) +- [Create a private endpoint](https://learn.microsoft.com/en-us/azure/private-link/create-private-endpoint-portal?tabs=dynamic-ip) ## 限制 -- 只有 `Organization Owner` 和 `Project Owner` 角色可以创建私有端点。 -- 私有端点和要连接的 TiDB 集群必须位于同一区域。 +- 只有 `Organization Owner` 和 `Project Owner` 角色可以创建私有终端节点。 +- 私有终端节点和要连接的 TiDB 集群必须位于同一区域。 -## 使用 Azure Private Link 设置私有端点 +## 使用 Azure Private Link 设置私有终端节点 -要通过私有端点连接到 TiDB Cloud Dedicated 集群,请完成以下步骤: +要通过私有终端节点连接你的 TiDB Cloud 专属集群,请完成以下步骤: -1. [选择 TiDB 集群](#步骤-1-选择-tidb-集群) -2. [创建 Azure 私有端点](#步骤-2-创建-azure-私有端点) -3. [接受端点](#步骤-3-接受端点) -4. [连接到 TiDB 集群](#步骤-4-连接到-tidb-集群) +1. [选择 TiDB 集群](#step-1-select-a-tidb-cluster) +2. [创建 Azure 私有终端节点](#step-2-create-an-azure-private-endpoint) +3. [接受终端节点](#step-3-accept-the-endpoint) +4. [连接到你的 TiDB 集群](#step-4-connect-to-your-tidb-cluster) -如果你有多个集群,则需要对每个要使用 Azure Private Link 连接的集群重复这些步骤。 +如果你有多个集群,需要对每个希望通过 Azure Private Link 连接的集群重复这些步骤。 -### 步骤 1. 选择 TiDB 集群 +### Step 1. 选择 TiDB 集群 -1. 在项目的[**集群**](https://tidbcloud.com/project/clusters)页面,点击目标 TiDB 集群的名称进入其概览页面。 -2. 点击右上角的**连接**。将显示连接对话框。 -3. 在**连接类型**下拉列表中,选择**私有端点**,然后点击**创建私有端点连接**打开**创建 Azure 私有端点连接**对话框。 +1. 在项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标 TiDB 集群的名称,进入其概览页面。 +2. 点击右上角的 **Connect**。会弹出连接对话框。 +3. 在 **Connection Type** 下拉列表中选择 **Private Endpoint**,然后点击 **Create Private Endpoint Connection**,打开 **Create Azure Private Endpoint Connection** 对话框。 -> **注意:** +> **Note:** > -> 如果你已经创建了私有端点连接,活动端点将显示在连接对话框中。要创建其他私有端点连接,请点击左侧导航栏中的**设置** > **网络**导航到**网络**页面。 +> 如果你已经创建了私有终端节点连接,活动终端节点会显示在连接对话框中。要创建更多私有终端节点连接,请点击左侧导航栏的 **Settings** > **Networking**,进入 **Networking** 页面。 -### 步骤 2. 创建 Azure 私有端点 +### Step 2. 创建 Azure 私有终端节点 -1. 在**创建 Azure 私有端点连接**对话框中,复制私有链接服务的 TiDB Cloud 资源 ID,并保持对话框打开以供后续使用。 +1. 在 **Create Azure Private Endpoint Connection** 对话框中,复制私有链路服务的 TiDB Cloud 资源 ID,并保持对话框打开以便后续使用。 - > **注意:** + > **Note:** > - > 对于每个 TiDB Cloud Dedicated 集群,相应的端点服务会在集群创建后 3 到 4 分钟自动创建。 + > 对于每个 TiDB Cloud 专属集群,相关的终端节点服务会在集群创建后 3 到 4 分钟自动创建。 -2. 登录 [Azure 门户](https://portal.azure.com/),然后使用复制的 TiDB Cloud 资源 ID 为你的集群创建私有端点,具体步骤如下: +2. 登录 [Azure portal](https://portal.azure.com/),然后使用复制的 TiDB Cloud 资源 ID 为你的集群创建私有终端节点,具体步骤如下: - 1. 在 Azure 门户中,搜索**私有端点**,然后在结果中选择**私有端点**。 - 2. 在**私有端点**页面,点击**+ 创建**。 - 3. 在**基本信息**标签页中,填写项目和实例信息,然后点击**下一步:资源**。 - 4. 在**资源**标签页中,选择**通过资源 ID 或别名连接到 Azure 资源**作为**连接方法**,并将 TiDB Cloud 资源 ID 粘贴到**资源 ID 或别名**字段中。 - 5. 继续点击**下一步**浏览其余配置标签页并完成所需设置。然后,点击**创建**以创建和部署私有端点。Azure 可能需要几秒钟才能完成部署。更多信息,请参见 Azure 文档中的[创建私有端点](https://learn.microsoft.com/en-us/azure/private-link/create-private-endpoint-portal?tabs=dynamic-ip#create-a-private-endpoint)。 + 1. 在 Azure portal 中,搜索 **Private endpoints**,然后在结果中选择 **Private endpoints**。 + 2. 在 **Private endpoint** 页面,点击 **+ Create**。 + 3. 在 **Basics** 标签页,填写项目和实例信息,然后点击 **Next: Resource**。 + 4. 在 **Resource** 标签页,将 **connection method** 选择为 **Connect to an Azure resource by resource ID or alias**,并将 TiDB Cloud 资源 ID 粘贴到 **Resource ID or alias** 字段。 + 5. 继续点击 **Next**,完成剩余配置标签页的必填项。然后点击 **Create**,创建并部署私有终端节点。Azure 可能需要几秒钟完成部署。更多信息请参见 Azure 文档 [Create a private endpoint](https://learn.microsoft.com/en-us/azure/private-link/create-private-endpoint-portal?tabs=dynamic-ip#create-a-private-endpoint)。 -3. 私有端点创建和部署后,点击**转到资源**,然后执行以下操作: +3. 私有终端节点创建并部署完成后,点击 **Go to resource**,然后执行以下操作: - - 点击左侧导航栏中的**设置** > **属性**,复制其**资源 ID**以供后续使用。 + - 点击左侧导航栏的 **Settings** > **Properties**,复制其 **Resource ID** 以便后续使用。 - ![Azure 私有端点资源 ID](/media/tidb-cloud/azure-private-endpoint-resource-id.png) + ![Azure private endpoint resource ID](/media/tidb-cloud/azure-private-endpoint-resource-id.png) - - 点击左侧导航栏中的**设置** > **DNS 配置**,然后复制其 **IP 地址**以供后续使用。 + - 点击左侧导航栏的 **Settings** > **DNS configuration**,复制其 **IP address** 以便后续使用。 - ![Azure 私有端点 DNS IP](/media/tidb-cloud/azure-private-endpoint-dns-ip.png) + ![Azure private endpoint DNS IP](/media/tidb-cloud/azure-private-endpoint-dns-ip.png) -### 步骤 3. 接受端点 +### Step 3. 接受终端节点 -1. 返回 TiDB Cloud 控制台中的**创建 Azure 私有端点连接**对话框,然后将复制的**资源 ID** 和 **IP 地址**粘贴到相应字段中。 -2. 点击**验证端点**以验证私有端点访问。如果遇到任何错误,请按照错误消息进行故障排除,然后重试。 -3. 验证成功后,点击**接受端点**以批准来自私有端点的连接。 +1. 返回 TiDB Cloud 控制台中的 **Create Azure Private Endpoint Connection** 对话框,将复制的 **Resource ID** 和 **IP address** 粘贴到对应字段。 +2. 点击 **Verify Endpoint** 验证私有终端节点的访问权限。如果遇到错误,请根据错误信息进行排查,然后重试。 +3. 验证成功后,点击 **Accept Endpoint**,批准来自你的私有终端节点的连接。 -### 步骤 4. 连接到 TiDB 集群 +### Step 4. 连接到你的 TiDB 集群 -接受端点连接后,你将被重定向回连接对话框。 +在你接受终端节点连接后,会自动返回连接对话框。 -1. 等待私有端点连接状态变为**活动**(大约 5 分钟)。要检查状态,请点击左侧导航栏中的**设置** > **网络**导航到**网络**页面。 -2. 在**连接方式**下拉列表中,选择你首选的连接方法。对话框底部将显示相应的连接字符串。 -3. 使用连接字符串连接到你的集群。 +1. 等待私有终端节点连接状态变为 **Active**(大约 5 分钟)。要检查状态,请点击左侧导航栏的 **Settings** > **Networking**,进入 **Networking** 页面。 +2. 在 **Connect With** 下拉列表中,选择你偏好的连接方式。对应的连接字符串会显示在对话框底部。 +3. 使用该连接字符串连接到你的集群。 -### 私有端点状态参考 +### 私有终端节点状态参考 -要查看私有端点或私有端点服务的状态,请点击左侧导航栏中的**设置** > **网络**导航到**网络**页面。 +要查看私有终端节点或私有终端节点服务的状态,请点击左侧导航栏的 **Settings** > **Networking**,进入 **Networking** 页面。 -私有端点的可能状态说明如下: +私有终端节点可能的状态说明如下: -- **已发现**:TiDB Cloud 可以在接受请求之前自动检测与端点服务关联的私有端点,以避免需要创建另一个端点。 -- **等待中**:等待处理。 -- **活动**:你的私有端点已准备就绪可以使用。你无法编辑此状态的私有端点。 -- **删除中**:正在删除私有端点。 -- **失败**:私有端点创建失败。你可以点击该行的**编辑**重试创建。 +- **Discovered**:TiDB Cloud 可以在接受请求前自动检测到与你的终端节点服务关联的私有终端节点,避免重复创建。 +- **Pending**:等待处理。 +- **Active**:你的私有终端节点已准备就绪。此状态下无法编辑该私有终端节点。 +- **Deleting**:私有终端节点正在被删除。 +- **Failed**:私有终端节点创建失败。你可以点击该行的 **Edit** 重试创建。 -私有端点服务的可能状态说明如下: +私有终端节点服务可能的状态说明如下: -- **创建中**:正在创建端点服务,这需要 3 到 5 分钟。 -- **活动**:端点服务已创建,无论是否已创建私有端点。 +- **Creating**:终端节点服务正在创建,通常需要 3 到 5 分钟。 +- **Active**:终端节点服务已创建,无论私有终端节点是否已创建。 -## 故障排除 +## 故障排查 -### TiDB Cloud 无法创建端点服务。我该怎么办? +### TiDB Cloud 创建终端节点服务失败怎么办? -端点服务在你打开**创建 Azure 私有端点**页面并选择 TiDB 集群后自动创建。如果显示失败或长时间保持在**创建中**状态,请[提交支持工单](/tidb-cloud/tidb-cloud-support.md)寻求帮助。 +当你打开 **Create Azure Private Endpoint** 页面并选择 TiDB 集群后,终端节点服务会自动创建。如果显示为失败或长时间处于 **Creating** 状态,请提交 [support ticket](/tidb-cloud/tidb-cloud-support.md) 寻求帮助。 -### 如果我在设置过程中取消操作,在接受私有端点之前应该怎么做? +### 如果在设置过程中取消了操作,接受私有终端节点前需要做什么? -Azure 私有端点连接功能可以自动检测你的私有端点。这意味着在 Azure 门户中[创建 Azure 私有端点](#步骤-2-创建-azure-私有端点)后,如果你在 TiDB Cloud 控制台的**创建 Azure 私有端点连接**对话框中点击**取消**,你仍然可以在**网络**页面上查看已创建的端点。如果取消是无意的,你可以继续配置端点以完成设置。如果取消是有意的,你可以直接在 TiDB Cloud 控制台中删除端点。 +Azure 私有终端节点连接功能可以自动检测你的私有终端节点。这意味着,在 Azure portal [创建 Azure 私有终端节点](#step-2-create-an-azure-private-endpoint) 后,如果你在 TiDB Cloud 控制台的 **Create Azure Private Endpoint Connection** 对话框中点击了 **Cancel**,你仍然可以在 **Networking** 页面查看已创建的终端节点。如果取消是误操作,你可以继续配置该终端节点完成设置。如果取消是有意为之,你可以直接在 TiDB Cloud 控制台删除该终端节点。 -[^1]: Azure Private Link 架构图来自 Azure 文档中的 [What is Azure Private Link service](https://learn.microsoft.com/en-us/azure/private-link/private-link-service-overview) 文档([GitHub 上的源文件](https://github.com/MicrosoftDocs/azure-docs/blob/main/articles/private-link/private-link-service-overview.md)),根据 Creative Commons Attribution 4.0 International 许可证授权。 +[^1]: Azure Private Link 架构图来自 Azure 文档 [What is Azure Private Link service](https://learn.microsoft.com/en-us/azure/private-link/private-link-service-overview)([GitHub 源文件](https://github.com/MicrosoftDocs/azure-docs/blob/main/articles/private-link/private-link-service-overview.md)),遵循 Creative Commons Attribution 4.0 International 许可协议。 \ No newline at end of file diff --git a/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md b/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md index c12d26f741c81..0df25ac11a90b 100644 --- a/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md +++ b/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md @@ -1,59 +1,59 @@ --- -title: 通过 Google Cloud Private Service Connect 连接到 TiDB Cloud Dedicated 集群 -summary: 了解如何通过 Google Cloud Private Service Connect 连接到 TiDB Cloud 集群。 +title: 通过 Google Cloud Private Service Connect 连接 TiDB Cloud 专属集群 +summary: 了解如何通过 Google Cloud Private Service Connect 连接你的 TiDB Cloud 集群。 --- -# 通过 Google Cloud Private Service Connect 连接到 TiDB Cloud Dedicated 集群 +# 通过 Google Cloud Private Service Connect 连接 TiDB Cloud 专属集群 -本文介绍如何通过 [Private Service Connect](https://cloud.google.com/vpc/docs/private-service-connect) 连接到 TiDB Cloud Dedicated 集群。Google Cloud Private Service Connect 是 Google Cloud 提供的私有端点服务。 +本文档介绍如何通过 [Private Service Connect](https://cloud.google.com/vpc/docs/private-service-connect) 连接你的 TiDB Cloud 专属集群。Google Cloud Private Service Connect 是 Google Cloud 提供的私有端点服务。 -> **提示:** +> **Tip:** > -> - 要了解如何通过 AWS 私有端点连接到 TiDB Cloud Dedicated 集群,请参阅[通过 AWS PrivateLink 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections.md)。 -> - 要了解如何通过 Azure 私有端点连接到 TiDB Cloud Dedicated 集群,请参阅[通过 Azure Private Link 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections-on-azure.md)。 -> - 要了解如何通过私有端点连接到 TiDB Cloud Serverless 集群,请参阅[通过私有端点连接到 TiDB Cloud Serverless](/tidb-cloud/set-up-private-endpoint-connections-serverless.md)。 +> - 如果你想了解如何通过 AWS 的私有端点连接 TiDB Cloud 专属集群,请参见 [Connect to a TiDB Cloud Dedicated Cluster via AWS PrivateLink](/tidb-cloud/set-up-private-endpoint-connections.md)。 +> - 如果你想了解如何通过 Azure 的私有端点连接 TiDB Cloud 专属集群,请参见 [Connect to a TiDB Cloud Dedicated Cluster via Azure Private Link](/tidb-cloud/set-up-private-endpoint-connections-on-azure.md)。 +> - 如果你想了解如何通过私有端点连接 TiDB Cloud Serverless 集群,请参见 [Connect to TiDB Cloud Serverless via Private Endpoint](/tidb-cloud/set-up-private-endpoint-connections-serverless.md)。 -TiDB Cloud 支持通过 [Private Service Connect](https://cloud.google.com/vpc/docs/private-service-connect) 安全地单向访问托管在 Google Cloud VPC 中的 TiDB Cloud 服务。你可以创建一个端点并使用它连接到 TiDB Cloud 服务。 +TiDB Cloud 支持通过 [Private Service Connect](https://cloud.google.com/vpc/docs/private-service-connect) 实现对托管在 Google Cloud VPC 中的 TiDB Cloud 服务的高安全性、单向访问。你可以创建一个端点,并使用它连接到 TiDB Cloud 服务。 -在 Google Cloud Private Service Connect 的支持下,端点连接是安全和私密的,不会将你的数据暴露给公共互联网。此外,端点连接支持 CIDR 重叠,更易于网络管理。 +借助 Google Cloud Private Service Connect,端点连接是安全且私有的,不会将你的数据暴露在公网。此外,端点连接支持 CIDR 重叠,并且更易于网络管理。 -Google Cloud Private Service Connect 的架构如下:[^1] +Google Cloud Private Service Connect 的架构如下所示:[^1] -![Private Service Connect 架构](/media/tidb-cloud/google-cloud-psc-endpoint-overview.png) +![Private Service Connect architecture](/media/tidb-cloud/google-cloud-psc-endpoint-overview.png) -有关私有端点和端点服务的更详细定义,请参阅以下 Google Cloud 文档: +如需了解私有端点和端点服务的更详细定义,请参见以下 Google Cloud 文档: - [Private Service Connect](https://cloud.google.com/vpc/docs/private-service-connect) -- [通过端点访问已发布的服务](https://cloud.google.com/vpc/docs/configure-private-service-connect-services) +- [Access published services through endpoints](https://cloud.google.com/vpc/docs/configure-private-service-connect-services) ## 限制 -- 此功能适用于 2023 年 4 月 13 日之后创建的 TiDB Cloud Dedicated 集群。对于较旧的集群,请联系 [TiDB Cloud 支持团队](/tidb-cloud/tidb-cloud-support.md)寻求帮助。 +- 此功能适用于 2023 年 4 月 13 日之后创建的 TiDB Cloud 专属集群。对于更早创建的集群,请联系 [TiDB Cloud Support](/tidb-cloud/tidb-cloud-support.md) 获取帮助。 - 只有 `Organization Owner` 和 `Project Owner` 角色可以创建 Google Cloud Private Service Connect 端点。 -- 每个 TiDB 集群最多可以处理来自 10 个端点的连接。 -- 每个 Google Cloud 项目最多可以有 10 个端点连接到一个 TiDB 集群。 -- 在配置了端点服务的项目中,你最多可以创建 8 个托管在 Google Cloud 上的 TiDB Cloud Dedicated 集群。 +- 每个 TiDB 集群最多可处理来自 10 个端点的连接。 +- 每个 Google Cloud 项目最多可有 10 个端点连接到一个 TiDB 集群。 +- 你可以在一个项目中创建最多 8 个托管在 Google Cloud 上、已配置端点服务的 TiDB Cloud 专属集群。 - 私有端点和要连接的 TiDB 集群必须位于同一区域。 -- 出站防火墙规则必须允许流量到达端点的内部 IP 地址。[默认允许出站防火墙规则](https://cloud.google.com/firewall/docs/firewalls#default_firewall_rules)允许出站流量到达任何目标 IP 地址。 -- 如果你在 VPC 网络中创建了出站拒绝防火墙规则,或者创建了修改默认允许出站行为的分层防火墙策略,可能会影响对端点的访问。在这种情况下,你需要创建特定的出站允许防火墙规则或策略,以允许流量到达端点的内部目标 IP 地址。 +- 出站防火墙规则必须允许流量访问端点的内部 IP 地址。[隐式允许出站防火墙规则](https://cloud.google.com/firewall/docs/firewalls#default_firewall_rules) 允许出站到任意目标 IP 地址。 +- 如果你在 VPC 网络中创建了出站拒绝防火墙规则,或者你创建了修改隐式允许出站行为的分层防火墙策略,访问端点可能会受到影响。在这种情况下,你需要创建特定的出站允许防火墙规则或策略,以允许流量访问端点的内部目标 IP 地址。 -在大多数情况下,建议使用私有端点连接而不是 VPC 对等连接。但是,在以下情况下,你应该使用 VPC 对等连接而不是私有端点连接: +在大多数场景下,建议你优先使用私有端点连接而不是 VPC 对等连接。但在以下场景下,应使用 VPC 对等连接而非私有端点连接: -- 你正在使用 [TiCDC](https://docs.pingcap.com/tidb/stable/ticdc-overview) 集群跨区域将数据从源 TiDB 集群复制到目标 TiDB 集群,以获得高可用性。目前,私有端点不支持跨区域连接。 -- 你正在使用 TiCDC 集群将数据复制到下游集群(如 Amazon Aurora、MySQL 和 Kafka),但你无法自行维护下游的端点服务。 +- 你正在使用 [TiCDC](https://docs.pingcap.com/tidb/stable/ticdc-overview) 集群,将数据从源 TiDB 集群跨区域同步到目标 TiDB 集群,以实现高可用。目前,私有端点不支持跨区域连接。 +- 你正在使用 TiCDC 集群将数据同步到下游集群(如 Amazon Aurora、MySQL 和 Kafka),但你无法自行维护下游的端点服务。 ## 使用 Google Cloud Private Service Connect 设置私有端点 -要通过私有端点连接到 TiDB Cloud Dedicated 集群,请完成[前提条件](#前提条件)并按照以下步骤操作: +要通过私有端点连接到你的 TiDB Cloud 专属集群,请完成[前置条件](#prerequisites)并按照以下步骤操作: -1. [选择 TiDB 集群](#步骤-1-选择-tidb-集群) -2. [创建 Google Cloud 私有端点](#步骤-2-创建-google-cloud-私有端点) -3. [接受端点访问](#步骤-3-接受端点访问) -4. [连接到 TiDB 集群](#步骤-4-连接到-tidb-集群) +1. [选择 TiDB 集群](#step-1-select-a-tidb-cluster) +2. [创建 Google Cloud 私有端点](#step-2-create-a-google-cloud-private-endpoint) +3. [接受端点访问](#step-3-accept-endpoint-access) +4. [连接到你的 TiDB 集群](#step-4-connect-to-your-tidb-cluster) -如果你有多个集群,需要对每个要使用 Google Cloud Private Service Connect 连接的集群重复这些步骤。 +如果你有多个集群,需要对每个希望通过 Google Cloud Private Service Connect 连接的集群重复以上步骤。 -### 前提条件 +### 前置条件 在开始创建端点之前: @@ -62,93 +62,93 @@ Google Cloud Private Service Connect 的架构如下:[^1] - [Service Directory API](https://cloud.google.com/service-directory/docs/reference/rest) - [Cloud DNS API](https://cloud.google.com/dns/docs/reference/v1) -- 准备以下具有创建端点所需权限的 [IAM 角色](https://cloud.google.com/iam/docs/understanding-roles)。 +- 准备以下具备创建端点所需权限的 [IAM 角色](https://cloud.google.com/iam/docs/understanding-roles)。 - 任务: - 创建端点 - - 自动或手动配置端点的 [DNS 条目](https://cloud.google.com/vpc/docs/configure-private-service-connect-services#dns-endpoint) - - 所需的 IAM 角色: + - 自动或手动为端点配置 [DNS 记录](https://cloud.google.com/vpc/docs/configure-private-service-connect-services#dns-endpoint) + - 所需 IAM 角色: - [Compute Network Admin](https://cloud.google.com/iam/docs/understanding-roles#compute.networkAdmin) (roles/compute.networkAdmin) - [Service Directory Editor](https://cloud.google.com/iam/docs/understanding-roles#servicedirectory.editor) (roles/servicedirectory.editor) -### 步骤 1:选择 TiDB 集群 +### Step 1. 选择 TiDB 集群 -1. 在项目的[**集群**](https://tidbcloud.com/project/clusters)页面,点击目标 TiDB 集群的名称进入其概览页面。你可以选择具有以下任一状态的集群: +1. 在项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标 TiDB 集群的名称,进入其概览页面。你可以选择以下任意状态的集群: - - **可用** - - **恢复中** - - **修改中** - - **导入中** + - **Available** + - **Restoring** + - **Modifying** + - **Importing** -2. 点击右上角的**连接**。此时会显示一个连接对话框。 +2. 点击右上角的 **Connect**。会弹出连接对话框。 -3. 在**连接类型**下拉列表中,选择**私有端点**,然后点击**创建私有端点连接**。 +3. 在 **Connection Type** 下拉列表中选择 **Private Endpoint**,然后点击 **Create Private Endpoint Connection**。 - > **注意:** + > **Note:** > - > 如果你已经创建了私有端点连接,活动端点将显示在连接对话框中。要创建其他私有端点连接,请点击左侧导航栏中的**设置** > **网络**导航到**网络**页面。 + > 如果你已经创建了私有端点连接,活动端点会显示在连接对话框中。若需创建更多私有端点连接,请通过左侧导航栏点击 **Settings** > **Networking** 进入 **Networking** 页面。 -### 步骤 2:创建 Google Cloud 私有端点 +### Step 2. 创建 Google Cloud 私有端点 -1. 提供以下信息以生成私有端点创建命令: - - **Google Cloud 项目 ID**:与你的 Google Cloud 账户关联的项目 ID。你可以在 [Google Cloud **仪表板**页面](https://console.cloud.google.com/home/dashboard)找到该 ID。 - - **Google Cloud VPC 名称**:指定项目中的 VPC 名称。你可以在 [Google Cloud **VPC 网络**页面](https://console.cloud.google.com/networking/networks/list)找到它。 - - **Google Cloud 子网名称**:指定 VPC 中的子网名称。你可以在 **VPC 网络详情**页面找到它。 - - **Private Service Connect 端点名称**:为要创建的私有端点输入一个唯一名称。 -2. 输入信息后,点击**生成命令**。 +1. 提供以下信息以生成创建私有端点的命令: + - **Google Cloud Project ID**:与你的 Google Cloud 账户关联的 Project ID。你可以在 [Google Cloud **Dashboard** 页面](https://console.cloud.google.com/home/dashboard)找到该 ID。 + - **Google Cloud VPC Name**:指定项目中的 VPC 名称。你可以在 [Google Cloud **VPC networks** 页面](https://console.cloud.google.com/networking/networks/list)找到。 + - **Google Cloud Subnet Name**:指定 VPC 下的子网名称。你可以在 **VPC network details** 页面找到。 + - **Private Service Connect Endpoint Name**:为将要创建的私有端点输入一个唯一名称。 +2. 输入信息后,点击 **Generate Command**。 3. 复制生成的命令。 -4. 打开 [Google Cloud Shell](https://console.cloud.google.com/home/dashboard) 并执行命令以创建私有端点。 +4. 打开 [Google Cloud Shell](https://console.cloud.google.com/home/dashboard) 并执行该命令以创建私有端点。 -### 步骤 3:接受端点访问 +### Step 3. 接受端点访问 -在 Google Cloud Shell 中成功执行命令后,返回 TiDB Cloud 控制台,然后点击**接受端点访问**。 +在 Google Cloud Shell 成功执行命令后,返回 TiDB Cloud 控制台并点击 **Accept Endpoint Access**。 如果你看到错误 `not received connection request from endpoint`,请确保你已正确复制命令并在 Google Cloud Shell 中成功执行。 -### 步骤 4:连接到 TiDB 集群 +### Step 4. 连接到你的 TiDB 集群 -接受私有端点连接后,你将被重定向回连接对话框。 +在你接受私有端点连接后,会自动返回到连接对话框。 -1. 等待私有端点连接状态从**系统检查中**变为**活动**(大约 5 分钟)。 -2. 在**连接方式**下拉列表中,选择你偏好的连接方法。对话框底部将显示相应的连接字符串。 -3. 使用连接字符串连接到你的集群。 +1. 等待私有端点连接状态从 **System Checking** 变为 **Active**(大约 5 分钟)。 +2. 在 **Connect With** 下拉列表中选择你偏好的连接方式。对应的连接字符串会显示在对话框底部。 +3. 使用该连接字符串连接到你的集群。 ### 私有端点状态参考 -使用私有端点连接时,私有端点或私有端点服务的状态会显示在[**私有端点**页面](#前提条件)上。 +当你使用私有端点连接时,私有端点或私有端点服务的状态会显示在 [**Private Endpoint** 页面](#prerequisites)。 -私有端点的可能状态说明如下: +私有端点可能的状态说明如下: -- **等待中**:等待处理。 -- **活动**:你的私有端点已准备就绪可以使用。你无法编辑此状态的私有端点。 -- **删除中**:正在删除私有端点。 -- **失败**:私有端点创建失败。你可以点击该行的**编辑**重试创建。 +- **Pending**:等待处理。 +- **Active**:你的私有端点已准备就绪。此状态下无法编辑该私有端点。 +- **Deleting**:私有端点正在删除中。 +- **Failed**:私有端点创建失败。你可以点击该行的 **Edit** 重试创建。 -私有端点服务的可能状态说明如下: +私有端点服务可能的状态说明如下: -- **创建中**:正在创建端点服务,需要 3 到 5 分钟。 -- **活动**:端点服务已创建,无论私有端点是否创建。 +- **Creating**:端点服务正在创建中,通常需要 3 到 5 分钟。 +- **Active**:端点服务已创建,无论私有端点是否已创建。 -## 故障排除 +## 故障排查 -### TiDB Cloud 无法创建端点服务。我该怎么办? +### TiDB Cloud 创建端点服务失败,怎么办? -在你打开**创建 Google Cloud 私有端点连接**页面并选择 TiDB 集群后,端点服务会自动创建。如果显示失败或长时间保持在**创建中**状态,请[提交支持工单](/tidb-cloud/tidb-cloud-support.md)寻求帮助。 +在你打开 **Create Google Cloud Private Endpoint Connection** 页面并选择 TiDB 集群后,端点服务会自动创建。如果显示为失败或长时间处于 **Creating** 状态,请提交 [support ticket](/tidb-cloud/tidb-cloud-support.md) 获取帮助。 -### 在 Google Cloud 中创建端点失败。我该怎么办? +### 在 Google Cloud 创建端点失败,怎么办? -要排查问题,你需要查看在 Google Cloud Shell 中执行私有端点创建命令后返回的错误消息。如果是权限相关的错误,你必须在重试之前授予必要的权限。 +要排查该问题,你需要查看在 Google Cloud Shell 执行私有端点创建命令后返回的错误信息。如果是权限相关错误,必须先授予所需权限后再重试。 -### 我取消了一些操作。在接受端点访问之前,如何处理取消? +### 我取消了一些操作,在接受端点访问前该如何处理? -已取消操作的未保存草稿不会被保留或显示。下次在 TiDB Cloud 控制台创建新的私有端点时,你需要重复每个步骤。 +已取消操作的未保存草稿不会被保留或显示。下次在 TiDB Cloud 控制台创建新私有端点时,你需要重新执行每一步。 -如果你已经在 Google Cloud Shell 中执行了创建私有端点的命令,你需要在 Google Cloud 控制台中手动[删除相应的端点](https://cloud.google.com/vpc/docs/configure-private-service-connect-services#delete-endpoint)。 +如果你已经在 Google Cloud Shell 执行了创建私有端点的命令,需要在 Google Cloud 控制台手动[删除对应端点](https://cloud.google.com/vpc/docs/configure-private-service-connect-services#delete-endpoint)。 -### 为什么我在 TiDB Cloud 控制台中看不到通过直接复制服务附件生成的端点? +### 为什么在 TiDB Cloud 控制台直接复制 service attachment 生成的端点无法看到? -在 TiDB Cloud 控制台中,你只能查看通过**创建 Google Cloud 私有端点连接**页面生成的命令创建的端点。 +在 TiDB Cloud 控制台,你只能查看通过 **Create Google Cloud Private Endpoint Connection** 页面生成命令创建的端点。 -但是,通过直接复制服务附件生成的端点(即不是通过 TiDB Cloud 控制台生成的命令创建的)不会显示在 TiDB Cloud 控制台中。 +而直接复制 service attachment(即未通过 TiDB Cloud 控制台生成命令创建的端点)生成的端点不会在 TiDB Cloud 控制台显示。 -[^1]: Google Cloud Private Service Connect 架构图来自 Google Cloud 文档中的 [Private Service Connect](https://cloud.google.com/vpc/docs/private-service-connect) 文档,根据 Creative Commons Attribution 4.0 International 许可。 +[^1]: Google Cloud Private Service Connect 架构图来自 Google Cloud 文档 [Private Service Connect](https://cloud.google.com/vpc/docs/private-service-connect),遵循 Creative Commons Attribution 4.0 International 许可协议。 \ No newline at end of file diff --git a/tidb-cloud/set-up-private-endpoint-connections-serverless.md b/tidb-cloud/set-up-private-endpoint-connections-serverless.md index 36bf21ed6198c..356e455a5f2c1 100644 --- a/tidb-cloud/set-up-private-endpoint-connections-serverless.md +++ b/tidb-cloud/set-up-private-endpoint-connections-serverless.md @@ -1,127 +1,127 @@ --- -title: 通过私有端点连接到 TiDB Cloud Serverless -summary: 了解如何通过私有端点连接到你的 TiDB Cloud 集群。 +title: 通过私有终端节点连接 TiDB Cloud Serverless +summary: 了解如何通过私有终端节点连接到你的 TiDB Cloud 集群。 --- -# 通过私有端点连接到 TiDB Cloud Serverless +# 通过私有终端节点连接 TiDB Cloud Serverless -本文档介绍如何通过私有端点连接到你的 TiDB Cloud Serverless 集群。 +本文档介绍如何通过私有终端节点连接到你的 TiDB Cloud Serverless 集群。 -> **提示:** +> **Tip:** > -> - 要了解如何通过 AWS 私有端点连接到 TiDB Cloud Dedicated 集群,请参阅[通过 AWS PrivateLink 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections.md)。 -> - 要了解如何通过 Azure 私有端点连接到 TiDB Cloud Dedicated 集群,请参阅[通过 Azure Private Link 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections-on-azure.md)。 -> - 要了解如何通过 Google Cloud 私有端点连接到 TiDB Cloud Dedicated 集群,请参阅[通过 Google Cloud Private Service Connect 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md)。 +> - 如果你想了解如何通过 AWS 私有终端节点连接到 TiDB Cloud Dedicated 集群,请参阅 [Connect to a TiDB Cloud Dedicated Cluster via AWS PrivateLink](/tidb-cloud/set-up-private-endpoint-connections.md)。 +> - 如果你想了解如何通过 Azure 私有终端节点连接到 TiDB Cloud Dedicated 集群,请参阅 [Connect to a TiDB Cloud Dedicated Cluster via Azure Private Link](/tidb-cloud/set-up-private-endpoint-connections-on-azure.md)。 +> - 如果你想了解如何通过 Google Cloud 私有终端节点连接到 TiDB Cloud Dedicated 集群,请参阅 [Connect to a TiDB Cloud Dedicated Cluster via Google Cloud Private Service Connect](/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md)。 -TiDB Cloud 支持通过 [AWS PrivateLink](https://aws.amazon.com/privatelink/?privatelink-blogs.sort-by=item.additionalFields.createdDate&privatelink-blogs.sort-order=desc) 对托管在 AWS VPC 中的 TiDB Cloud 服务进行高度安全的单向访问,就像该服务在你自己的 VPC 中一样。私有端点会在你的 VPC 中公开,你可以通过获得授权的端点连接到 TiDB Cloud 服务。 +TiDB Cloud 支持通过 [AWS PrivateLink](https://aws.amazon.com/privatelink/?privatelink-blogs.sort-by=item.additionalFields.createdDate&privatelink-blogs.sort-order=desc) 实现对托管在 AWS VPC 中的 TiDB Cloud 服务的高度安全且单向的访问,就像服务部署在你自己的 VPC 中一样。你的 VPC 中会暴露一个私有终端节点,你可以通过该终端节点并具备权限后连接到 TiDB Cloud 服务。 -在 AWS PrivateLink 的支持下,端点连接是安全且私密的,不会将你的数据暴露在公共互联网上。此外,端点连接支持 CIDR 重叠,更便于网络管理。 +借助 AWS PrivateLink,终端节点连接是安全且私有的,不会将你的数据暴露在公网。此外,终端节点连接支持 CIDR 重叠,便于网络管理。 -私有端点的架构如下: +私有终端节点的架构如下所示: -![私有端点架构](/media/tidb-cloud/aws-private-endpoint-arch.png) +![Private endpoint architecture](/media/tidb-cloud/aws-private-endpoint-arch.png) -有关私有端点和端点服务的更详细定义,请参阅以下 AWS 文档: +关于私有终端节点和终端节点服务的更详细定义,请参阅以下 AWS 文档: -- [什么是 AWS PrivateLink?](https://docs.aws.amazon.com/vpc/latest/privatelink/what-is-privatelink.html) -- [AWS PrivateLink 概念](https://docs.aws.amazon.com/vpc/latest/privatelink/concepts.html) +- [What is AWS PrivateLink?](https://docs.aws.amazon.com/vpc/latest/privatelink/what-is-privatelink.html) +- [AWS PrivateLink concepts](https://docs.aws.amazon.com/vpc/latest/privatelink/concepts.html) ## 限制 -- 目前,TiDB Cloud 仅在端点服务托管在 AWS 时支持通过私有端点连接到 TiDB Cloud Serverless。如果服务托管在 Google Cloud 上,则不适用私有端点。 -- 不支持跨区域的私有端点连接。 +- 目前,TiDB Cloud 仅在终端节点服务托管于 AWS 时支持对 TiDB Cloud Serverless 的私有终端节点连接。如果服务托管在 Google Cloud,则不适用私有终端节点。 +- 不支持跨区域的私有终端节点连接。 ## 前提条件 -确保在你的 AWS VPC 设置中启用了 DNS 主机名和 DNS 解析。在 [AWS 管理控制台](https://console.aws.amazon.com/) 中创建 VPC 时,这些功能默认是禁用的。 +请确保在 AWS VPC 设置中已启用 DNS 主机名和 DNS 解析。在 [AWS 管理控制台](https://console.aws.amazon.com/) 中创建 VPC 时,这些选项默认是关闭的。 -## 使用 AWS 设置私有端点 +## 使用 AWS 设置私有终端节点 -要通过私有端点连接到你的 TiDB Cloud Serverless 集群,请按照以下步骤操作: +要通过私有终端节点连接到你的 TiDB Cloud Serverless 集群,请按照以下步骤操作: -1. [选择 TiDB 集群](#步骤-1-选择-tidb-集群) -2. [创建 AWS 接口端点](#步骤-2-创建-aws-接口端点) -3. [连接到你的 TiDB 集群](#步骤-3-连接到你的-tidb-集群) +1. [选择 TiDB 集群](#step-1-choose-a-tidb-cluster) +2. [创建 AWS 接口终端节点](#step-2-create-an-aws-interface-endpoint) +3. [连接到你的 TiDB 集群](#step-3-connect-to-your-tidb-cluster) -### 步骤 1. 选择 TiDB 集群 +### Step 1. 选择 TiDB 集群 -1. 在[**集群**](https://tidbcloud.com/project/clusters)页面,点击目标 TiDB Cloud Serverless 集群的名称以进入其概览页面。 -2. 点击右上角的**连接**。将显示连接对话框。 -3. 在**连接类型**下拉列表中,选择**私有端点**。 -4. 记下**服务名称**、**可用区 ID** 和**区域 ID**。 +1. 在 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标 TiDB Cloud Serverless 集群的名称,进入其概览页面。 +2. 点击右上角的 **Connect**。会弹出连接对话框。 +3. 在 **Connection Type** 下拉列表中,选择 **Private Endpoint**。 +4. 记录下 **Service Name**、**Availability Zone ID** 和 **Region ID**。 - > **注意:** + > **Note:** > - > 每个 AWS 区域只需要创建一个私有端点,该端点可以由位于同一区域的所有 TiDB Cloud Serverless 集群共享。 + > 每个 AWS 区域只需创建一个私有终端节点,该终端节点可被同一区域内的所有 TiDB Cloud Serverless 集群共享。 -### 步骤 2. 创建 AWS 接口端点 +### Step 2. 创建 AWS 接口终端节点 -
+
-要使用 AWS 管理控制台创建 VPC 接口端点,请执行以下步骤: +如需使用 AWS 管理控制台创建 VPC 接口终端节点,请执行以下步骤: 1. 登录 [AWS 管理控制台](https://aws.amazon.com/console/),并在 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 打开 Amazon VPC 控制台。 -2. 在导航窗格中点击**端点**,然后点击右上角的**创建端点**。 +2. 在导航栏点击 **Endpoints**,然后点击右上角的 **Create Endpoint**。 - 将显示**创建端点**页面。 + 会显示 **Create endpoint** 页面。 - ![验证端点服务](/media/tidb-cloud/private-endpoint/create-endpoint-2.png) + ![Verify endpoint service](/media/tidb-cloud/private-endpoint/create-endpoint-2.png) -3. 选择**使用 NLB 和 GWLB 的端点服务**。 -4. 输入你在[步骤 1](#步骤-1-选择-tidb-集群)中找到的服务名称。 -5. 点击**验证服务**。 -6. 在下拉列表中选择你的 VPC。展开**其他设置**并选中**启用 DNS 名称**复选框。 -7. 在**子网**区域,选择你的 TiDB 集群所在的可用区,并选择子网 ID。 -8. 在**安全组**区域中正确选择你的安全组。 +3. 选择 **Endpoint services that use NLBs and GWLBs**。 +4. 输入你在 [step 1](#step-1-choose-a-tidb-cluster) 中获取的 service name。 +5. 点击 **Verify service**。 +6. 在下拉列表中选择你的 VPC。展开 **Additional settings** 并勾选 **Enable DNS name** 复选框。 +7. 在 **Subnets** 区域,选择你的 TiDB 集群所在的可用区,并选择 Subnet ID。 +8. 在 **Security groups** 区域,正确选择你的安全组。 - > **注意:** + > **Note:** > - > 确保所选安全组允许来自你的 EC2 实例在端口 4000 上的入站访问。 + > 请确保所选安全组允许你的 EC2 实例在 4000 端口上的入站访问。 -9. 点击**创建端点**。 +9. 点击 **Create endpoint**。
-
+
-要使用 AWS CLI 创建 VPC 接口端点,请执行以下步骤: +如需使用 AWS CLI 创建 VPC 接口终端节点,请执行以下步骤: -1. 要获取 **VPC ID** 和**子网 ID**,导航到你的 AWS 管理控制台,并在相关部分找到它们。确保填写你在[步骤 1](#步骤-1-选择-tidb-集群)中找到的**可用区 ID**。 -2. 复制下面提供的命令,用你获得的信息替换相关参数,然后在终端中执行它。 +1. 要获取 **VPC ID** 和 **Subnet ID**,请前往 AWS 管理控制台,在相关区域查找。确保你填写了在 [step 1](#step-1-choose-a-tidb-cluster) 中获取的 **Availability Zone ID**。 +2. 复制下方命令,将相关参数替换为你获取的信息,然后在终端中执行。 ```bash aws ec2 create-vpc-endpoint --vpc-id ${your_vpc_id} --region ${region_id} --service-name ${service_name} --vpc-endpoint-type Interface --subnet-ids ${your_subnet_id} ``` -> **提示:** +> **Tip:** > -> 在运行命令之前,你需要安装并配置 AWS CLI。有关详细信息,请参阅 [AWS CLI 配置基础知识](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html)。 +> 在运行该命令前,你需要已安装并配置好 AWS CLI。详情请参阅 [AWS CLI configuration basics](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html)。
-然后,你可以使用私有 DNS 名称连接到端点服务。 +然后你就可以通过私有 DNS 名称连接到终端节点服务。 -### 步骤 3:连接到你的 TiDB 集群 +### Step 3: 连接到你的 TiDB 集群 -创建接口端点后,返回 TiDB Cloud 控制台并执行以下步骤: +创建接口终端节点后,返回 TiDB Cloud 控制台并执行以下操作: -1. 在[**集群**](https://tidbcloud.com/project/clusters)页面,点击目标集群的名称以进入其概览页面。 -2. 点击右上角的**连接**。将显示连接对话框。 -3. 在**连接类型**下拉列表中,选择**私有端点**。 -4. 在**连接方式**下拉列表中,选择你首选的连接方法。对话框底部将显示相应的连接字符串。 -5. 使用连接字符串连接到你的集群。 +1. 在 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群名称,进入其概览页面。 +2. 点击右上角的 **Connect**。会弹出连接对话框。 +3. 在 **Connection Type** 下拉列表中,选择 **Private Endpoint**。 +4. 在 **Connect With** 下拉列表中,选择你偏好的连接方式。对话框底部会显示对应的连接字符串。 +5. 使用该连接字符串连接到你的集群。 -> **提示:** +> **Tip:** > -> 如果你无法连接到集群,原因可能是你在 AWS 中的 VPC 端点的安全组设置不正确。请参阅[此常见问题](#故障排除)获取解决方案。 +> 如果你无法连接到集群,可能是 AWS 中 VPC 终端节点的安全组设置不正确。解决方法请参阅 [此 FAQ](#troubleshooting)。 > -> 创建 VPC 端点时,如果遇到错误 `private-dns-enabled cannot be set because there is already a conflicting DNS domain for gatewayXX-privatelink.XX.prod.aws.tidbcloud.com in the VPC vpc-XXXXX`,这是因为已经创建了私有端点,无需创建新的端点。 +> 如果在创建 VPC 终端节点时遇到错误 `private-dns-enabled cannot be set because there is already a conflicting DNS domain for gatewayXX-privatelink.XX.prod.aws.tidbcloud.com in the VPC vpc-XXXXX`,说明已经创建过私有终端节点,无需重复创建。 -## 故障排除 +## 故障排查 -### 启用私有 DNS 后无法通过私有端点连接到 TiDB 集群。为什么? +### 启用私有 DNS 后无法通过私有终端节点连接 TiDB 集群,原因是什么? -你可能需要在 AWS 管理控制台中为 VPC 端点正确设置安全组。转到 **VPC** > **端点**。右键单击你的 VPC 端点并选择合适的**管理安全组**。合适的安全组应该是你 VPC 内允许来自 EC2 实例在端口 4000 或客户定义端口上的入站访问的安全组。 +你可能需要在 AWS 管理控制台中为 VPC 终端节点正确设置安全组。进入 **VPC** > **Endpoints**,右键你的 VPC 终端节点,选择合适的 **Manage security groups**。在你的 VPC 内选择允许 EC2 实例在 4000 端口或自定义端口入站访问的安全组。 -![管理安全组](/media/tidb-cloud/private-endpoint/manage-security-groups.png) +![Manage security groups](/media/tidb-cloud/private-endpoint/manage-security-groups.png) diff --git a/tidb-cloud/set-up-private-endpoint-connections.md b/tidb-cloud/set-up-private-endpoint-connections.md index 4c35821d703f8..4fbb039a63647 100644 --- a/tidb-cloud/set-up-private-endpoint-connections.md +++ b/tidb-cloud/set-up-private-endpoint-connections.md @@ -1,212 +1,212 @@ --- -title: 通过 AWS PrivateLink 连接到 TiDB Cloud Dedicated 集群 -summary: 了解如何通过 AWS 私有端点连接到 TiDB Cloud 集群。 +title: 通过 AWS PrivateLink 连接到 TiDB Cloud 专属集群 +summary: 了解如何通过私有终端节点使用 AWS 连接到你的 TiDB Cloud 集群。 --- -# 通过 AWS PrivateLink 连接到 TiDB Cloud Dedicated 集群 +# 通过 AWS PrivateLink 连接到 TiDB Cloud 专属集群 -本文介绍如何通过 [AWS PrivateLink](https://aws.amazon.com/privatelink) 连接到 TiDB Cloud Dedicated 集群。 +本文档介绍如何通过 [AWS PrivateLink](https://aws.amazon.com/privatelink) 连接到你的 TiDB Cloud 专属集群。 > **提示:** > -> - 要了解如何通过私有端点连接到 TiDB Cloud Serverless 集群,请参见[通过私有端点连接到 TiDB Cloud Serverless](/tidb-cloud/set-up-private-endpoint-connections-serverless.md)。 -> - 要了解如何通过 Azure 私有端点连接到 TiDB Cloud Dedicated 集群,请参见[通过 Azure Private Link 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections-on-azure.md)。 -> - 要了解如何通过 Google Cloud 私有端点连接到 TiDB Cloud Dedicated 集群,请参见[通过 Google Cloud Private Service Connect 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md)。 +> - 如需了解如何通过私有终端节点连接到 TiDB Cloud Serverless 集群,请参见 [Connect to TiDB Cloud Serverless via Private Endpoint](/tidb-cloud/set-up-private-endpoint-connections-serverless.md)。 +> - 如需了解如何通过 Azure 私有终端节点连接到 TiDB Cloud 专属集群,请参见 [Connect to a TiDB Cloud Dedicated Cluster via Azure Private Link](/tidb-cloud/set-up-private-endpoint-connections-on-azure.md)。 +> - 如需了解如何通过 Google Cloud 私有终端节点连接到 TiDB Cloud 专属集群,请参见 [Connect to a TiDB Cloud Dedicated Cluster via Google Cloud Private Service Connect](/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md)。 -TiDB Cloud 支持通过 [AWS PrivateLink](https://aws.amazon.com/privatelink) 安全地单向访问托管在 AWS VPC 中的 TiDB Cloud 服务,就像该服务在你自己的 VPC 中一样。私有端点会在你的 VPC 中公开,你可以通过具有权限的端点连接到 TiDB Cloud 服务。 +TiDB Cloud 支持通过 [AWS PrivateLink](https://aws.amazon.com/privatelink) 实现对托管在 AWS VPC 中的 TiDB Cloud 服务的高度安全且单向的访问,就像服务部署在你自己的 VPC 中一样。你的 VPC 中会暴露一个私有终端节点,你可以通过该终端节点并具备相应权限后连接到 TiDB Cloud 服务。 -由 AWS PrivateLink 提供支持的端点连接是安全和私密的,不会将你的数据暴露在公共互联网上。此外,端点连接支持 CIDR 重叠,更易于网络管理。 +借助 AWS PrivateLink,终端节点连接安全且私密,不会将你的数据暴露在公网上。此外,终端节点连接支持 CIDR 重叠,便于网络管理。 -私有端点的架构如下: +私有终端节点的架构如下所示: -![私有端点架构](/media/tidb-cloud/aws-private-endpoint-arch.png) +![Private endpoint architecture](/media/tidb-cloud/aws-private-endpoint-arch.png) -有关私有端点和端点服务的更详细定义,请参见以下 AWS 文档: +关于私有终端节点和终端节点服务的更详细定义,请参见以下 AWS 文档: -- [什么是 AWS PrivateLink?](https://docs.aws.amazon.com/vpc/latest/privatelink/what-is-privatelink.html) -- [AWS PrivateLink 概念](https://docs.aws.amazon.com/vpc/latest/privatelink/concepts.html) +- [What is AWS PrivateLink?](https://docs.aws.amazon.com/vpc/latest/privatelink/what-is-privatelink.html) +- [AWS PrivateLink concepts](https://docs.aws.amazon.com/vpc/latest/privatelink/concepts.html) ## 限制 -- 只有 `Organization Owner` 和 `Project Owner` 角色可以创建私有端点。 -- 私有端点和要连接的 TiDB 集群必须位于同一区域。 +- 只有 **Organization Owner** 和 **Project Owner** 角色可以创建私有终端节点。 +- 私有终端节点和要连接的 TiDB 集群必须位于同一区域。 -在大多数情况下,建议使用私有端点连接而不是 VPC 对等连接。但是,在以下情况下,你应该使用 VPC 对等连接而不是私有端点连接: +在大多数场景下,建议优先使用私有终端节点连接而不是 VPC 对等连接。但在以下场景下,应使用 VPC 对等连接而不是私有终端节点连接: -- 你正在使用 [TiCDC](https://docs.pingcap.com/tidb/stable/ticdc-overview) 集群将数据从源 TiDB 集群复制到跨区域的目标 TiDB 集群,以获得高可用性。目前,私有端点不支持跨区域连接。 -- 你正在使用 TiCDC 集群将数据复制到下游集群(如 Amazon Aurora、MySQL 和 Kafka),但你无法自行维护端点服务。 -- 你正在直接连接到 PD 或 TiKV 节点。 +- 你正在使用 [TiCDC](https://docs.pingcap.com/tidb/stable/ticdc-overview) 集群,将数据从源 TiDB 集群跨区域同步到目标 TiDB 集群,以实现高可用。目前,私有终端节点不支持跨区域连接。 +- 你正在使用 TiCDC 集群将数据同步到下游集群(如 Amazon Aurora、MySQL 和 Kafka),但无法自行维护终端节点服务。 +- 你需要直接连接到 PD 或 TiKV 节点。 ## 前提条件 -确保在 AWS VPC 设置中启用了 DNS 主机名和 DNS 解析。在 [AWS 管理控制台](https://console.aws.amazon.com/) 中创建 VPC 时,这些功能默认是禁用的。 +请确保在 AWS VPC 设置中已启用 DNS 主机名和 DNS 解析。在 [AWS 管理控制台](https://console.aws.amazon.com/) 中创建 VPC 时,这些选项默认是关闭的。 -## 设置私有端点连接并连接到集群 +## 设置私有终端节点连接并连接到你的集群 -要通过私有端点连接到 TiDB Cloud Dedicated 集群,请完成以下步骤: +要通过私有终端节点连接到 TiDB Cloud 专属集群,请完成以下步骤: -1. [选择 TiDB 集群](#步骤-1-选择-tidb-集群) -2. [创建 AWS 接口端点](#步骤-2-创建-aws-接口端点) -3. [创建私有端点连接](#步骤-3-创建私有端点连接) -4. [启用私有 DNS](#步骤-4-启用私有-dns) -5. [连接到 TiDB 集群](#步骤-5-连接到-tidb-集群) +1. [选择 TiDB 集群](#step-1-select-a-tidb-cluster) +2. [创建 AWS 接口终端节点](#step-2-create-an-aws-interface-endpoint) +3. [创建私有终端节点连接](#step-3-create-a-private-endpoint-connection) +4. [启用私有 DNS](#step-4-enable-private-dns) +5. [连接到你的 TiDB 集群](#step-5-connect-to-your-tidb-cluster) -如果你有多个集群,则需要对要使用 AWS PrivateLink 连接的每个集群重复这些步骤。 +如果你有多个集群,需要对每个希望通过 AWS PrivateLink 连接的集群重复上述步骤。 -### 步骤 1. 选择 TiDB 集群 +### Step 1. 选择 TiDB 集群 -1. 在项目的[**集群**](https://tidbcloud.com/project/clusters)页面上,点击目标 TiDB 集群的名称以进入其概览页面。 -2. 点击右上角的**连接**。此时会显示连接对话框。 -3. 在**连接类型**下拉列表中,选择**私有端点**,然后点击**创建私有端点连接**。 +1. 在项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标 TiDB 集群的名称,进入其概览页面。 +2. 点击右上角的 **Connect**。会弹出连接对话框。 +3. 在 **Connection Type** 下拉列表中选择 **Private Endpoint**,然后点击 **Create Private Endpoint Connection**。 > **注意:** > -> 如果你已经创建了私有端点连接,活动端点将显示在连接对话框中。要创建其他私有端点连接,请点击左侧导航栏中的**设置** > **网络**,导航到**网络**页面。 +> 如果你已经创建了私有终端节点连接,激活的终端节点会显示在连接对话框中。如需创建更多私有终端节点连接,请通过左侧导航栏点击 **Settings** > **Networking** 进入 **Networking** 页面。 -### 步骤 2. 创建 AWS 接口端点 +### Step 2. 创建 AWS 接口终端节点 > **注意:** > -> 对于 2023 年 3 月 28 日之后创建的每个 TiDB Cloud Dedicated 集群,相应的端点服务会在集群创建后 3 到 4 分钟内自动创建。 +> 对于 2023 年 3 月 28 日之后创建的每个 TiDB Cloud 专属集群,系统会在集群创建后 3 到 4 分钟内自动创建对应的终端节点服务。 -如果你看到 `TiDB Private Link Service is ready` 消息,则相应的端点服务已准备就绪。你可以提供以下信息来创建端点。 +如果你看到 `TiDB Private Link Service is ready` 消息,说明对应的终端节点服务已就绪。你可以提供以下信息来创建终端节点。 -1. 填写**你的 VPC ID** 和**你的子网 ID** 字段。你可以从 [AWS 管理控制台](https://console.aws.amazon.com/) 找到这些 ID。对于多个子网,请输入以空格分隔的 ID。 -2. 点击**生成命令**以获取以下端点创建命令。 +1. 填写 **Your VPC ID** 和 **Your Subnet IDs** 字段。你可以在 [AWS 管理控制台](https://console.aws.amazon.com/) 中找到这些 ID。若有多个子网,使用空格分隔各个 ID。 +2. 点击 **Generate Command** 获取如下终端节点创建命令。 ```bash aws ec2 create-vpc-endpoint --vpc-id ${your_vpc_id} --region ${your_region} --service-name ${your_endpoint_service_name} --vpc-endpoint-type Interface --subnet-ids ${your_application_subnet_ids} ``` -然后,你可以使用 AWS CLI 或 [AWS 管理控制台](https://aws.amazon.com/console/) 创建 AWS 接口端点。 +然后,你可以通过 AWS CLI 或 [AWS 管理控制台](https://aws.amazon.com/console/) 创建 AWS 接口终端节点。 -
+
-要使用 AWS CLI 创建 VPC 接口端点,请执行以下步骤: +如需使用 AWS CLI 创建 VPC 接口终端节点,请执行以下步骤: 1. 复制生成的命令并在终端中运行。 -2. 记录你刚刚创建的 VPC 端点 ID。 +2. 记录你刚刚创建的 VPC 终端节点 ID。 > **提示:** > -> - 运行命令之前,你需要安装并配置 AWS CLI。有关详细信息,请参见 [AWS CLI 配置基础知识](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html)。 +> - 在运行命令前,你需要已安装并配置好 AWS CLI。详情请参见 [AWS CLI configuration basics](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html)。 > -> - 如果你的服务跨越超过三个可用区(AZ),你将收到一条错误消息,指示 VPC 端点服务不支持子网的可用区。当你选择的区域中除了 TiDB 集群所在的可用区外还有额外的可用区时,就会出现此问题。在这种情况下,你可以联系 [PingCAP 技术支持](https://docs.pingcap.com/tidbcloud/tidb-cloud-support)。 +> - 如果你的服务跨越了三个以上的可用区(AZ),你会收到一条错误消息,提示 VPC 终端节点服务不支持该子网的可用区。该问题通常发生在你选择的区域中存在额外的可用区,而你的 TiDB 集群并未部署在该可用区。在这种情况下,你可以联系 [PingCAP 技术支持](https://docs.pingcap.com/tidbcloud/tidb-cloud-support)。
-
+
-要使用 AWS 管理控制台创建 VPC 接口端点,请执行以下步骤: +如需使用 AWS 管理控制台创建 VPC 接口终端节点,请执行以下步骤: -1. 登录 [AWS 管理控制台](https://aws.amazon.com/console/),并在 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 打开 Amazon VPC 控制台。 -2. 在导航窗格中点击**端点**,然后点击右上角的**创建端点**。 +1. 登录 [AWS 管理控制台](https://aws.amazon.com/console/),并打开 Amazon VPC 控制台 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/)。 +2. 在导航栏点击 **Endpoints**,然后点击右上角的 **Create Endpoint**。 - 此时会显示**创建端点**页面。 + 会显示 **Create endpoint** 页面。 - ![验证端点服务](/media/tidb-cloud/private-endpoint/create-endpoint-2.png) + ![Verify endpoint service](/media/tidb-cloud/private-endpoint/create-endpoint-2.png) -3. 在**端点设置**区域,如果需要,填写名称标签,然后选择**使用 NLB 和 GWLB 的端点服务**选项。 -4. 在**服务设置**区域,输入生成的命令中的服务名称 `${your_endpoint_service_name}`(`--service-name ${your_endpoint_service_name}`)。 -5. 点击**验证服务**。 -6. 在**网络设置**区域,从下拉列表中选择你的 VPC。 -7. 在**子网**区域,选择 TiDB 集群所在的可用区。 +3. 在 **Endpoint settings** 区域,如有需要填写名称标签,然后选择 **Endpoint services that use NLBs and GWLBs** 选项。 +4. 在 **Service settings** 区域,输入生成命令中的服务名称 `${your_endpoint_service_name}`(即 `--service-name ${your_endpoint_service_name}`)。 +5. 点击 **Verify service**。 +6. 在 **Network settings** 区域,从下拉列表中选择你的 VPC。 +7. 在 **Subnets** 区域,选择你的 TiDB 集群所在的可用区。 > **提示:** > - > 如果你的服务跨越超过三个可用区(AZ),你可能无法在**子网**区域中选择可用区。当你选择的区域中除了 TiDB 集群所在的可用区外还有额外的可用区时,就会出现此问题。在这种情况下,请联系 [PingCAP 技术支持](https://docs.pingcap.com/tidbcloud/tidb-cloud-support)。 + > 如果你的服务跨越了三个以上的可用区(AZ),你可能无法在 **Subnets** 区域选择 AZ。该问题通常发生在你选择的区域中存在额外的可用区,而你的 TiDB 集群并未部署在该可用区。在这种情况下,请联系 [PingCAP 技术支持](https://docs.pingcap.com/tidbcloud/tidb-cloud-support)。 -8. 在**安全组**区域,正确选择你的安全组。 +8. 在 **Security groups** 区域,正确选择你的安全组。 > **注意:** > - > 确保所选安全组允许来自 EC2 实例的端口 4000 或客户定义端口的入站访问。 + > 请确保所选安全组允许你的 EC2 实例通过 4000 端口或自定义端口入站访问。 -9. 点击**创建端点**。 +9. 点击 **Create endpoint**。
-### 步骤 3. 创建私有端点连接 +### Step 3. 创建私有终端节点连接 1. 返回 TiDB Cloud 控制台。 -2. 在**创建 AWS 私有端点连接**页面,输入你的 VPC 端点 ID。 -3. 点击**创建私有端点连接**。 +2. 在 **Create AWS Private Endpoint Connection** 页面,输入你的 VPC 终端节点 ID。 +3. 点击 **Create Private Endpoint Connection**。 > **提示:** > -> 你可以在以下两个页面查看和管理私有端点连接: +> 你可以在以下两个页面查看和管理私有终端节点连接: > -> - 集群级别的**网络**页面:使用左上角的组合框切换到目标集群,然后点击左侧导航栏中的**设置** > **网络**。 -> - 项目级别的**网络访问**页面:使用左上角的组合框切换到目标项目,然后点击左侧导航栏中的**项目设置** > **网络访问**。 +> - 集群级 **Networking** 页面:通过左上角下拉框切换到目标集群,然后点击左侧导航栏的 **Settings** > **Networking**。 +> - 项目级 **Network Access** 页面:通过左上角下拉框切换到目标项目,然后点击左侧导航栏的 **Project Settings** > **Network Access**。 -### 步骤 4. 启用私有 DNS +### Step 4. 启用私有 DNS 在 AWS 中启用私有 DNS。你可以使用 AWS CLI 或 AWS 管理控制台。 -
+
-要使用 AWS CLI 启用私有 DNS,请从**创建私有端点连接**页面复制以下 `aws ec2 modify-vpc-endpoint` 命令并在 AWS CLI 中运行。 +如需使用 AWS CLI 启用私有 DNS,请从 **Create Private Endpoint Connection** 页面复制以下 `aws ec2 modify-vpc-endpoint` 命令,并在 AWS CLI 中运行。 ```bash aws ec2 modify-vpc-endpoint --vpc-endpoint-id ${your_vpc_endpoint_id} --private-dns-enabled ``` -或者,你可以在集群的**网络**页面上找到该命令。找到私有端点,然后在**操作**列中点击 **...*** > **启用 DNS**。 +或者,你也可以在集群的 **Networking** 页面找到该命令。定位到私有终端节点,在 **Action** 列点击 **...*** > **Enable DNS**。
-
+
-要在 AWS 管理控制台中启用私有 DNS: +如需在 AWS 管理控制台启用私有 DNS: -1. 转到 **VPC** > **端点**。 -2. 右键点击你的端点 ID,然后选择**修改私有 DNS 名称**。 -3. 选中**为此端点启用**复选框。 -4. 点击**保存更改**。 +1. 进入 **VPC** > **Endpoints**。 +2. 右键点击你的终端节点 ID,选择 **Modify private DNS name**。 +3. 勾选 **Enable for this endpoint** 复选框。 +4. 点击 **Save changes**。 - ![启用私有 DNS](/media/tidb-cloud/private-endpoint/enable-private-dns.png) + ![Enable private DNS](/media/tidb-cloud/private-endpoint/enable-private-dns.png)
-### 步骤 5. 连接到 TiDB 集群 +### Step 5. 连接到你的 TiDB 集群 -接受私有端点连接后,你将被重定向回连接对话框。 +在你接受私有终端节点连接后,会自动返回连接对话框。 -1. 等待私有端点连接状态从**系统检查中**变为**活动**(大约 5 分钟)。 -2. 在**连接方式**下拉列表中,选择你首选的连接方法。对话框底部将显示相应的连接字符串。 -3. 使用连接字符串连接到你的集群。 +1. 等待私有终端节点连接状态从 **System Checking** 变为 **Active**(大约 5 分钟)。 +2. 在 **Connect With** 下拉列表中选择你偏好的连接方式。对话框底部会显示对应的连接字符串。 +3. 使用该连接字符串连接到你的集群。 > **提示:** > -> 如果无法连接到集群,原因可能是 AWS 中 VPC 端点的安全组设置不正确。有关解决方案,请参见[此常见问题](#故障排除)。 +> 如果无法连接到集群,可能是 AWS 中 VPC 终端节点的安全组设置不正确。解决方法请参见 [此常见问题](#troubleshooting)。 -### 私有端点状态参考 +### 私有终端节点状态参考 -使用私有端点连接时,私有端点或私有端点服务的状态会显示在以下页面上: +使用私有终端节点连接时,私有终端节点或私有终端节点服务的状态会显示在以下页面: -- 集群级别的**网络**页面:使用左上角的组合框切换到目标集群,然后点击左侧导航栏中的**设置** > **网络**。 -- 项目级别的**网络访问**页面:使用左上角的组合框切换到目标项目,然后点击左侧导航栏中的**项目设置** > **网络访问**。 +- 集群级 **Networking** 页面:通过左上角下拉框切换到目标集群,然后点击左侧导航栏的 **Settings** > **Networking**。 +- 项目级 **Network Access** 页面:通过左上角下拉框切换到目标项目,然后点击左侧导航栏的 **Project Settings** > **Network Access**。 -私有端点的可能状态说明如下: +私有终端节点可能的状态说明如下: -- **未配置**:已创建端点服务但尚未创建私有端点。 -- **等待中**:等待处理。 -- **活动**:你的私有端点已准备就绪。你无法编辑此状态的私有端点。 -- **删除中**:正在删除私有端点。 -- **失败**:私有端点创建失败。你可以点击该行的**编辑**重试创建。 +- **Not Configured**:已创建终端节点服务,但尚未创建私有终端节点。 +- **Pending**:等待处理。 +- **Active**:你的私有终端节点已就绪。此状态下无法编辑该私有终端节点。 +- **Deleting**:私有终端节点正在删除中。 +- **Failed**:私有终端节点创建失败。你可以点击该行的 **Edit** 重试创建。 -私有端点服务的可能状态说明如下: +私有终端节点服务可能的状态说明如下: -- **创建中**:正在创建端点服务,需要 3 到 5 分钟。 -- **活动**:已创建端点服务,无论是否创建了私有端点。 -- **删除中**:正在删除端点服务或集群,需要 3 到 5 分钟。 +- **Creating**:终端节点服务正在创建中,需等待 3 到 5 分钟。 +- **Active**:终端节点服务已创建,无论私有终端节点是否已创建。 +- **Deleting**:终端节点服务或集群正在删除中,需等待 3 到 5 分钟。 -## 故障排除 +## 故障排查 -### 启用私有 DNS 后无法通过私有端点连接到 TiDB 集群。为什么? +### 启用私有 DNS 后,无法通过私有终端节点连接到 TiDB 集群,原因是什么? -你可能需要在 AWS 管理控制台中为 VPC 端点正确设置安全组。转到 **VPC** > **端点**。右键点击你的 VPC 端点,然后选择适当的**管理安全组**。适当的安全组应该是你 VPC 中允许来自 EC2 实例的端口 4000 或客户定义端口的入站访问的安全组。 +你可能需要在 AWS 管理控制台中为 VPC 终端节点正确设置安全组。进入 **VPC** > **Endpoints**,右键点击你的 VPC 终端节点,选择合适的 **Manage security groups**。确保你 VPC 内的安全组允许你的 EC2 实例通过 4000 端口或自定义端口入站访问。 -![管理安全组](/media/tidb-cloud/private-endpoint/manage-security-groups.png) +![Manage security groups](/media/tidb-cloud/private-endpoint/manage-security-groups.png) \ No newline at end of file diff --git a/tidb-cloud/set-up-vpc-peering-connections.md b/tidb-cloud/set-up-vpc-peering-connections.md index d40fb8748a282..0a6bd06bd65ae 100644 --- a/tidb-cloud/set-up-vpc-peering-connections.md +++ b/tidb-cloud/set-up-vpc-peering-connections.md @@ -1,154 +1,151 @@ --- -title: 通过 VPC 对等连接连接到 TiDB Cloud Dedicated -summary: 了解如何通过 VPC 对等连接连接到 TiDB Cloud Dedicated。 +title: 通过 VPC Peering 连接 TiDB Cloud Dedicated +summary: 了解如何通过 VPC Peering 连接 TiDB Cloud Dedicated。 --- -# 通过 VPC 对等连接连接到 TiDB Cloud Dedicated +# 通过 VPC Peering 连接 TiDB Cloud Dedicated -> **注意:** +> **Note:** > -> VPC 对等连接仅适用于在 AWS 和 Google Cloud 上托管的 TiDB Cloud Dedicated 集群。你无法使用 VPC 对等连接连接到在 Azure 上托管的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群和 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。 +> VPC Peering 连接仅适用于托管在 AWS 和 Google Cloud 上的 TiDB Cloud Dedicated 集群。你无法使用 VPC Peering 连接托管在 Azure 上的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群以及 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。 -要通过 VPC 对等连接将应用程序连接到 TiDB Cloud,你需要与 TiDB Cloud 建立 [VPC 对等连接](/tidb-cloud/tidb-cloud-glossary.md#vpc-peering)。本文档将指导你在 [AWS](#在-aws-上设置-vpc-对等连接) 和 [Google Cloud](#在-google-cloud-上设置-vpc-对等连接) 上设置 VPC 对等连接,并通过 VPC 对等连接连接到 TiDB Cloud。 +要通过 VPC Peering 将你的应用程序连接到 TiDB Cloud,你需要与 TiDB Cloud 建立 [VPC Peering](/tidb-cloud/tidb-cloud-glossary.md#vpc-peering)。本文档将指导你在 [AWS 上设置 VPC Peering](#set-up-vpc-peering-on-aws) 和 [Google Cloud 上设置 VPC Peering](#set-up-vpc-peering-on-google-cloud),并通过 VPC Peering 连接到 TiDB Cloud。 -VPC 对等连接是两个 VPC 之间的网络连接,使你能够使用私有 IP 地址在它们之间路由流量。任一 VPC 中的实例都可以相互通信,就像它们在同一网络中一样。 +VPC Peering 连接是两个 VPC 之间的网络连接,使你能够使用私有 IP 地址在它们之间路由流量。任一 VPC 中的实例都可以像在同一网络中一样相互通信。 -目前,同一项目中同一区域的 TiDB 集群都创建在同一个 VPC 中。因此,一旦在项目的某个区域中设置了 VPC 对等连接,该项目中同一区域创建的所有 TiDB 集群都可以在你的 VPC 中连接。VPC 对等连接的设置因云服务提供商而异。 +目前,同一项目同一区域下的 TiDB 集群会创建在同一个 VPC 中。因此,一旦在某个项目的某个区域设置了 VPC Peering,该项目在同一区域内创建的所有 TiDB 集群都可以通过你的 VPC 进行连接。不同云服务商的 VPC Peering 设置方式有所不同。 -> **提示:** +> **Tip:** > -> 要将应用程序连接到 TiDB Cloud,你还可以与 TiDB Cloud 建立[私有端点连接](/tidb-cloud/set-up-private-endpoint-connections.md),这种连接方式安全且私密,不会将你的数据暴露在公共互联网上。建议使用私有端点而不是 VPC 对等连接。 +> 你也可以通过与 TiDB Cloud 建立 [私有终端节点连接](/tidb-cloud/set-up-private-endpoint-connections.md) 来连接你的应用程序到 TiDB Cloud,该方式安全且私密,不会将你的数据暴露在公网。推荐优先使用私有终端节点而不是 VPC Peering 连接。 -## 前提条件:为区域设置 CIDR +## 前置条件:为区域设置 CIDR CIDR(无类域间路由)是用于为 TiDB Cloud Dedicated 集群创建 VPC 的 CIDR 块。 -在向区域添加 VPC 对等连接请求之前,你必须为该区域设置 CIDR 并在该区域创建初始的 TiDB Cloud Dedicated 集群。一旦创建了第一个 Dedicated 集群,TiDB Cloud 将创建该集群的 VPC,允许你建立与应用程序 VPC 的对等连接。 +在向某个区域添加 VPC Peering 请求之前,你必须为该区域设置 CIDR,并在该区域创建首个 TiDB Cloud Dedicated 集群。首个 Dedicated 集群创建完成后,TiDB Cloud 会为该集群创建 VPC,从而允许你与应用程序的 VPC 建立 Peering 连接。 -你可以在创建第一个 TiDB Cloud Dedicated 集群时设置 CIDR。如果你想在创建集群之前设置 CIDR,请执行以下操作: +你可以在创建首个 TiDB Cloud Dedicated 集群时设置 CIDR。如果你希望在创建集群前设置 CIDR,请执行以下操作: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标项目。 -2. 在左侧导航栏中,点击**项目设置** > **网络访问**。 -3. 在**网络访问**页面,点击**项目 CIDR** 标签页,然后根据你的云服务提供商选择 **AWS** 或 **Google Cloud**。 -4. 在右上角,点击**创建 CIDR**。在**创建 AWS CIDR** 或**创建 Google Cloud CIDR** 对话框中指定区域和 CIDR 值,然后点击**确认**。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,使用左上角的下拉框切换到目标项目。 +2. 在左侧导航栏,点击 **Project Settings** > **Network Access**。 +3. 在 **Network Access** 页面,点击 **Project CIDR** 标签页,然后根据你的云服务商选择 **AWS** 或 **Google Cloud**。 +4. 在右上角,点击 **Create CIDR**。在 **Create AWS CIDR** 或 **Create Google Cloud CIDR** 对话框中指定区域和 CIDR 值,然后点击 **Confirm**。 ![Project-CIDR4](/media/tidb-cloud/Project-CIDR4.png) - > **注意:** + > **Note:** > - > - 为避免与应用程序所在 VPC 的 CIDR 发生冲突,你需要在此字段中设置不同的项目 CIDR。 - > - 对于 AWS 区域,建议配置 `/16` 到 `/23` 之间的 IP 范围大小。支持的网络地址包括: + > - 为避免与你应用程序所在 VPC 的 CIDR 冲突,你需要在此字段设置不同的项目 CIDR。 + > - 对于 AWS 区域,建议配置 `/16` 到 `/23` 之间的 IP 范围。支持的网络地址包括: > - 10.250.0.0 - 10.251.255.255 > - 172.16.0.0 - 172.31.255.255 > - 192.168.0.0 - 192.168.255.255 - > - 对于 Google Cloud 区域,建议配置 `/19` 到 `/20` 之间的 IP 范围大小。如果你想配置 `/16` 到 `/18` 之间的 IP 范围大小,请联系 [TiDB Cloud 支持团队](/tidb-cloud/tidb-cloud-support.md)。支持的网络地址包括: + > - 对于 Google Cloud 区域,建议配置 `/19` 到 `/20` 之间的 IP 范围。如果你希望配置 `/16` 到 `/18` 之间的 IP 范围,请联系 [TiDB Cloud Support](/tidb-cloud/tidb-cloud-support.md)。支持的网络地址包括: > - 10.250.0.0 - 10.251.255.255 > - 172.16.0.0 - 172.17.255.255 > - 172.30.0.0 - 172.31.255.255 - > - TiDB Cloud 根据区域的 CIDR 块大小限制项目中某个区域的 TiDB Cloud 节点数量。 + > - TiDB Cloud 会根据区域 CIDR 块的大小限制该项目在该区域内的 TiDB Cloud 节点数量。 -5. 查看云服务提供商和特定区域的 CIDR。 +5. 查看云服务商及具体区域的 CIDR。 - CIDR 默认处于非活动状态。要激活 CIDR,你需要在目标区域创建一个集群。当区域 CIDR 处于活动状态时,你可以为该区域创建 VPC 对等连接。 + CIDR 默认处于未激活状态。要激活 CIDR,你需要在目标区域创建集群。当区域 CIDR 激活后,你就可以为该区域创建 VPC Peering。 ![Project-CIDR2](/media/tidb-cloud/Project-CIDR2.png) -## 在 AWS 上设置 VPC 对等连接 +## 在 AWS 上设置 VPC Peering -本节介绍如何在 AWS 上设置 VPC 对等连接。对于 Google Cloud,请参见[在 Google Cloud 上设置 VPC 对等连接](#在-google-cloud-上设置-vpc-对等连接)。 +本节介绍如何在 AWS 上设置 VPC Peering 连接。关于 Google Cloud,请参见 [在 Google Cloud 上设置 VPC Peering](#set-up-vpc-peering-on-google-cloud)。 -### 步骤 1. 添加 VPC 对等连接请求 +### 步骤 1. 添加 VPC Peering 请求 -你可以在 TiDB Cloud 控制台中的项目级**网络访问**页面或集群级**网络**页面上添加 VPC 对等连接请求。 +你可以在 TiDB Cloud 控制台的项目级 **Network Access** 页面或集群级 **Networking** 页面添加 VPC Peering 请求。 -
+
-1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标项目。 -2. 在左侧导航栏中,点击**项目设置** > **网络访问**。 -3. 在**网络访问**页面,点击 **VPC 对等连接**标签页,然后点击 **AWS** 子标签页。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,使用左上角的下拉框切换到目标项目。 +2. 在左侧导航栏,点击 **Project Settings** > **Network Access**。 +3. 在 **Network Access** 页面,点击 **VPC Peering** 标签页,然后点击 **AWS** 子标签。 - 默认显示 **VPC 对等连接**配置。 + 默认会显示 **VPC Peering** 配置。 -4. 在右上角,点击**创建 VPC 对等连接**,选择 **TiDB Cloud VPC 区域**,然后填写你现有 AWS VPC 的必需信息: +4. 在右上角,点击 **Create VPC Peering**,选择 **TiDB Cloud VPC Region**,然后填写你现有 AWS VPC 的相关信息: - - 你的 VPC 区域 - - AWS 账户 ID + - Your VPC Region + - AWS Account ID - VPC ID - VPC CIDR - 你可以从 [AWS 管理控制台](https://console.aws.amazon.com/) 的 VPC 详情页面获取此类信息。TiDB Cloud 支持在同一区域或不同区域的 VPC 之间创建 VPC 对等连接。 + 你可以在 [AWS 管理控制台](https://console.aws.amazon.com/) 的 VPC 详情页获取这些信息。TiDB Cloud 支持在同一区域或不同区域的 VPC 之间创建 VPC Peering。 ![VPC peering](/media/tidb-cloud/vpc-peering/vpc-peering-creating-infos.png) -5. 点击**创建**发送 VPC 对等连接请求,然后在 **VPC 对等连接** > **AWS** 标签页上查看 VPC 对等连接信息。新创建的 VPC 对等连接状态为**系统检查中**。 +5. 点击 **Create** 发送 VPC Peering 请求,然后在 **VPC Peering** > **AWS** 标签页查看 VPC Peering 信息。新建的 VPC Peering 状态为 **System Checking**。 -6. 要查看新创建的 VPC 对等连接的详细信息,请在**操作**列中点击 **...** > **查看**。此时会显示 **VPC 对等连接详情**页面。 +6. 若要查看新建 VPC Peering 的详细信息,在 **Action** 列点击 **...** > **View**。将显示 **VPC Peering Details** 页面。
-
+
1. 打开目标集群的概览页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/)并导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称以进入其概览页面。 + 2. 点击目标集群名称,进入其概览页面。 -2. 在左侧导航栏中,点击**设置** > **网络**。 +2. 在左侧导航栏,点击 **Settings** > **Networking**。 -3. 在**网络**页面,点击**创建 VPC 对等连接**,然后填写你现有 AWS VPC 的必需信息: +3. 在 **Networking** 页面,点击 **Create VPC Peering**,然后填写你现有 AWS VPC 的相关信息: - - 你的 VPC 区域 - - AWS 账户 ID + - Your VPC Region + - AWS Account ID - VPC ID - VPC CIDR - 你可以从 [AWS 管理控制台](https://console.aws.amazon.com/) 的 VPC 详情页面获取此类信息。TiDB Cloud 支持在同一区域或不同区域的 VPC 之间创建 VPC 对等连接。 + 你可以在 [AWS 管理控制台](https://console.aws.amazon.com/) 的 VPC 详情页获取这些信息。TiDB Cloud 支持在同一区域或不同区域的 VPC 之间创建 VPC Peering。 ![VPC peering](/media/tidb-cloud/vpc-peering/vpc-peering-creating-infos.png) -4. 点击**创建**发送 VPC 对等连接请求,然后在**网络** > **AWS VPC 对等连接**部分查看 VPC 对等连接信息。新创建的 VPC 对等连接状态为**系统检查中**。 +4. 点击 **Create** 发送 VPC Peering 请求,然后在 **Networking** > **AWS VPC Peering** 区域查看 VPC Peering 信息。新建的 VPC Peering 状态为 **System Checking**。 -5. 要查看新创建的 VPC 对等连接的详细信息,请在**操作**列中点击 **...** > **查看**。此时会显示 **AWS VPC 对等连接详情**页面。 +5. 若要查看新建 VPC Peering 的详细信息,在 **Action** 列点击 **...** > **View**。将显示 **AWS VPC Peering Details** 页面。
-### 步骤 2. 批准并配置 VPC 对等连接 +### 步骤 2. 审批并配置 VPC Peering -你可以使用 AWS CLI 或 AWS 控制台批准和配置 VPC 对等连接。 +你可以使用 AWS CLI 或 AWS 控制台来审批并配置 VPC Peering 连接。
-1. 安装 AWS 命令行界面 (AWS CLI)。 - - {{< copyable "shell-regular" >}} +1. 安装 AWS 命令行工具(AWS CLI)。 + ```bash curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" unzip awscliv2.zip sudo ./aws/install ``` -2. 根据你的账户信息配置 AWS CLI。要获取 AWS CLI 所需的信息,请参见 [AWS CLI 配置基础知识](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html)。 - - {{< copyable "shell-regular" >}} +2. 根据你的账户信息配置 AWS CLI。获取 AWS CLI 所需信息,请参见 [AWS CLI 配置基础](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html)。 + ```bash aws configure ``` 3. 用你的账户信息替换以下变量值。 - {{< copyable "shell-regular" >}} - + ```bash - # 设置相关变量。 + # Sets up the related variables. pcx_tidb_to_app_id="" app_region="" app_vpc_id="" @@ -158,7 +155,7 @@ CIDR(无类域间路由)是用于为 TiDB Cloud Dedicated 集群创建 VPC 例如: ``` - # 设置相关变量 + # Sets up the related variables pcx_tidb_to_app_id="pcx-069f41efddcff66c8" app_region="us-west-2" app_vpc_id="vpc-0039fb90bb5cf8698" @@ -167,17 +164,15 @@ CIDR(无类域间路由)是用于为 TiDB Cloud Dedicated 集群创建 VPC 4. 运行以下命令。 - {{< copyable "shell-regular" >}} - + ```bash - # 接受 VPC 对等连接请求。 + # Accepts the VPC peering connection request. aws ec2 accept-vpc-peering-connection --vpc-peering-connection-id "$pcx_tidb_to_app_id" ``` - {{< copyable "shell-regular" >}} - + ```bash - # 创建路由表规则。 + # Creates route table rules. aws ec2 describe-route-tables --region "$app_region" --filters Name=vpc-id,Values="$app_vpc_id" --query 'RouteTables[*].RouteTableId' --output text | tr "\t" "\n" | while read row do app_route_table_id="$row" @@ -185,149 +180,148 @@ CIDR(无类域间路由)是用于为 TiDB Cloud Dedicated 集群创建 VPC done ``` - > **注意:** + > **Note:** > - > 有时即使路由表规则创建成功,你可能仍会收到 `An error occurred (MissingParameter) when calling the CreateRoute operation: The request must contain the parameter routeTableId` 错误。在这种情况下,你可以检查已创建的规则并忽略该错误。 - - {{< copyable "shell-regular" >}} + > 有时即使路由表规则已成功创建,你仍可能收到 `An error occurred (MissingParameter) when calling the CreateRoute operation: The request must contain the parameter routeTableId` 错误。此时你可以检查已创建的规则并忽略该错误。 + ```bash - # 修改 VPC 属性以启用 DNS 主机名和 DNS 支持。 + # Modifies the VPC attribute to enable DNS-hostname and DNS-support. aws ec2 modify-vpc-attribute --vpc-id "$app_vpc_id" --enable-dns-hostnames aws ec2 modify-vpc-attribute --vpc-id "$app_vpc_id" --enable-dns-support ``` -完成配置后,VPC 对等连接已创建。你可以[连接到 TiDB 集群](#连接到-tidb-集群)以验证结果。 +完成配置后,VPC Peering 已创建。你可以 [连接到 TiDB 集群](#connect-to-the-tidb-cluster) 验证结果。
-你也可以使用 AWS 控制台配置 VPC 对等连接。 +你也可以使用 AWS 控制台配置 VPC Peering 连接。 -1. 在 [AWS 管理控制台](https://console.aws.amazon.com/)中确认接受对等连接请求。 +1. 在你的 [AWS 管理控制台](https://console.aws.amazon.com/) 中确认接受 Peering 连接请求。 - 1. 登录 [AWS 管理控制台](https://console.aws.amazon.com/),点击顶部菜单栏的**服务**。在搜索框中输入 `VPC` 并进入 VPC 服务页面。 + 1. 登录 [AWS 管理控制台](https://console.aws.amazon.com/),点击顶部菜单栏的 **Services**。在搜索框输入 `VPC` 并进入 VPC 服务页面。 ![AWS dashboard](/media/tidb-cloud/vpc-peering/aws-vpc-guide-1.jpg) - 2. 从左侧导航栏打开**对等连接**页面。在**创建对等连接**标签页上,有一个处于**等待接受**状态的对等连接。 + 2. 在左侧导航栏,打开 **Peering Connections** 页面。在 **Create Peering Connection** 标签页下,Peering 连接状态为 **Pending Acceptance**。 - 3. 确认请求者所有者和请求者 VPC 与 [TiDB Cloud 控制台](https://tidbcloud.com) 的 **VPC 对等连接详情**页面上的 **TiDB Cloud AWS 账户 ID** 和 **TiDB Cloud VPC ID** 匹配。右键点击对等连接并在**接受 VPC 对等连接请求**对话框中选择**接受请求**。 + 3. 确认请求方所有者和请求方 VPC 与 [TiDB Cloud 控制台](https://tidbcloud.com) 的 **VPC Peering Details** 页面上的 **TiDB Cloud AWS Account ID** 和 **TiDB Cloud VPC ID** 匹配。右键点击该 Peering 连接,选择 **Accept Request**,在 **Accept VPC peering connection request** 对话框中接受请求。 ![AWS VPC peering requests](/media/tidb-cloud/vpc-peering/aws-vpc-guide-3.png) -2. 为每个 VPC 子网路由表添加到 TiDB Cloud VPC 的路由。 +2. 为你的每个 VPC 子网路由表添加到 TiDB Cloud VPC 的路由。 - 1. 从左侧导航栏打开**路由表**页面。 + 1. 在左侧导航栏,打开 **Route Tables** 页面。 - 2. 搜索属于你的应用程序 VPC 的所有路由表。 + 2. 搜索属于你应用程序 VPC 的所有路由表。 ![Search all route tables related to VPC](/media/tidb-cloud/vpc-peering/aws-vpc-guide-4.png) - 3. 右键点击每个路由表并选择**编辑路由**。在编辑页面上,添加一个目标为 TiDB Cloud CIDR(通过查看 TiDB Cloud 控制台中的 **VPC 对等连接**配置页面)的路由,并在**目标**列中填写你的对等连接 ID。 + 3. 右键点击每个路由表,选择 **Edit routes**。在编辑页面,添加一条目标为 TiDB Cloud CIDR(可在 TiDB Cloud 控制台的 **VPC Peering** 配置页面查看)的路由,并在 **Target** 列填写你的 Peering 连接 ID。 ![Edit all route tables](/media/tidb-cloud/vpc-peering/aws-vpc-guide-5.png) -3. 确保已为你的 VPC 启用私有 DNS 托管区域支持。 +3. 确保你的 VPC 已启用私有 DNS 托管区域支持。 - 1. 从左侧导航栏打开**你的 VPC** 页面。 + 1. 在左侧导航栏,打开 **Your VPCs** 页面。 2. 选择你的应用程序 VPC。 - 3. 右键点击所选的 VPC。显示设置下拉列表。 + 3. 右键点击所选 VPC,显示设置下拉列表。 - 4. 从设置下拉列表中,点击**编辑 DNS 主机名**。启用 DNS 主机名并点击**保存**。 + 4. 在设置下拉列表中,点击 **Edit DNS hostnames**,启用 DNS hostnames 并点击 **Save**。 - 5. 从设置下拉列表中,点击**编辑 DNS 解析**。启用 DNS 解析并点击**保存**。 + 5. 在设置下拉列表中,点击 **Edit DNS resolution**,启用 DNS resolution 并点击 **Save**。 -现在你已成功设置 VPC 对等连接。接下来,[通过 VPC 对等连接连接到 TiDB 集群](#连接到-tidb-集群)。 +现在你已成功设置 VPC Peering 连接。接下来,[通过 VPC Peering 连接到 TiDB 集群](#connect-to-the-tidb-cluster)。
-## 在 Google Cloud 上设置 VPC 对等连接 +## 在 Google Cloud 上设置 VPC Peering -### 步骤 1. 添加 VPC 对等连接请求 +### 步骤 1. 添加 VPC Peering 请求 -你可以在 TiDB Cloud 控制台中的项目级**网络访问**页面或集群级**网络**页面上添加 VPC 对等连接请求。 +你可以在 TiDB Cloud 控制台的项目级 **Network Access** 页面或集群级 **Networking** 页面添加 VPC Peering 请求。 -
+
-1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标项目。 -2. 在左侧导航栏中,点击**项目设置** > **网络访问**。 -3. 在**网络访问**页面,点击 **VPC 对等连接**标签页,然后点击 **Google Cloud** 子标签页。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,使用左上角的下拉框切换到目标项目。 +2. 在左侧导航栏,点击 **Project Settings** > **Network Access**。 +3. 在 **Network Access** 页面,点击 **VPC Peering** 标签页,然后点击 **Google Cloud** 子标签。 - 默认显示 **VPC 对等连接**配置。 + 默认会显示 **VPC Peering** 配置。 -4. 在右上角,点击**创建 VPC 对等连接**,选择 **TiDB Cloud VPC 区域**,然后填写你现有 Google Cloud VPC 的必需信息: +4. 在右上角,点击 **Create VPC Peering**,选择 **TiDB Cloud VPC Region**,然后填写你现有 Google Cloud VPC 的相关信息: - > **提示:** + > **Tip:** > - > 你可以按照 **Google Cloud 项目 ID** 和 **VPC 网络名称**字段旁边的说明查找项目 ID 和 VPC 网络名称。 + > 你可以按照 **Google Cloud Project ID** 和 **VPC Network Name** 字段旁的指引查找项目 ID 和 VPC 网络名称。 - - Google Cloud 项目 ID - - VPC 网络名称 + - Google Cloud Project ID + - VPC Network Name - VPC CIDR -5. 点击**创建**发送 VPC 对等连接请求,然后在 **VPC 对等连接** > **Google Cloud** 标签页上查看 VPC 对等连接信息。新创建的 VPC 对等连接状态为**系统检查中**。 +5. 点击 **Create** 发送 VPC Peering 请求,然后在 **VPC Peering** > **Google Cloud** 标签页查看 VPC Peering 信息。新建的 VPC Peering 状态为 **System Checking**。 -6. 要查看新创建的 VPC 对等连接的详细信息,请在**操作**列中点击 **...** > **查看**。此时会显示 **VPC 对等连接详情**页面。 +6. 若要查看新建 VPC Peering 的详细信息,在 **Action** 列点击 **...** > **View**。将显示 **VPC Peering Details** 页面。
-
+
1. 打开目标集群的概览页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/)并导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),进入项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称以进入其概览页面。 + 2. 点击目标集群名称,进入其概览页面。 -2. 在左侧导航栏中,点击**设置** > **网络**。 +2. 在左侧导航栏,点击 **Settings** > **Networking**。 -3. 在**网络**页面,点击**创建 VPC 对等连接**,然后填写你现有 Google Cloud VPC 的必需信息: +3. 在 **Networking** 页面,点击 **Create VPC Peering**,然后填写你现有 Google Cloud VPC 的相关信息: - > **提示:** + > **Tip:** > - > 你可以按照 **Google Cloud 项目 ID** 和 **VPC 网络名称**字段旁边的说明查找项目 ID 和 VPC 网络名称。 + > 你可以按照 **Google Cloud Project ID** 和 **VPC Network Name** 字段旁的指引查找项目 ID 和 VPC 网络名称。 - - Google Cloud 项目 ID - - VPC 网络名称 + - Google Cloud Project ID + - VPC Network Name - VPC CIDR -4. 点击**创建**发送 VPC 对等连接请求,然后在**网络** > **Google Cloud VPC 对等连接**部分查看 VPC 对等连接信息。新创建的 VPC 对等连接状态为**系统检查中**。 +4. 点击 **Create** 发送 VPC Peering 请求,然后在 **Networking** > **Google Cloud VPC Peering** 区域查看 VPC Peering 信息。新建的 VPC Peering 状态为 **System Checking**。 -5. 要查看新创建的 VPC 对等连接的详细信息,请在**操作**列中点击 **...** > **查看**。此时会显示 **Google Cloud VPC 对等连接详情**页面。 +5. 若要查看新建 VPC Peering 的详细信息,在 **Action** 列点击 **...** > **View**。将显示 **Google Cloud VPC Peering Details** 页面。
-### 步骤 2. 批准 VPC 对等连接 +### 步骤 2. 审批 VPC Peering -执行以下命令完成 VPC 对等连接的设置: +执行以下命令完成 VPC Peering 的设置: ```bash gcloud beta compute networks peerings create --project --network --peer-project --peer-network ``` -> **注意:** +> **Note:** > -> 你可以根据喜好命名 ``。 +> `` 可以自定义命名。 -现在你已成功设置 VPC 对等连接。接下来,[通过 VPC 对等连接连接到 TiDB 集群](#连接到-tidb-集群)。 +现在你已成功设置 VPC Peering 连接。接下来,[通过 VPC Peering 连接到 TiDB 集群](#connect-to-the-tidb-cluster)。 ## 连接到 TiDB 集群 -1. 在项目的[**集群**](https://tidbcloud.com/project/clusters)页面,点击目标集群的名称以进入其概览页面。 +1. 在项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群名称,进入其概览页面。 -2. 点击右上角的**连接**,从**连接类型**下拉列表中选择 **VPC 对等连接**。 +2. 点击右上角的 **Connect**,并在 **Connection Type** 下拉列表中选择 **VPC Peering**。 - 等待 VPC 对等连接状态从**系统检查中**变为**活动**(大约需要 5 分钟)。 + 等待 VPC Peering 连接状态从 **system checking** 变为 **active**(大约 5 分钟)。 -3. 在**连接方式**下拉列表中,选择你首选的连接方法。对话框底部将显示相应的连接字符串。 +3. 在 **Connect With** 下拉列表中选择你偏好的连接方式。对话框底部会显示对应的连接字符串。 -4. 使用连接字符串连接到你的集群。 +4. 使用该连接字符串连接到你的集群。 \ No newline at end of file diff --git a/tidb-cloud/size-your-cluster.md b/tidb-cloud/size-your-cluster.md index 571d950ca1d42..2082f68fecd94 100644 --- a/tidb-cloud/size-your-cluster.md +++ b/tidb-cloud/size-your-cluster.md @@ -1,223 +1,223 @@ --- -title: 确定 TiDB 规模 -summary: 了解如何确定 TiDB Cloud 集群的规模。 +title: 确定你的 TiDB 规模 +summary: 了解如何确定你的 TiDB Cloud 集群规模。 --- -# 确定 TiDB 规模 +# 确定你的 TiDB 规模 -本文介绍如何确定 TiDB Cloud Dedicated 集群的规模。 +本文档介绍如何确定 TiDB Cloud 专属集群的规模。 -> **注意:** +> **Note:** > > 你无法更改 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的规模。 ## TiDB 规模配置 -TiDB 仅用于计算,不存储数据。它支持水平扩展。 +TiDB 仅用于计算,不存储数据,并且支持水平扩展。 -你可以配置节点数量、vCPU 和内存。 +你可以为 TiDB 配置节点数量、vCPU 和内存(RAM)。 -要了解不同集群规模的性能测试结果,请参阅 [TiDB Cloud 性能参考](/tidb-cloud/tidb-cloud-performance-reference.md)。 +如需了解不同集群规模的性能测试结果,请参见 [TiDB Cloud 性能参考](/tidb-cloud/tidb-cloud-performance-reference.md)。 ### TiDB vCPU 和内存 -支持的 vCPU 和内存规格包括: +支持的 vCPU 和内存规格如下: -| 标准规格 | 高内存规格 | +| 标准规格 | 高内存规格 | |:---------:|:----------------:| -| 4 vCPU, 16 GiB | 不适用 | +| 4 vCPU, 16 GiB | N/A | | 8 vCPU, 16 GiB | 8 vCPU, 32 GiB | | 16 vCPU, 32 GiB | 16 vCPU, 64 GiB | | 32 vCPU, 64 GiB | 32 vCPU, 128 GiB | -> **注意:** +> **Note:** > -> 要使用 **32 vCPU, 128 GiB** 规格的 TiDB,请联系 [TiDB Cloud 支持团队](/tidb-cloud/tidb-cloud-support.md)。 +> 如需使用 TiDB 的 **32 vCPU, 128 GiB** 规格,请联系 [TiDB Cloud Support](/tidb-cloud/tidb-cloud-support.md)。 > > 如果 TiDB 的 vCPU 和内存规格设置为 **4 vCPU, 16 GiB**,请注意以下限制: > -> - TiDB 节点数量只能设置为 1 或 2,TiKV 节点数量固定为 3。 -> - 4 vCPU TiDB 只能与 4 vCPU TiKV 一起使用。 +> - TiDB 的节点数量只能设置为 1 或 2,TiKV 的节点数量固定为 3。 +> - 4 vCPU 的 TiDB 只能与 4 vCPU 的 TiKV 搭配使用。 > - TiFlash 不可用。 ### TiDB 节点数量 -为了实现高可用性,建议为每个 TiDB Cloud 集群配置至少两个 TiDB 节点。 +为了高可用,建议你为每个 TiDB Cloud 集群至少配置两个 TiDB 节点。 -通常,TiDB 性能随着 TiDB 节点数量的增加而线性增长。但是,当 TiDB 节点数量超过 8 个时,性能增长略低于线性比例。每增加 8 个节点,性能偏差系数约为 5%。 +通常情况下,TiDB 的性能会随着 TiDB 节点数量的增加而线性提升。但当 TiDB 节点数量超过 8 时,性能提升略低于线性增长。每增加 8 个节点,性能偏差系数约为 5%。 例如: -- 当有 9 个 TiDB 节点时,性能偏差系数约为 5%,因此 TiDB 性能约为单个 TiDB 节点性能的 `9 * (1 - 5%) = 8.55` 倍。 -- 当有 16 个 TiDB 节点时,性能偏差系数约为 10%,因此 TiDB 性能为单个 TiDB 节点性能的 `16 * (1 - 10%) = 14.4` 倍。 +- 当有 9 个 TiDB 节点时,性能偏差系数约为 5%,因此 TiDB 的性能约为 `9 * (1 - 5%) = 8.55` 倍单节点 TiDB 的性能。 +- 当有 16 个 TiDB 节点时,性能偏差系数约为 10%,因此 TiDB 的性能为 `16 * (1 - 10%) = 14.4` 倍单节点 TiDB 的性能。 -对于 TiDB 节点的指定延迟,TiDB 性能会根据不同的读写比例而变化。 +对于指定延迟的 TiDB 节点,TiDB 的性能会根据不同的读写比例有所不同。 -8 vCPU, 16 GiB TiDB 节点在不同工作负载下的性能如下: +8 vCPU, 16 GiB TiDB 节点在不同负载下的性能如下: -| 工作负载 | QPS (P95 ≈ 100ms) | QPS (P99 ≈ 300ms) | QPS (P99 ≈ 100ms) | +| 负载类型 | QPS (P95 ≈ 100ms) | QPS (P99 ≈ 300ms) | QPS (P99 ≈ 100ms) | |----------|-------------------|-------------------|-------------------| -| 读取 | 18,900 | 9,450 | 6,300 | -| 混合 | 15,500 | 7,750 | 5,200 | -| 写入 | 18,000 | 9,000 | 6,000 | +| 读 | 18,900 | 9,450 | 6,300 | +| 混合 | 15,500 | 7,750 | 5,200 | +| 写 | 18,000 | 9,000 | 6,000 | -如果 TiDB 节点数量少于 8 个,性能偏差系数接近 0%,因此 16 vCPU, 32 GiB TiDB 节点的性能大约是 8 vCPU, 16 GiB TiDB 节点的两倍。如果 TiDB 节点数量超过 8 个,建议选择 16 vCPU, 32 GiB TiDB 节点,因为这样需要的节点更少,意味着性能偏差系数更小。 +如果 TiDB 节点数量小于 8,性能偏差系数几乎为 0%,因此 16 vCPU, 32 GiB TiDB 节点的性能大约是 8 vCPU, 16 GiB TiDB 节点的两倍。如果 TiDB 节点数量超过 8,建议选择 16 vCPU, 32 GiB TiDB 节点,这样所需节点更少,性能偏差系数也更小。 -在规划集群规模时,你可以根据工作负载类型、整体期望性能(QPS)以及单个 TiDB 节点对应工作负载类型的性能,使用以下公式估算 TiDB 节点数量: +在规划集群规模时,你可以根据你的负载类型、整体期望性能(QPS)以及单个 TiDB 节点对应负载类型的性能,使用以下公式估算 TiDB 节点数量: -`节点数量 = ceil(整体期望性能 ÷ 每节点性能 * (1 - 性能偏差系数))` +`node count = ceil(overall expected performance ÷ performance per node * (1 - performance deviation coefficient))` -在公式中,你需要先计算 `节点数量 = ceil(整体期望性能 ÷ 每节点性能)` 得到一个粗略的节点数量,然后使用相应的性能偏差系数得到最终的节点数量。 +在公式中,你需要先计算 `node count = ceil(overall expected performance ÷ performance per node)` 得到一个大致的节点数量,然后再结合对应的性能偏差系数得到最终节点数量。 -例如,你在混合工作负载下的整体期望性能是 110,000 QPS,P95 延迟约为 100 ms,并且你想使用 8 vCPU, 16 GiB TiDB 节点。那么,你可以从前面的表格中获取 8 vCPU, 16 GiB TiDB 节点的估计 TiDB 性能(即 `15,500`),并计算粗略的 TiDB 节点数量如下: +例如,你的整体期望性能为 110,000 QPS,负载为混合型,P95 延迟约为 100 ms,并且希望使用 8 vCPU, 16 GiB 的 TiDB 节点。你可以从上表获取 8 vCPU, 16 GiB TiDB 节点的估算性能(即 `15,500`),并按如下方式计算大致的 TiDB 节点数量: -`节点数量 = ceil(110,000 ÷ 15,500) = 8` +`node count = ceil(110,000 ÷ 15,500) = 8` -由于 8 个节点的性能偏差系数约为 5%,估计的 TiDB 性能为 `8 * 15,500 * (1 - 5%) = 117,800`,可以满足你期望的 110,000 QPS 性能。 +由于 8 个节点的性能偏差系数约为 5%,估算的 TiDB 性能为 `8 * 15,500 * (1 - 5%) = 117,800`,可以满足你 110,000 QPS 的期望性能。 -因此,建议你使用 8 个 TiDB 节点(8 vCPU, 16 GiB)。 +因此,推荐你使用 8 个 TiDB 节点(8 vCPU, 16 GiB)。 ## TiKV 规模配置 -TiKV 负责存储数据。它支持水平扩展。 +TiKV 负责存储数据,并支持水平扩展。 -你可以配置节点数量、vCPU 和内存以及存储。 +你可以为 TiKV 配置节点数量、vCPU 和内存,以及存储容量。 -要了解不同集群规模的性能测试结果,请参阅 [TiDB Cloud 性能参考](/tidb-cloud/tidb-cloud-performance-reference.md)。 +如需了解不同集群规模的性能测试结果,请参见 [TiDB Cloud 性能参考](/tidb-cloud/tidb-cloud-performance-reference.md)。 ### TiKV vCPU 和内存 -支持的 vCPU 和内存规格包括: +支持的 vCPU 和内存规格如下: -| 标准规格 | 高内存规格 | +| 标准规格 | 高内存规格 | |:---------:|:----------------:| -| 4 vCPU, 16 GiB | 不适用 | +| 4 vCPU, 16 GiB | N/A | | 8 vCPU, 32 GiB | 8 vCPU, 64 GiB | -| 16 vCPU, 64 GiB | 即将推出 | -| 32 vCPU, 128 GiB | 不适用 | +| 16 vCPU, 64 GiB | 即将上线 | +| 32 vCPU, 128 GiB | N/A | -> **注意:** +> **Note:** > > 如果 TiKV 的 vCPU 和内存规格设置为 **4 vCPU, 16 GiB**,请注意以下限制: > -> - TiDB 节点数量只能设置为 1 或 2,TiKV 节点数量固定为 3。 -> - 4 vCPU TiKV 只能与 4 vCPU TiDB 一起使用。 +> - TiDB 的节点数量只能设置为 1 或 2,TiKV 的节点数量固定为 3。 +> - 4 vCPU 的 TiKV 只能与 4 vCPU 的 TiDB 搭配使用。 > - TiFlash 不可用。 ### TiKV 节点数量 -TiKV 节点数量应该**至少为 1 组(3 个节点分布在 3 个不同的可用区)**。 +TiKV 节点数量应为 **至少 1 组(3 个节点,分布在 3 个不同的可用区)**。 -TiDB Cloud 将 TiKV 节点均匀部署到你选择的区域中的所有可用区(至少 3 个)以实现持久性和高可用性。在典型的 3 副本设置中,你的数据均匀分布在所有可用区的 TiKV 节点中,并持久化到每个 TiKV 节点的磁盘上。 +TiDB Cloud 会将 TiKV 节点均匀部署到你选择的区域内所有可用区(至少 3 个)以实现数据持久性和高可用。在典型的 3 副本设置下,你的数据会在所有可用区的 TiKV 节点之间均匀分布,并持久化到每个 TiKV 节点的磁盘上。 -> **注意:** +> **Note:** > -> 当你扩展 TiDB 集群时,3 个可用区中的节点会同时增加或减少。有关如何根据需求扩容或缩容 TiDB 集群,请参阅[扩展 TiDB 集群](/tidb-cloud/scale-tidb-cluster.md)。 +> 当你扩缩 TiDB 集群时,3 个可用区的节点会同时增加或减少。关于如何根据需求扩容或缩容 TiDB 集群,请参见 [扩缩 TiDB 集群](/tidb-cloud/scale-tidb-cluster.md)。 -虽然 TiKV 主要用于数据存储,但 TiKV 节点的性能也会根据不同的工作负载而变化。因此,在规划 TiKV 节点数量时,你需要根据[**数据量**](#根据数据量估算-tikv-节点数量)和[期望性能](#根据期望性能估算-tikv-节点数量)进行估算,然后取两个估算值中的较大者作为推荐的节点数量。 +虽然 TiKV 主要用于数据存储,但 TiKV 节点的性能也会根据不同负载类型有所不同。因此,在规划 TiKV 节点数量时,你需要根据 [**数据量**](#estimate-tikv-node-count-according-to-data-volume) 和 [期望性能](#estimate-tikv-node-count-according-to-expected-performance) 两方面进行估算,并取两者中较大的值作为推荐节点数量。 #### 根据数据量估算 TiKV 节点数量 -你可以根据数据量按以下方式计算推荐的 TiKV 节点数量: +你可以根据数据量按如下方式计算推荐的 TiKV 节点数量: -`节点数量 = ceil(数据大小 * TiKV 压缩比 * 副本数量 ÷ TiKV 存储使用率 ÷ 单个 TiKV 容量 ÷ 3) * 3` +`node count = ceil(size of your data * TiKV compression ratio * the number of replicas ÷ TiKV storage usage ratio ÷ one TiKV capacity ÷ 3) * 3` -通常,建议将 TiKV 存储使用率保持在 80% 以下。TiDB Cloud 中的副本数量默认为 3。8 vCPU, 64 GiB TiKV 节点的最大存储容量为 4096 GiB。 +通常建议 TiKV 存储使用率保持在 80% 以下。TiDB Cloud 默认副本数为 3。8 vCPU, 64 GiB TiKV 节点的最大存储容量为 4096 GiB。 -根据历史数据,平均 TiKV 压缩比约为 40%。 +根据历史数据,TiKV 的平均压缩比约为 40%。 -假设你的 MySQL 转储文件大小为 20 TB,TiKV 压缩比为 40%。那么,你可以根据数据量按以下方式计算推荐的 TiKV 节点数量: +假设你的 MySQL dump 文件大小为 20 TB,TiKV 压缩比为 40%。则可以按如下方式根据数据量计算推荐的 TiKV 节点数量: -`节点数量 = ceil(20 TB * 40% * 3 ÷ 0.8 ÷ 4096 GiB ÷ 3) * 3 = 9` +`node count = ceil(20 TB * 40% * 3 ÷ 0.8 ÷ 4096 GiB ÷ 3) * 3 = 9` #### 根据期望性能估算 TiKV 节点数量 -与 TiDB 性能类似,TiKV 性能随着 TiKV 节点数量的增加而线性增长。但是,当 TiKV 节点数量超过 8 个时,性能增长略低于线性比例。每增加 8 个节点,性能偏差系数约为 5%。 +与 TiDB 性能类似,TiKV 的性能会随着 TiKV 节点数量的增加而线性提升。但当 TiKV 节点数量超过 8 时,性能提升略低于线性增长。每增加 8 个节点,性能偏差系数约为 5%。 例如: -- 当有 9 个 TiKV 节点时,性能偏差系数约为 5%,因此 TiKV 性能约为单个 TiKV 节点性能的 `9 * (1 - 5%) = 8.55` 倍。 -- 当有 18 个 TiKV 节点时,性能偏差系数约为 10%,因此 TiKV 性能为单个 TiKV 节点性能的 `18 * (1 - 10%) = 16.2` 倍。 +- 当有 9 个 TiKV 节点时,性能偏差系数约为 5%,因此 TiKV 的性能约为 `9 * (1 - 5%) = 8.55` 倍单节点 TiKV 的性能。 +- 当有 18 个 TiKV 节点时,性能偏差系数约为 10%,因此 TiKV 的性能为 `18 * (1 - 10%) = 16.2` 倍单节点 TiKV 的性能。 -对于 TiKV 节点的指定延迟,TiKV 性能会根据不同的读写比例而变化。 +对于指定延迟的 TiKV 节点,TiKV 的性能会根据不同的读写比例有所不同。 -8 vCPU, 32 GiB TiKV 节点在不同工作负载下的性能如下: +8 vCPU, 32 GiB TiKV 节点在不同负载下的性能如下: -| 工作负载 | QPS (P95 ≈ 100ms) | QPS (P99 ≈ 300ms) | QPS (P99 ≈ 100ms) | +| 负载类型 | QPS (P95 ≈ 100ms) | QPS (P99 ≈ 300ms) | QPS (P99 ≈ 100ms) | |----------|-------------------|-------------------|-------------------| -| 读取 | 28,000 | 14,000 | 7,000 | -| 混合 | 17,800 | 8,900 | 4,450 | -| 写入 | 14,500 | 7,250 | 3,625 | +| 读 | 28,000 | 14,000 | 7,000 | +| 混合 | 17,800 | 8,900 | 4,450 | +| 写 | 14,500 | 7,250 | 3,625 | -如果 TiKV 节点数量少于 8 个,性能偏差系数接近 0%,因此 16 vCPU, 64 GiB TiKV 节点的性能大约是 8 vCPU, 32 GiB TiKV 节点的两倍。如果 TiKV 节点数量超过 8 个,建议选择 16 vCPU, 64 GiB TiKV 节点,因为这样需要的节点更少,意味着性能偏差系数更小。 +如果 TiKV 节点数量小于 8,性能偏差系数几乎为 0%,因此 16 vCPU, 64 GiB TiKV 节点的性能大约是 8 vCPU, 32 GiB TiKV 节点的两倍。如果 TiKV 节点数量超过 8,建议选择 16 vCPU, 64 GiB TiKV 节点,这样所需节点更少,性能偏差系数也更小。 -在规划集群规模时,你可以根据工作负载类型、整体期望性能(QPS)以及单个 TiKV 节点对应工作负载类型的性能,使用以下公式估算 TiKV 节点数量: +在规划集群规模时,你可以根据你的负载类型、整体期望性能(QPS)以及单个 TiKV 节点对应负载类型的性能,使用以下公式估算 TiKV 节点数量: -`节点数量 = ceil(整体期望性能 ÷ 每节点性能 * (1 - 性能偏差系数))` +`node count = ceil(overall expected performance ÷ performance per node * (1 - performance deviation coefficient))` -在公式中,你需要先计算 `节点数量 = ceil(整体期望性能 ÷ 每节点性能)` 得到一个粗略的节点数量,然后使用相应的性能偏差系数得到最终的节点数量。 +在公式中,你需要先计算 `node count = ceil(overall expected performance ÷ performance per node)` 得到一个大致的节点数量,然后再结合对应的性能偏差系数得到最终节点数量。 -例如,你在混合工作负载下的整体期望性能是 110,000 QPS,P95 延迟约为 100 ms,并且你想使用 8 vCPU, 32 GiB TiKV 节点。那么,你可以从前面的表格中获取 8 vCPU, 32 GiB TiKV 节点的估计 TiKV 性能(即 `17,800`),并计算粗略的 TiKV 节点数量如下: +例如,你的整体期望性能为 110,000 QPS,负载为混合型,P95 延迟约为 100 ms,并且希望使用 8 vCPU, 32 GiB 的 TiKV 节点。你可以从上表获取 8 vCPU, 32 GiB TiKV 节点的估算性能(即 `17,800`),并按如下方式计算大致的 TiKV 节点数量: -`节点数量 = ceil(110,000 / 17,800 ) = 7` +`node count = ceil(110,000 / 17,800 ) = 7` -由于 7 小于 8,7 个节点的性能偏差系数为 0。估计的 TiKV 性能为 `7 * 17,800 * (1 - 0) = 124,600`,可以满足你期望的 110,000 QPS 性能。 +由于 7 小于 8,7 个节点的性能偏差系数为 0。估算的 TiKV 性能为 `7 * 17,800 * (1 - 0) = 124,600`,可以满足你 110,000 QPS 的期望性能。 -因此,根据你的期望性能,建议使用 7 个 TiKV 节点(8 vCPU, 32 GiB)。 +因此,推荐你根据期望性能使用 7 个 TiKV 节点(8 vCPU, 32 GiB)。 -接下来,你可以比较根据数据量计算的 TiKV 节点数量与根据期望性能计算的数量,取较大者作为推荐的 TiKV 节点数量。 +接下来,你可以将根据数据量计算的 TiKV 节点数量与根据期望性能计算的节点数量进行比较,取较大的值作为推荐的 TiKV 节点数量。 -### TiKV 节点存储大小 +### TiKV 节点存储容量 -不同 TiKV vCPU 支持的节点存储大小如下: +不同 TiKV vCPU 支持的节点存储容量如下: | TiKV vCPU | 最小节点存储 | 最大节点存储 | 默认节点存储 | -|:---------:|:----------------:|:----------------:|:--------------------:| -| 4 vCPU | 200 GiB | 2048 GiB | 500 GiB | -| 8 vCPU | 200 GiB | 4096 GiB | 500 GiB | -| 16 vCPU | 200 GiB | 4096 GiB | 500 GiB | -| 32 vCPU | 200 GiB | 4096 GiB | 500 GiB | +|:---------:|:------------:|:------------:|:------------:| +| 4 vCPU | 200 GiB | 2048 GiB | 500 GiB | +| 8 vCPU | 200 GiB | 4096 GiB | 500 GiB | +| 16 vCPU | 200 GiB | 4096 GiB | 500 GiB | +| 32 vCPU | 200 GiB | 4096 GiB | 500 GiB | -> **注意:** +> **Note:** > -> 集群创建后,你无法减少 TiKV 节点存储大小。 +> 集群创建后,TiKV 节点存储容量无法减少。 ### TiKV 节点存储类型 -TiDB Cloud 为在 AWS 上托管的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群提供以下 TiKV 存储类型: +TiDB Cloud 为托管在 AWS 上的 [TiDB Cloud 专属](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群提供以下 TiKV 存储类型: -- [基础存储](#基础存储) -- [标准存储](#标准存储) -- [性能和增强存储](#性能和增强存储) +- [基础存储](#basic-storage) +- [标准存储](#standard-storage) +- [高性能与 Plus 存储](#performance-and-plus-storage) #### 基础存储 -基础存储是一种通用存储类型,性能低于标准存储。 +基础存储是一种通用型存储类型,性能低于标准存储。 -基础存储类型自动应用于以下在 AWS 上托管的集群: +基础存储类型会自动应用于以下托管在 AWS 上的集群: -- 在 2025 年 4 月 1 日之前创建的现有集群。 -- 使用早于 v7.5.5、v8.1.2 或 v8.5.0 版本的 TiDB 创建的新集群。 +- 2025 年 4 月 1 日前创建的现有集群。 +- 使用 TiDB 版本低于 v7.5.5、v8.1.2 或 v8.5.0 创建的新集群。 #### 标准存储 -标准存储适用于大多数工作负载,在性能和成本效益之间取得平衡。与基础存储相比,它通过为 Raft 日志保留充足的磁盘资源提供更好的性能。这减少了 Raft I/O 对数据磁盘 I/O 的影响,提高了 TiKV 的读写性能。 +标准存储适用于大多数负载,在性能和成本之间实现平衡。与基础存储相比,标准存储为 Raft 日志预留了充足的磁盘资源,从而提升了性能。这样可以减少 Raft I/O 对数据盘 I/O 的影响,提高 TiKV 的读写性能。 -标准存储类型自动应用于在 AWS 上托管的、使用 TiDB v7.5.5、v8.1.2、v8.5.0 或更高版本创建的新集群。 +标准存储类型会自动应用于使用 TiDB v7.5.5、v8.1.2、v8.5.0 或更高版本创建的新 AWS 集群。 -#### 性能和增强存储 +#### 高性能与 Plus 存储 -性能和增强存储提供更高的性能和稳定性,价格反映了这些增强的功能。目前,这两种存储类型仅在申请后可用于在 AWS 上部署的集群。要申请性能或增强存储,请点击 [TiDB Cloud 控制台](https://tidbcloud.com)右下角的 **?**,然后点击**请求支持**。然后,在**描述**字段中填写"申请 TiKV 存储类型",并点击**提交**。 +高性能与 Plus 存储提供更高的性能和稳定性,价格也相应更高。目前,这两种存储类型仅可按需为部署在 AWS 上的集群申请。如需申请高性能或 Plus 存储,请点击 [TiDB Cloud 控制台](https://tidbcloud.com) 右下角的 **?**,然后点击 **Request Support**。在 **Description** 字段填写 "Apply for TiKV storage type",并点击 **Submit**。 ## TiFlash 规模配置 -TiFlash 实时从 TiKV 同步数据,并支持开箱即用的实时分析工作负载。它支持水平扩展。 +TiFlash 实时同步 TiKV 的数据,开箱即用地支持实时分析型负载,并支持水平扩展。 -你可以配置节点数量、vCPU 和内存以及存储。 +你可以为 TiFlash 配置节点数量、vCPU 和内存,以及存储容量。 ### TiFlash vCPU 和内存 -支持的 vCPU 和内存规格包括: +支持的 vCPU 和内存规格如下: - 8 vCPU, 64 GiB - 16 vCPU, 128 GiB @@ -228,41 +228,41 @@ TiFlash 实时从 TiKV 同步数据,并支持开箱即用的实时分析工作 ### TiFlash 节点数量 -TiDB Cloud 将 TiFlash 节点均匀部署到区域中的不同可用区。建议在每个 TiDB Cloud 集群中配置至少两个 TiFlash 节点,并在生产环境中为数据创建至少两个副本以实现高可用性。 +TiDB Cloud 会将 TiFlash 节点均匀部署到一个区域内的不同可用区。建议你为每个 TiDB Cloud 集群至少配置两个 TiFlash 节点,并为生产环境中的数据创建至少两个副本以实现高可用。 -TiFlash 节点的最小数量取决于特定表的 TiFlash 副本数量: +TiFlash 节点的最小数量取决于特定表的 TiFlash 副本数: -TiFlash 节点最小数量:`min((表 A 的压缩大小 * 表 A 的副本数 + 表 B 的压缩大小 * 表 B 的副本数) / 每个 TiFlash 容量大小, max(表 A 的副本数, 表 B 的副本数))` +TiFlash 节点最小数量:`min((compressed size of table A * replicas for table A + compressed size of table B * replicas for table B) / size of each TiFlash capacity, max(replicas for table A, replicas for table B))` -例如,如果你在 AWS 上将每个 TiFlash 节点的存储配置为 1024 GiB,并为表 A(压缩大小为 800 GiB)设置 2 个副本,为表 B(压缩大小为 100 GiB)设置 1 个副本,那么所需的 TiFlash 节点数量如下: +例如,如果你在 AWS 上为每个 TiFlash 节点配置 1024 GiB 存储,并为表 A 设置 2 个副本(压缩后大小为 800 GiB),为表 B 设置 1 个副本(压缩后大小为 100 GiB),则所需 TiFlash 节点数量如下: TiFlash 节点最小数量:`min((800 GiB * 2 + 100 GiB * 1) / 1024 GiB, max(2, 1)) ≈ 2` ### TiFlash 节点存储 -不同 TiFlash vCPU 支持的节点存储如下: +不同 TiFlash vCPU 支持的节点存储容量如下: | TiFlash vCPU | 最小节点存储 | 最大节点存储 | 默认节点存储 | -|:---------:|:----------------:|:----------------:|:--------------------:| -| 8 vCPU | 200 GiB | 4096 GiB | 500 GiB | -| 16 vCPU | 200 GiB | 4096 GiB | 500 GiB | -| 32 vCPU | 200 GiB | 8192 GiB | 500 GiB | +|:---------:|:------------:|:------------:|:------------:| +| 8 vCPU | 200 GiB | 4096 GiB | 500 GiB | +| 16 vCPU | 200 GiB | 4096 GiB | 500 GiB | +| 32 vCPU | 200 GiB | 8192 GiB | 500 GiB | -> **注意:** +> **Note:** > -> 集群创建后,你无法减少 TiFlash 节点存储。 +> 集群创建后,TiFlash 节点存储容量无法减少。 ### TiFlash 节点存储类型 -TiDB Cloud 为在 AWS 上托管的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群提供以下 TiFlash 存储类型: +TiDB Cloud 为托管在 AWS 上的 [TiDB Cloud 专属](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群提供以下 TiFlash 存储类型: -- [基础存储](#基础存储-1) -- [增强存储](#增强存储) +- [基础存储](#basic-storage-1) +- [Plus 存储](#plus-storage) #### 基础存储 -基础存储适用于大多数工作负载,在性能和成本效益之间取得平衡。 +基础存储适用于大多数负载,在性能和成本之间实现平衡。 -#### 增强存储 +#### Plus 存储 -增强存储提供更高的性能和稳定性,价格反映了这些增强的功能。目前,此存储类型仅在申请后可用于在 AWS 上部署的集群。要申请它,请点击 [TiDB Cloud 控制台](https://tidbcloud.com)右下角的 **?**,然后点击**请求支持**。然后,在**描述**字段中填写"申请 TiFlash 存储类型",并点击**提交**。 +Plus 存储提供更高的性能和稳定性,价格也相应更高。目前,该存储类型仅可按需为部署在 AWS 上的集群申请。如需申请,请点击 [TiDB Cloud 控制台](https://tidbcloud.com) 右下角的 **?**,然后点击 **Request Support**。在 **Description** 字段填写 "Apply for TiFlash storage type",并点击 **Submit**。 \ No newline at end of file diff --git a/tidb-cloud/sql-proxy-account.md b/tidb-cloud/sql-proxy-account.md index d147c49a916b6..c901304649944 100644 --- a/tidb-cloud/sql-proxy-account.md +++ b/tidb-cloud/sql-proxy-account.md @@ -1,23 +1,23 @@ --- -title: SQL 代理账号 +title: SQL Proxy Account summary: 了解 TiDB Cloud 中的 SQL 代理账号。 --- # SQL 代理账号 -SQL 代理账号是由 TiDB Cloud 自动创建的 SQL 用户账号,用于代表 TiDB Cloud 用户通过 [SQL 编辑器](/tidb-cloud/explore-data-with-chat2query.md)或[数据服务](https://docs.pingcap.com/tidbcloud/api/v1beta1/dataservice)访问数据库。例如,`testuser@pingcap.com` 是一个 TiDB Cloud 用户账号,而 `3jhEcSimm7keKP8.testuser._41mqK6H4` 是其对应的 SQL 代理账号。 +SQL 代理账号是 TiDB Cloud 自动为 TiDB Cloud 用户创建的 SQL 用户账号,用于通过 [SQL Editor](/tidb-cloud/explore-data-with-chat2query.md) 或 [Data Service](https://docs.pingcap.com/tidbcloud/api/v1beta1/dataservice) 代表用户访问数据库。例如,`testuser@pingcap.com` 是一个 TiDB Cloud 用户账号,而 `3jhEcSimm7keKP8.testuser._41mqK6H4` 则是其对应的 SQL 代理账号。 -SQL 代理账号为 TiDB Cloud 中的数据库访问提供了一个安全的、基于令牌的身份验证机制。通过消除传统的用户名和密码凭证的需求,SQL 代理账号增强了安全性并简化了访问管理。 +SQL 代理账号为在 TiDB Cloud 中访问数据库提供了一种安全的、基于令牌的身份验证机制。通过消除传统的用户名和密码凭证,SQL 代理账号提升了安全性并简化了访问管理。 SQL 代理账号的主要优势如下: -- 增强安全性:通过使用 JWT 令牌降低与静态凭证相关的风险。 -- 简化访问:将访问权限特别限制在 SQL 编辑器和数据服务上,确保精确控制。 -- 易于管理:简化了在 TiDB Cloud 中工作的开发人员和管理员的身份验证。 +- 增强安全性:通过使用 JWT 令牌,降低了与静态凭证相关的风险。 +- 精简访问控制:仅限于 SQL Editor 和 Data Service 访问,确保精确的权限管理。 +- 易于管理:为开发者和管理员简化了 TiDB Cloud 的身份验证流程。 ## 识别 SQL 代理账号 -如果你想确定特定的 SQL 账号是否为 SQL 代理账号,请执行以下步骤: +如果你想判断某个 SQL 账号是否为 SQL 代理账号,请按照以下步骤操作: 1. 检查 `mysql.user` 表: @@ -26,32 +26,32 @@ SQL 代理账号的主要优势如下: SELECT user FROM user WHERE plugin = 'tidb_auth_token'; ``` -2. 检查该 SQL 账号的授权。如果列出了 `role_admin`、`role_readonly` 或 `role_readwrite` 等角色,则它是一个 SQL 代理账号。 +2. 检查该 SQL 账号的授权信息。如果授权中包含 `role_admin`、`role_readonly` 或 `role_readwrite` 等角色,则该账号为 SQL 代理账号。 ```sql SHOW GRANTS for 'username'; ``` -## SQL 代理账号如何创建 +## SQL 代理账号的创建方式 -当在集群中被授予具有权限的角色的 TiDB Cloud 用户,在 TiDB Cloud 集群初始化期间会自动创建 SQL 代理账号。 +当 TiDB Cloud 用户被授予集群权限角色时,SQL 代理账号会在 TiDB Cloud 集群初始化期间自动创建。 -## SQL 代理账号如何删除 +## SQL 代理账号的删除方式 -当用户从[组织](/tidb-cloud/manage-user-access.md#remove-an-organization-member)或[项目](/tidb-cloud/manage-user-access.md#remove-a-project-member)中被移除,或其角色更改为无法访问集群的角色时,SQL 代理账号会自动删除。 +当用户被移出 [组织](/tidb-cloud/manage-user-access.md#remove-an-organization-member) 或 [项目](/tidb-cloud/manage-user-access.md#remove-a-project-member),或者其角色变更为无权访问集群的角色时,SQL 代理账号会被自动删除。 -请注意,如果手动删除了 SQL 代理账号,当用户下次登录 TiDB Cloud 控制台时,该账号会自动重新创建。 +需要注意的是,如果 SQL 代理账号被手动删除,当用户下次登录 TiDB Cloud 控制台时,该账号会被自动重新创建。 ## SQL 代理账号用户名 -在某些情况下,SQL 代理账号用户名与 TiDB Cloud 用户名完全相同,但在其他情况下则不完全相同。SQL 代理账号用户名由 TiDB Cloud 用户的电子邮件地址长度决定。规则如下: +在某些情况下,SQL 代理账号的用户名与 TiDB Cloud 用户名完全相同,但在其他情况下则不完全相同。SQL 代理账号的用户名由 TiDB Cloud 用户邮箱地址的长度决定,规则如下: | 环境 | 邮箱长度 | 用户名格式 | | ----------- | ------------ | --------------- | -| TiDB Cloud Dedicated | <= 32 字符 | 完整邮箱地址 | -| TiDB Cloud Dedicated | > 32 字符 | `prefix($email, 23)_prefix(base58(sha1($email)), 8)` | -| TiDB Cloud Serverless | <= 15 字符 | `serverless_unique_prefix + "." + email` | -| TiDB Cloud Serverless | > 15 字符 | `serverless_unique_prefix + "." + prefix($email, 6)_prefix(base58(sha1($email)), 8)` | +| TiDB Cloud Dedicated | <= 32 个字符 | 完整邮箱地址 | +| TiDB Cloud Dedicated | > 32 个字符 | `prefix($email, 23)_prefix(base58(sha1($email)), 8)` | +| TiDB Cloud Serverless | <= 15 个字符 | `serverless_unique_prefix + "." + email` | +| TiDB Cloud Serverless | > 15 个字符 | `serverless_unique_prefix + "." + prefix($email, 6)_prefix(base58(sha1($email)), 8)` | 示例: @@ -62,29 +62,29 @@ SQL 代理账号的主要优势如下: | TiDB Cloud Serverless | `u1@pingcap.com` | `{user_name_prefix}.u1@pingcap.com` | | TiDB Cloud Serverless | `longemailaddressexample@pingcap.com` | `{user_name_prefix}.longem_48k1jwL9`| -> **注意:** +> **Note:** > -> 在上表中,`{user_name_prefix}` 是由 TiDB Cloud 生成的唯一前缀,用于区分 TiDB Cloud Serverless 集群。详情请参见 TiDB Cloud Serverless 集群的[用户名前缀](/tidb-cloud/select-cluster-tier.md#user-name-prefix)。 +> 在上表中,`{user_name_prefix}` 是 TiDB Cloud 为区分 TiDB Cloud Serverless 集群而生成的唯一前缀。详情请参见 TiDB Cloud Serverless 集群的 [user name prefix](/tidb-cloud/select-cluster-tier.md#user-name-prefix)。 ## SQL 代理账号密码 -由于 SQL 代理账号基于 JWT 令牌,因此无需管理这些账号的密码。安全令牌由系统自动管理。 +由于 SQL 代理账号基于 JWT 令牌,因此无需为这些账号管理密码。安全令牌由系统自动管理。 ## SQL 代理账号角色 SQL 代理账号的角色取决于 TiDB Cloud 用户的 IAM 角色: - 组织级别: - - 组织所有者:role_admin - - 组织计费管理员:无代理账号 - - 组织查看者:无代理账号 - - 组织控制台审计管理员:无代理账号 + - Organization Owner: role_admin + - Organization Billing Manager: 无代理账号 + - Organization Viewer: 无代理账号 + - Organization Console Audit Manager: 无代理账号 - 项目级别: - - 项目所有者:role_admin - - 项目数据访问读写:role_readwrite - - 项目数据访问只读:role_readonly + - Project Owner: role_admin + - Project Data Access Read-Write: role_readwrite + - Project Data Access Read-Only: role_readonly ## SQL 代理账号访问控制 -SQL 代理账号基于 JWT 令牌,只能通过数据服务和 SQL 编辑器访问。无法使用用户名和密码通过 SQL 代理账号访问 TiDB Cloud 集群。 +SQL 代理账号基于 JWT 令牌,仅可用于 Data Service 和 SQL Editor 访问。无法通过用户名和密码使用 SQL 代理账号访问 TiDB Cloud 集群。 \ No newline at end of file diff --git a/tidb-cloud/terraform-migrate-cluster-resource.md b/tidb-cloud/terraform-migrate-cluster-resource.md index 6422b4abbe0d2..aa11c97c06faf 100644 --- a/tidb-cloud/terraform-migrate-cluster-resource.md +++ b/tidb-cloud/terraform-migrate-cluster-resource.md @@ -1,21 +1,21 @@ --- -title: 将集群资源迁移到 Serverless 或 Dedicated 集群资源 -summary: 了解如何将集群资源迁移到 serverless 或 dedicated 集群资源。 +title: 将集群资源迁移到无服务器或专用集群资源 +summary: 了解如何将集群资源迁移到无服务器或专用集群资源。 --- -# 将集群资源迁移到 Serverless 或 Dedicated 集群资源 +# 将集群资源迁移到无服务器或专用集群资源 -从 TiDB Cloud Terraform Provider v0.4.0 开始,`tidbcloud_cluster` 资源被两个新资源替代:`tidbcloud_serverless_cluster` 和 `tidbcloud_dedicated_cluster`。如果你正在使用 TiDB Cloud Terraform Provider v0.4.0 或更高版本,可以按照本文档将你的 `tidbcloud_cluster` 资源迁移到 `tidbcloud_serverless_cluster` 或 `tidbcloud_dedicated_cluster` 资源。 +从 TiDB Cloud Terraform Provider v0.4.0 开始,`tidbcloud_cluster` 资源被两个新资源所取代:`tidbcloud_serverless_cluster` 和 `tidbcloud_dedicated_cluster`。如果你正在使用 TiDB Cloud Terraform Provider v0.4.0 或更高版本,可以按照本文档将你的 `tidbcloud_cluster` 资源迁移到 `tidbcloud_serverless_cluster` 或 `tidbcloud_dedicated_cluster` 资源。 -> **提示:** +> **Tip:** > -> 本文档中的步骤使用 Terraform 的配置生成功能来简化迁移过程,通过自动重新创建集群资源的 `.tf` 配置。要了解更多信息,请参阅 Terraform 文档中的[生成配置](https://developer.hashicorp.com/terraform/language/import/generating-configuration)。 +> 本文档中的步骤使用了 Terraform 的配置生成特性,通过自动重新创建集群资源的 `.tf` 配置来简化迁移流程。要了解更多信息,请参阅 Terraform 文档中的 [Generating configuration](https://developer.hashicorp.com/terraform/language/import/generating-configuration)。 -## 前提条件 +## 前置条件 - 升级到 [TiDB Cloud Terraform Provider v0.4.0 或更高版本](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest) -## 步骤 1. 确定要迁移的 `tidbcloud_cluster` 资源 +## 第 1 步:识别需要迁移的 `tidbcloud_cluster` 资源 1. 列出所有 `tidbcloud_cluster` 资源: @@ -23,27 +23,27 @@ summary: 了解如何将集群资源迁移到 serverless 或 dedicated 集群资 terraform state list | grep "tidbcloud_cluster" ``` -2. 选择要迁移的目标集群资源,并获取其集群 `id` 以供后续使用: +2. 选择一个目标集群资源进行迁移,并获取其集群 `id` 以备后用: ```shell terraform state show ${your_target_cluster_resource} | grep ' id ' ``` -## 步骤 2. 从 Terraform 状态中移除现有资源 +## 第 2 步:从 Terraform 状态中移除现有资源 -从 Terraform 状态中移除目标集群资源: +从 Terraform 状态中移除你的目标集群资源: ```shell terraform state rm ${your_target_cluster_resource} ``` -## 步骤 3. 删除目标集群资源的配置 +## 第 3 步:删除目标集群资源的配置 -在你的 `.tf` 文件中,找到目标集群资源的配置并删除相应的代码。 +在你的 `.tf` 文件中,找到目标集群资源的配置并删除对应的代码。 -## 步骤 4. 为新的 serverless 或 dedicated 集群资源添加导入块 +## 第 4 步:为新的无服务器或专用集群资源添加 import 块 -- 如果你的目标集群是 TiDB Cloud Serverless,将以下导入块添加到你的 `.tf` 文件中,将 `example` 替换为所需的资源名称,并将 `${id}` 替换为你在[步骤 1](#步骤-1-确定要迁移的-tidbcloud_cluster-资源)中获取的集群 ID: +- 如果你的目标集群是 TiDB Cloud Serverless,请将以下 import 块添加到你的 `.tf` 文件中,将 `example` 替换为你期望的资源名称,并将 `${id}` 替换为你在 [第 1 步](#step-1-identify-the-tidbcloud_cluster-resource-to-migrate) 获取的集群 ID: ``` # TiDB Cloud Serverless @@ -53,7 +53,7 @@ terraform state rm ${your_target_cluster_resource} } ``` -- 如果你的目标集群是 TiDB Cloud Dedicated,将以下导入块添加到你的 `.tf` 文件中,将 `example` 替换为所需的资源名称,并将 `${id}` 替换为你在[步骤 1](#步骤-1-确定要迁移的-tidbcloud_cluster-资源)中获取的集群 ID: +- 如果你的目标集群是 TiDB Cloud Dedicated,请将以下 import 块添加到你的 `.tf` 文件中,将 `example` 替换为你期望的资源名称,并将 `${id}` 替换为你在 [第 1 步](#step-1-identify-the-tidbcloud_cluster-resource-to-migrate) 获取的集群 ID: ``` # TiDB Cloud Dedicated @@ -63,25 +63,25 @@ terraform state rm ${your_target_cluster_resource} } ``` -## 步骤 5. 生成新的配置文件 +## 第 5 步:生成新的配置文件 -根据导入块为新的 serverless 或 dedicated 集群资源生成新的配置文件: +根据 import 块为新的无服务器或专用集群资源生成新的配置文件: ```shell terraform plan -generate-config-out=generated.tf ``` -不要在上述命令中指定现有的 `.tf` 文件名。否则,Terraform 将返回错误。 +不要在上述命令中指定已有的 `.tf` 文件名,否则 Terraform 会返回错误。 -## 步骤 6. 审查并应用生成的配置 +## 第 6 步:检查并应用生成的配置 -审查生成的配置文件以确保它满足你的需求。你可以选择将此文件的内容移动到你喜欢的位置。 +检查生成的配置文件,确保其满足你的需求。你也可以选择将该文件的内容移动到你喜欢的位置。 -然后,运行 `terraform apply` 来导入你的基础设施。应用后,示例输出如下: +然后,运行 `terraform apply` 以导入你的基础设施。应用后,示例输出如下: ```shell tidbcloud_serverless_cluster.example: Importing... tidbcloud_serverless_cluster.example: Import complete Apply complete! Resources: 1 imported, 0 added, 0 changed, 0 destroyed. -``` +``` \ No newline at end of file diff --git a/tidb-cloud/terraform-use-backup-resource.md b/tidb-cloud/terraform-use-backup-resource.md index cfd022f501fa1..5ca739830d84e 100644 --- a/tidb-cloud/terraform-use-backup-resource.md +++ b/tidb-cloud/terraform-use-backup-resource.md @@ -1,25 +1,25 @@ --- -title: 使用备份资源 -summary: 了解如何使用备份资源创建 TiDB Cloud 集群的备份。 +title: 使用 Backup 资源 +summary: 了解如何使用 backup 资源为 TiDB Cloud 集群创建备份。 --- -# 使用备份资源 +# 使用 Backup 资源 -你可以在本文档中了解如何使用 `tidbcloud_backup` 资源创建 TiDB Cloud 集群的备份。 +你可以在本文档中学习如何使用 `tidbcloud_backup` 资源为 TiDB Cloud 集群创建备份。 -`tidbcloud_backup` 资源的功能包括以下内容: +`tidbcloud_backup` 资源的功能包括: -- 为 TiDB Cloud Dedicated 集群创建备份。 -- 删除 TiDB Cloud Dedicated 集群的备份。 +- 为 TiDB Cloud 专属集群创建备份。 +- 删除 TiDB Cloud 专属集群的备份。 -## 前提条件 +## 前置条件 - [获取 TiDB Cloud Terraform Provider](/tidb-cloud/terraform-get-tidbcloud-provider.md)。 -- 备份和恢复功能不适用于 TiDB Cloud Serverless 集群。要使用备份资源,请确保你已创建了 TiDB Cloud Dedicated 集群。 +- 备份与恢复功能不支持 TiDB Cloud Serverless 集群。要使用备份资源,请确保你已创建 TiDB Cloud 专属集群。 -## 使用备份资源创建备份 +## 使用 backup 资源创建备份 -1. 创建一个备份目录并进入该目录。 +1. 创建一个用于备份的目录并进入该目录。 2. 创建一个 `backup.tf` 文件。 @@ -46,9 +46,9 @@ summary: 了解如何使用备份资源创建 TiDB Cloud 集群的备份。 } ``` - 你需要将文件中的资源值(如项目 ID 和集群 ID)替换为你自己的值。 + 你需要将文件中的资源值(如 project ID 和 cluster ID)替换为你自己的。 - 如果你已经使用 Terraform 维护了一个集群资源(例如 `example_cluster`),你也可以按如下方式配置备份资源,而无需指定实际的项目 ID 和集群 ID。 + 如果你已经通过 Terraform 管理了一个集群资源(例如 `example_cluster`),也可以如下配置备份资源,无需指定实际的 project ID 和 cluster ID。 ``` resource "tidbcloud_backup" "example_backup" { @@ -93,7 +93,7 @@ summary: 了解如何使用备份资源创建 TiDB Cloud 集群的备份。 Enter a value: ``` -4. 输入 `yes` 创建备份: +4. 输入 `yes` 以创建备份: ``` Enter a value: yes @@ -105,7 +105,7 @@ summary: 了解如何使用备份资源创建 TiDB Cloud 集群的备份。 ``` -5. 使用 `terraform state show tidbcloud_backup.${resource-name}` 检查备份状态: +5. 使用 `terraform state show tidbcloud_backup.${resource-name}` 查看备份状态: ``` $ terraform state show tidbcloud_backup.example_backup @@ -124,7 +124,7 @@ summary: 了解如何使用备份资源创建 TiDB Cloud 集群的备份。 } ``` -6. 等待几分钟。然后使用 `terraform refersh` 更新状态: +6. 等待几分钟,然后使用 `terraform refresh` 更新状态: ``` $ terraform refresh @@ -145,17 +145,17 @@ summary: 了解如何使用备份资源创建 TiDB Cloud 集群的备份。 } ``` -当状态变为 `SUCCESS` 时,表示你已经为集群创建了备份。请注意,备份在创建后无法更新。 +当 status 变为 `SUCCESS` 时,表示你已为集群创建了备份。请注意,备份在创建后无法更新。 -现在,你已经为集群创建了备份。如果你想使用备份来恢复集群,可以[使用恢复资源](/tidb-cloud/terraform-use-restore-resource.md)。 +现在,你已经为集群创建了备份。如果你想使用该备份恢复集群,可以[使用 restore 资源](/tidb-cloud/terraform-use-restore-resource.md)。 ## 更新备份 -备份无法更新。 +备份无法被更新。 ## 删除备份 -要删除备份,请转到包含相应 `backup.tf` 文件的备份目录,然后运行 `terraform destroy` 命令来销毁备份资源。 +要删除备份,请进入包含对应 `backup.tf` 文件的备份目录,然后运行 `terraform destroy` 命令销毁备份资源。 ``` $ terraform destroy @@ -169,8 +169,8 @@ There is no undo. Only 'yes' will be accepted to confirm. Enter a value: yes ``` -现在,如果你运行 `terraform show` 命令,你将得不到任何内容,因为资源已被清除: +此时,如果你运行 `terraform show` 命令,将不会有任何输出,因为资源已被清除: ``` $ terraform show -``` +``` \ No newline at end of file diff --git a/tidb-cloud/terraform-use-cluster-resource.md b/tidb-cloud/terraform-use-cluster-resource.md index 15aff5f529ca2..b4e0f172959bc 100644 --- a/tidb-cloud/terraform-use-cluster-resource.md +++ b/tidb-cloud/terraform-use-cluster-resource.md @@ -1,31 +1,35 @@ --- -title: 使用集群资源 -summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 +title: 使用 Cluster 资源(已弃用) +summary: 了解如何使用 cluster 资源创建和修改 TiDB Cloud 集群。 --- -# 使用集群资源 +# 使用 Cluster 资源(已弃用) -本文档介绍如何使用 `tidbcloud_cluster` 资源管理 TiDB Cloud 集群。 +> **Warning:** +> +> 从 [TiDB Cloud Terraform Provider](https://registry.terraform.io/providers/tidbcloud/tidbcloud) v0.4.0 开始,`tidbcloud_cluster` 资源已被弃用。推荐使用 `tidbcloud_dedicated_cluster` 或 `tidbcloud_serverless_cluster` 资源。更多信息请参见 [使用 TiDB Cloud 专属集群资源](/tidb-cloud/terraform-use-dedicated-cluster-resource.md) 或 [使用 TiDB Cloud Serverless 集群资源](/tidb-cloud/terraform-use-serverless-cluster-resource.md)。 + +你可以在本文档中学习如何使用 `tidbcloud_cluster` 资源管理 TiDB Cloud 集群。 -此外,你还将学习如何使用 `tidbcloud_projects` 和 `tidbcloud_cluster_specs` 数据源获取必要信息。 +此外,你还将学习如何通过 `tidbcloud_projects` 和 `tidbcloud_cluster_specs` 数据源获取所需信息。 -`tidbcloud_cluster` 资源的功能包括以下内容: +`tidbcloud_cluster` 资源的功能包括: -- 创建 TiDB Cloud Serverless 和 TiDB Cloud Dedicated 集群。 -- 修改 TiDB Cloud Dedicated 集群。 -- 删除 TiDB Cloud Serverless 和 TiDB Cloud Dedicated 集群。 +- 创建 TiDB Cloud Serverless 和 TiDB Cloud 专属集群。 +- 修改 TiDB Cloud 专属集群。 +- 删除 TiDB Cloud Serverless 和 TiDB Cloud 专属集群。 -## 前提条件 +## 前置条件 - [获取 TiDB Cloud Terraform Provider](/tidb-cloud/terraform-get-tidbcloud-provider.md)。 ## 使用 `tidbcloud_projects` 数据源获取项目 ID -每个 TiDB 集群都在一个项目中。在创建 TiDB 集群之前,你需要获取要在其中创建集群的项目 ID。 +每个 TiDB 集群都属于一个项目。在创建 TiDB 集群之前,你需要获取要创建集群的项目 ID。 -要查看所有可用项目的信息,你可以按照以下方式使用 `tidbcloud_projects` 数据源: +要查看所有可用项目的信息,可以按如下方式使用 `tidbcloud_projects` 数据源: -1. 在[获取 TiDB Cloud Terraform Provider](/tidb-cloud/terraform-get-tidbcloud-provider.md) 时创建的 `main.tf` 文件中,添加 `data` 和 `output` 块,如下所示: +1. 在你 [获取 TiDB Cloud Terraform Provider](/tidb-cloud/terraform-get-tidbcloud-provider.md) 时创建的 `main.tf` 文件中,添加如下 `data` 和 `output` 块: ``` terraform { @@ -54,19 +58,19 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 - 使用 `data` 块定义 TiDB Cloud 的数据源,包括数据源类型和数据源名称。 - - 要使用项目数据源,请将数据源类型设置为 `tidbcloud_projects`。 - - 对于数据源名称,你可以根据需要定义它。例如,"example_project"。 - - 对于 `tidbcloud_projects` 数据源,你可以使用 `page` 和 `page_size` 属性来限制要检查的最大项目数。 + - 若要使用项目数据源,将数据源类型设置为 `tidbcloud_projects`。 + - 数据源名称可根据需要自定义,例如 "example_project"。 + - 对于 `tidbcloud_projects` 数据源,可以通过 `page` 和 `page_size` 属性限制你要查询的最大项目数。 - - 使用 `output` 块定义要在输出中显示的数据源信息,并公开信息供其他 Terraform 配置使用。 + - 使用 `output` 块定义要在输出中显示的数据源信息,并将信息暴露给其他 Terraform 配置使用。 - `output` 块的工作方式类似于编程语言中的返回值。有关更多详细信息,请参阅 [Terraform 文档](https://www.terraform.io/language/values/outputs)。 + `output` 块的作用类似于编程语言中的返回值。详见 [Terraform 文档](https://www.terraform.io/language/values/outputs)。 - 要获取资源和数据源的所有可用配置,请参阅此[配置文档](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest/docs)。 + 要获取所有资源和数据源的可用配置项,请参见此 [配置文档](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest/docs)。 -2. 运行 `terraform apply` 命令以应用配置。你需要在确认提示时输入 `yes` 才能继续。 +2. 运行 `terraform apply` 命令以应用配置。你需要在确认提示时输入 `yes` 以继续。 - 要跳过提示,请使用 `terraform apply --auto-approve`: + 若要跳过提示,可使用 `terraform apply --auto-approve`: ``` $ terraform apply --auto-approve @@ -117,14 +121,15 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 ]) ``` -现在,你可以从输出中获取所有可用的项目。复制你需要的项目 ID。 +现在,你可以从输出中获取所有可用项目。复制你需要的项目 ID。 + ## 使用 `tidbcloud_cluster_specs` 数据源获取集群规格信息 -在创建集群之前,你需要获取集群规格信息,其中包含所有可用的配置值(如支持的云服务提供商、区域和节点大小)。 +在创建集群之前,你需要获取集群规格信息,其中包含所有可用的配置值(如支持的云服务商、区域和节点规格)。 -要获取集群规格信息,你可以按照以下方式使用 `tidbcloud_cluster_specs` 数据源: +要获取集群规格信息,可以按如下方式使用 `tidbcloud_cluster_specs` 数据源: -1. 编辑 `main.tf` 文件,如下所示: +1. 按如下方式编辑 `main.tf` 文件: ``` terraform { @@ -148,10 +153,10 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 2. 运行 `terraform apply --auto-approve` 命令,你将获得集群规格信息。 - 点击以下行查看部分示例结果供参考。 + 点击下方行可参考部分示例结果。
- 集群规格 + Cluster specification ``` { @@ -258,24 +263,25 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 在结果中: -- `cloud_provider` 是可以托管 TiDB 集群的云服务提供商。 -- `region` 是 `cloud_provider` 的区域。 -- `node_quantity_range` 显示最小节点数和扩展节点的步长。 -- `node_size` 是节点的大小。 -- `storage_size_gib_range` 显示可以为节点设置的最小和最大存储大小。 -## 使用集群资源创建集群 +- `cloud_provider` 表示 TiDB 集群可部署的云服务商。 +- `region` 表示 `cloud_provider` 的区域。 +- `node_quantity_range` 显示节点数量的最小值和扩容步长。 +- `node_size` 表示节点规格。 +- `storage_size_gib_range` 显示你可为节点设置的最小和最大存储空间。 + +## 使用 cluster 资源创建集群 -> **注意:** +> **Note:** > -> 在开始之前,请确保你已在 TiDB Cloud 控制台中设置了 CIDR。有关更多信息,请参阅[设置 CIDR](/tidb-cloud/set-up-vpc-peering-connections.md#prerequisite-set-a-cidr-for-a-region)。 +> 在开始之前,请确保你已在 TiDB Cloud 控制台设置了 CIDR。更多信息请参见 [设置 CIDR](/tidb-cloud/set-up-vpc-peering-connections.md#prerequisite-set-a-cidr-for-a-region)。 你可以使用 `tidbcloud_cluster` 资源创建集群。 -以下示例展示如何创建 TiDB Cloud Dedicated 集群。 +以下示例展示如何创建一个 TiDB Cloud 专属集群。 1. 为集群创建一个目录并进入该目录。 -2. 创建一个 `cluster.tf` 文件: +2. 创建 `cluster.tf` 文件: ``` terraform { @@ -316,13 +322,13 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 } ``` - 使用 `resource` 块定义 TiDB Cloud 的资源,包括资源类型、资源名称和资源详细信息。 + 使用 `resource` 块定义 TiDB Cloud 的资源,包括资源类型、资源名称和资源详情。 - - 要使用集群资源,请将资源类型设置为 `tidbcloud_cluster`。 - - 对于资源名称,你可以根据需要定义它。例如,`example_cluster`。 - - 对于资源详细信息,你可以根据项目 ID 和集群规格信息进行配置。 + - 若要使用集群资源,将资源类型设置为 `tidbcloud_cluster`。 + - 资源名称可根据需要自定义,例如 `example_cluster`。 + - 资源详情可根据项目 ID 和集群规格信息进行配置。 -3. 运行 `terraform apply` 命令。不建议在应用资源时使用 `terraform apply --auto-approve`。 +3. 运行 `terraform apply` 命令。应用资源时不推荐使用 `terraform apply --auto-approve`。 ```shell $ terraform apply @@ -370,13 +376,13 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 Enter a value: ``` - 如上述结果所示,Terraform 为你生成了一个执行计划,描述了 Terraform 将采取的操作: + 如上所示,Terraform 会为你生成一个执行计划,描述将要执行的操作: - - 你可以检查配置和状态之间的差异。 - - 你还可以看到此 `apply` 的结果。它将添加一个新资源,不会更改或销毁任何资源。 + - 你可以检查配置与当前状态的差异。 + - 你还可以看到本次 `apply` 的结果。将新增一个资源,不会有资源被更改或销毁。 - `known after apply` 表示你将在 `apply` 后获得该值。 -4. 如果你的计划看起来没有问题,输入 `yes` 继续: +4. 如果计划中的内容无误,输入 `yes` 继续: ``` Do you want to perform these actions? @@ -392,7 +398,7 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 ``` -5. 使用 `terraform show` 或 `terraform state show tidbcloud_cluster.${resource-name}` 命令检查资源的状态。前者将显示所有资源和数据源的状态。 +5. 使用 `terraform show` 或 `terraform state show tidbcloud_cluster.${resource-name}` 命令检查资源状态。前者会显示所有资源和数据源的状态。 ```shell $ terraform state show tidbcloud_cluster.example_cluster @@ -427,9 +433,9 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 } ``` - 集群的状态是 `CREATING`。在这种情况下,你需要等待它变为 `AVAILABLE`,这通常需要至少 10 分钟。 + 此时集群状态为 `CREATING`。你需要等待其变为 `AVAILABLE`,通常至少需要 10 分钟。 -6. 如果你想检查最新状态,运行 `terraform refresh` 命令更新状态,然后运行 `terraform state show tidbcloud_cluster.${resource-name}` 命令显示状态。 +6. 如果你想查看最新状态,运行 `terraform refresh` 命令以更新状态,然后运行 `terraform state show tidbcloud_cluster.${resource-name}` 命令显示状态。 ``` $ terraform refresh @@ -468,18 +474,19 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 } ``` -当状态为 `AVAILABLE` 时,表示你的 TiDB 集群已创建完成并可以使用。 -## 修改 TiDB Cloud Dedicated 集群 +当状态为 `AVAILABLE` 时,表示你的 TiDB 集群已创建并可用。 -对于 TiDB Cloud Dedicated 集群,你可以使用 Terraform 管理集群资源,如下所示: +## 修改 TiDB Cloud 专属集群 -- 向集群添加 TiFlash 组件。 -- 扩缩容集群。 +对于 TiDB Cloud 专属集群,你可以通过 Terraform 管理集群资源,包括: + +- 为集群添加 TiFlash 组件。 +- 扩容集群。 - 暂停或恢复集群。 ### 添加 TiFlash 组件 -1. 在[创建集群](#使用集群资源创建集群)时使用的 `cluster.tf` 文件中,将 `tiflash` 配置添加到 `components` 字段。 +1. 在 [创建集群](#create-a-cluster-using-the-cluster-resource) 时使用的 `cluster.tf` 文件中,在 `components` 字段添加 `tiflash` 配置。 例如: @@ -543,9 +550,9 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 ``` - 如上述执行计划所示,将添加 TiFlash,并且将更改一个资源。 + 如上执行计划,TiFlash 将被添加,并有一个资源被更改。 -3. 如果你的计划看起来没有问题,输入 `yes` 继续: +3. 如果计划无误,输入 `yes` 继续: ``` Enter a value: yes @@ -596,14 +603,15 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 } ``` -`MODIFYING` 状态表示集群正在更改中。等待一段时间后,状态将变为 `AVAILABLE`。 -### 扩缩容 TiDB 集群 +`MODIFYING` 状态表示集群正在变更。稍等片刻,状态会变为 `AVAILABLE`。 + +### 扩容 TiDB 集群 -当集群状态为 `AVAILABLE` 时,你可以扩缩容集群。 +当集群状态为 `AVAILABLE` 时,你可以扩容 TiDB 集群。 -1. 在[创建集群](#使用集群资源创建集群)时使用的 `cluster.tf` 文件中,编辑 `components` 配置。 +1. 在 [创建集群](#create-a-cluster-using-the-cluster-resource) 时使用的 `cluster.tf` 文件中,编辑 `components` 配置。 - 例如,要为 TiDB 增加一个节点,为 TiKV 增加 3 个节点(TiKV 节点数需要是 3 的倍数,因为其步长为 3。你可以[从集群规格中获取此信息](#使用-tidbcloud_cluster_specs-数据源获取集群规格信息)),为 TiFlash 增加一个节点,你可以按如下方式编辑配置: + 例如,若要为 TiDB 增加 1 个节点,为 TiKV 增加 3 个节点(TiKV 节点数需为 3 的倍数,因为步长为 3。你可以 [从集群规格获取此信息](#get-cluster-specification-information-using-the-tidbcloud_cluster_specs-data-source)),为 TiFlash 增加 1 个节点,可按如下方式编辑配置: ``` components = { @@ -624,7 +632,7 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 } ``` -2. 运行 `terraform apply` 命令并输入 `yes` 确认: +2. 运行 `terraform apply` 命令并输入 `yes` 进行确认: ``` $ terraform apply @@ -676,14 +684,15 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 ``` 等待状态从 `MODIFYING` 变为 `AVAILABLE`。 + ### 暂停或恢复集群 -当集群状态为 `AVAILABLE` 时,你可以暂停集群,或者当集群状态为 `PAUSED` 时,你可以恢复集群。 +当集群状态为 `AVAILABLE` 时你可以暂停集群,状态为 `PAUSED` 时可以恢复集群。 -- 设置 `paused = true` 暂停集群。 -- 设置 `paused = false` 恢复集群。 +- 设置 `paused = true` 可暂停集群。 +- 设置 `paused = false` 可恢复集群。 -1. 在[创建集群](#使用集群资源创建集群)时使用的 `cluster.tf` 文件中,将 `pause = true` 添加到 `config` 配置中: +1. 在 [创建集群](#create-a-cluster-using-the-cluster-resource) 时使用的 `cluster.tf` 文件中,在 `config` 配置中添加 `pause = true`: ``` config = { @@ -694,7 +703,7 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 } ``` -2. 运行 `terraform apply` 命令并在检查后输入 `yes`: +2. 运行 `terraform apply` 命令并检查后输入 `yes`: ``` $ terraform apply @@ -773,7 +782,7 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 } ``` -4. 当你需要恢复集群时,设置 `paused = false`: +4. 需要恢复集群时,将 `paused = false`: ``` config = { @@ -784,7 +793,7 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 } ``` -5. 运行 `terraform apply` 命令并输入 `yes` 确认。如果你使用 `terraform state show tidbcloud_cluster.${resource-name}` 命令检查状态,你会发现它变为 `RESUMING`: +5. 运行 `terraform apply` 命令并输入 `yes` 进行确认。使用 `terraform state show tidbcloud_cluster.${resource-name}` 命令检查状态,你会发现状态变为 `RESUMING`: ``` # tidbcloud_cluster.example_cluster: @@ -823,16 +832,17 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 } ``` -6. 等待一段时间,然后使用 `terraform refersh` 命令更新状态。状态最终将变为 `AVAILABLE`。 +6. 稍等片刻后,使用 `terraform refersh` 命令更新状态,最终状态会变为 `AVAILABLE`。 + +现在,你已经使用 Terraform 创建并管理了 TiDB Cloud 专属集群。接下来,你可以尝试通过我们的 [备份资源](/tidb-cloud/terraform-use-backup-resource.md) 为集群创建备份。 -现在,你已经使用 Terraform 创建和管理了一个 TiDB Cloud Dedicated 集群。接下来,你可以尝试使用我们的[备份资源](/tidb-cloud/terraform-use-backup-resource.md)创建集群的备份。 ## 导入集群 -对于不是由 Terraform 管理的 TiDB 集群,你可以通过导入它来使用 Terraform 管理它。 +对于未被 Terraform 管理的 TiDB 集群,你可以通过导入的方式让 Terraform 管理它。 -例如,你可以导入不是由 Terraform 创建的集群,或导入[使用恢复资源创建](/tidb-cloud/terraform-use-restore-resource.md#create-a-restore-task)的集群。 +例如,你可以导入一个非 Terraform 创建的集群,或导入一个 [通过 restore 资源创建的集群](/tidb-cloud/terraform-use-restore-resource.md#create-a-restore-task)。 -1. 创建一个 `import_cluster.tf` 文件,如下所示: +1. 创建 `import_cluster.tf` 文件如下: ``` terraform { @@ -863,7 +873,7 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 your Terraform state and will henceforth be managed by Terraform. ``` -3. 运行 `terraform state show tidbcloud_cluster.import_cluster` 命令检查集群的状态: +3. 运行 `terraform state show tidbcloud_cluster.import_cluster` 命令检查集群状态: ``` $ terraform state show tidbcloud_cluster.import_cluster @@ -899,7 +909,7 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 } ``` -4. 要使用 Terraform 管理集群,你可以将上一步的输出复制到你的配置文件中。注意,你需要删除 `id` 和 `status` 行,因为它们将由 Terraform 控制: +4. 若要通过 Terraform 管理集群,可以将上一步的输出复制到你的配置文件中。注意需要删除 `id` 和 `status` 两行,因为它们将由 Terraform 控制: ``` resource "tidbcloud_cluster" "import_cluster" { @@ -936,7 +946,7 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 $ terraform fmt ``` -6. 为确保配置和状态的一致性,你可以执行 `terraform plan` 或 `terraform apply`。如果你看到 `No changes`,则导入成功。 +6. 为确保配置与状态一致,可以执行 `terraform plan` 或 `terraform apply`。如果看到 `No changes`,则说明导入成功。 ``` $ terraform apply @@ -950,11 +960,11 @@ summary: 了解如何使用集群资源创建和修改 TiDB Cloud 集群。 Apply complete! Resources: 0 added, 0 changed, 0 destroyed. ``` -现在你可以使用 Terraform 管理集群了。 +现在你可以使用 Terraform 管理该集群。 ## 删除集群 -要删除集群,进入包含相应 `cluster.tf` 文件的集群目录,然后运行 `terraform destroy` 命令销毁集群资源: +要删除集群,请进入包含对应 `cluster.tf` 文件的集群目录,然后运行 `terraform destroy` 命令销毁集群资源: ``` $ terraform destroy @@ -968,7 +978,7 @@ There is no undo. Only 'yes' will be accepted to confirm. Enter a value: yes ``` -现在,如果你运行 `terraform show` 命令,你将得到空输出,因为资源已被清除: +此时,如果你运行 `terraform show` 命令,将不会有任何输出,因为资源已被清除: ``` $ terraform show diff --git a/tidb-cloud/terraform-use-import-resource.md b/tidb-cloud/terraform-use-import-resource.md index 4240cb8e3fe82..3f712e2784ef6 100644 --- a/tidb-cloud/terraform-use-import-resource.md +++ b/tidb-cloud/terraform-use-import-resource.md @@ -1,34 +1,34 @@ --- -title: 使用导入资源 -summary: 了解如何使用导入资源管理导入任务。 +title: 使用 Import 资源 +summary: 学习如何使用 import 资源管理导入任务。 --- -# 使用导入资源 +# 使用 Import 资源 -本文档介绍如何使用 `tidbcloud_import` 资源将数据导入到 TiDB Cloud 集群。 +你可以在本文档中学习如何使用 `tidbcloud_import` 资源将数据导入到 TiDB Cloud 集群。 -`tidbcloud_import` 资源的功能包括以下内容: +`tidbcloud_import` 资源的功能包括: - 为 TiDB Cloud Serverless 和 TiDB Cloud Dedicated 集群创建导入任务。 -- 从本地磁盘或 Amazon S3 存储桶导入数据。 +- 支持从本地磁盘或 Amazon S3 存储桶导入数据。 - 取消正在进行的导入任务。 -## 前提条件 +## 前置条件 - [获取 TiDB Cloud Terraform Provider](/tidb-cloud/terraform-get-tidbcloud-provider.md)。 -- [创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md)或[创建 TiDB Cloud Dedicated 集群](/tidb-cloud/create-tidb-cluster.md)。 +- [创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md) 或 [创建 TiDB Cloud Dedicated 集群](/tidb-cloud/create-tidb-cluster.md)。 ## 创建并运行导入任务 -你可以使用导入资源管理本地导入任务或 Amazon S3 导入任务。 +你可以使用 import 资源管理本地导入任务或 Amazon S3 导入任务。 ### 创建并运行本地导入任务 -> **注意:** +> **Note:** > -> 导入本地文件仅支持 TiDB Cloud Serverless 集群,不支持 TiDB Cloud Dedicated 集群。 +> 本地文件导入仅支持 TiDB Cloud Serverless 集群,不支持 TiDB Cloud Dedicated 集群。 -1. 创建用于导入的 CSV 文件。例如: +1. 创建一个用于导入的 CSV 文件。例如: ``` id;name;age @@ -36,7 +36,7 @@ summary: 了解如何使用导入资源管理导入任务。 2;Bob;30 ``` -2. 创建一个 `import` 目录,然后在其中创建一个 `main.tf`。例如: +2. 创建一个 `import` 目录,并在其中创建 `main.tf` 文件。例如: ``` terraform { @@ -68,9 +68,9 @@ summary: 了解如何使用导入资源管理导入任务。 } ``` - 用你自己的值替换文件中的资源值(如项目 ID、集群 ID 和 CSV 路径)。你可以在[配置页面](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest/docs/resources/import#nested-schema-for-csv_format)上找到 `csv_format` 的详细信息。 + 将文件中的资源值(如 project ID、cluster ID 和 CSV 路径)替换为你自己的值。你可以在 [配置页面](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest/docs/resources/import#nested-schema-for-csv_format) 查看 `csv_format` 的详细信息。 -3. 运行 `terraform apply` 命令创建导入任务,然后输入 `yes` 确认创建并开始导入: +3. 运行 `terraform apply` 命令以创建导入任务,然后输入 `yes` 确认创建并开始导入: ``` $ terraform apply @@ -87,7 +87,7 @@ summary: 了解如何使用导入资源管理导入任务。 tidbcloud_import.example_local: Creation complete after 6s [id=781074] ``` -4. 使用 `terraform state show tidbcloud_import.${resource-name}` 检查导入任务的状态: +4. 使用 `terraform state show tidbcloud_import.${resource-name}` 查看导入任务的状态: ``` $ terraform state show tidbcloud_import.example_local @@ -128,7 +128,7 @@ summary: 了解如何使用导入资源管理导入任务。 } ``` -5. 几分钟后使用 `terraform refresh` 更新状态: +5. 过几分钟后,使用 `terraform refresh` 更新状态: ``` $ terraform refresh && terraform state show tidbcloud_import.example_local @@ -170,7 +170,7 @@ summary: 了解如何使用导入资源管理导入任务。 } ``` - 当状态变为 `COMPLETED` 时,表示导入任务已完成。 + 当 status 变为 `COMPLETED` 时,表示导入任务已完成。 6. 使用 MySQL CLI 检查导入的数据: @@ -187,11 +187,11 @@ summary: 了解如何使用导入资源管理导入任务。 ### 创建并运行 Amazon S3 导入任务 -> **注意:** +> **Note:** > -> 要允许 TiDB Cloud 访问你 Amazon S3 存储桶中的文件,你需要先[配置 Amazon S3 访问权限](/tidb-cloud/dedicated-external-storage.md#configure-amazon-s3-access)。 +> 为了让 TiDB Cloud 访问你在 Amazon S3 存储桶中的文件,你需要先[配置 Amazon S3 访问权限](/tidb-cloud/dedicated-external-storage.md#configure-amazon-s3-access)。 -1. 创建一个 `import` 目录,然后在其中创建一个 `main.tf`。例如: +1. 创建一个 `import` 目录,并在其中创建 `main.tf` 文件。例如: ``` terraform { @@ -226,7 +226,7 @@ summary: 了解如何使用导入资源管理导入任务。 } ``` -2. 运行 `terraform apply` 命令创建导入任务,然后输入 `yes` 确认创建并开始导入: +2. 运行 `terraform apply` 命令以创建导入任务,然后输入 `yes` 确认创建并开始导入: ``` $ terraform apply @@ -245,17 +245,17 @@ summary: 了解如何使用导入资源管理导入任务。 tidbcloud_import.example_s3_parquet: Creation complete after 4s [id=781076] ``` -3. 使用 `terraform refresh` 和 `terraform state show tidbcloud_import.${resource-name}` 更新和检查导入任务的状态。 +3. 使用 `terraform refresh` 和 `terraform state show tidbcloud_import.${resource-name}` 更新并检查导入任务的状态。 ## 更新导入任务 -导入任务无法更新。 +导入任务无法被更新。 ## 删除导入任务 -对于 Terraform,删除导入任务意味着取消相应的导入资源。 +对于 Terraform,删除导入任务意味着取消对应的 import 资源。 -你无法取消 `COMPLETED` 状态的导入任务。否则,你将收到如下示例中的 `Delete Error`: +你无法取消状态为 `COMPLETED` 的导入任务。否则,你会收到如下所示的 `Delete Error`: ``` $ terraform destroy @@ -296,6 +296,6 @@ tidbcloud_import.example_local: Destruction complete after 0s Destroy complete! Resources: 1 destroyed. ``` -## 配置 +## 配置项 -请参阅[配置文档](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest/docs/resources/import)获取导入资源的所有可用配置。 +请参阅 [配置文档](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest/docs/resources/import) 获取 import 资源的所有可用配置项。 \ No newline at end of file diff --git a/tidb-cloud/terraform-use-restore-resource.md b/tidb-cloud/terraform-use-restore-resource.md index e06bc4a923144..40d25175d7dc1 100644 --- a/tidb-cloud/terraform-use-restore-resource.md +++ b/tidb-cloud/terraform-use-restore-resource.md @@ -1,30 +1,30 @@ --- -title: 使用恢复资源 -summary: 了解如何使用恢复资源。 +title: 使用 Restore 资源 +summary: 了解如何使用 restore 资源。 --- -# 使用恢复资源 +# 使用 Restore 资源 -你可以在本文档中了解如何使用 `tidbcloud_restore` 资源管理恢复任务。 +你可以在本文档中学习如何使用 `tidbcloud_restore` 资源来管理恢复任务。 -`tidbcloud_restore` 资源的功能包括以下内容: +`tidbcloud_restore` 资源的功能包括: -- 根据你的备份为 TiDB Cloud Dedicated 集群创建恢复任务。 +- 根据你的备份为 TiDB Cloud 专属集群创建恢复任务。 -## 前提条件 +## 前置条件 - [获取 TiDB Cloud Terraform Provider](/tidb-cloud/terraform-get-tidbcloud-provider.md)。 -- 备份和恢复功能不适用于 TiDB Cloud Serverless 集群。要使用恢复资源,请确保你已创建了 TiDB Cloud Dedicated 集群。 +- 备份与恢复功能不支持 TiDB Cloud Serverless 集群。要使用恢复资源,请确保你已创建 TiDB Cloud 专属集群。 ## 创建恢复任务 -创建集群备份后,你可以通过使用 `tidbcloud_restore` 资源创建恢复任务来恢复集群。 +在为集群创建备份后,你可以通过 `tidbcloud_restore` 资源创建恢复任务来恢复集群。 -> **注意:** +> **Note:** > -> 你只能从较小的节点规格恢复数据到相同或更大的节点规格。 +> 你只能将数据从较小的节点规格恢复到相同或更大的节点规格。 -1. 创建一个恢复目录并进入该目录。 +1. 为恢复任务创建一个目录并进入该目录。 2. 创建一个 `restore.tf` 文件。 @@ -70,7 +70,7 @@ summary: 了解如何使用恢复资源。 } ``` -3. 运行 `terraform apply` 命令并输入 `yes` 确认: +3. 运行 `terraform apply` 命令,并输入 `yes` 进行确认: ``` $ terraform apply @@ -133,7 +133,7 @@ summary: 了解如何使用恢复资源。 Apply complete! Resources: 1 added, 0 changed, 0 destroyed. ``` -4. 使用 `terraform state show tidbcloud_restore.${resource-name}` 命令检查恢复任务的状态: +4. 使用 `terraform state show tidbcloud_restore.${resource-name}` 命令查看恢复任务的状态: ``` $ terraform state show tidbcloud_restore.example_restore @@ -175,18 +175,18 @@ summary: 了解如何使用恢复资源。 } ``` - 你可以看到恢复任务的状态是 `PENDING`,集群的状态是 `INITIALIZING`。 + 你可以看到恢复任务的状态为 `PENDING`,集群的状态为 `INITIALIZING`。 -5. 等待几分钟。然后使用 `terraform refersh` 更新状态。 +5. 等待几分钟,然后使用 `terraform refersh` 更新状态。 -6. 在集群状态变为 `AVAILABLE` 后,恢复任务将变为 `RUNNING`,最后变为 `SUCCESS`。 +6. 当集群状态变为 `AVAILABLE` 后,恢复任务会变为 `RUNNING`,最终变为 `SUCCESS`。 -注意,恢复的集群不由 Terraform 管理。你可以通过[导入集群](/tidb-cloud/terraform-use-cluster-resource.md#import-a-cluster)来管理恢复的集群。 +需要注意的是,恢复后的集群不会被 Terraform 管理。你可以通过[导入集群](/tidb-cloud/terraform-use-cluster-resource.md#import-a-cluster)来管理恢复后的集群。 ## 更新恢复任务 -恢复任务无法更新。 +恢复任务无法被更新。 ## 删除恢复任务 -恢复任务无法删除。 +恢复任务无法被删除。 \ No newline at end of file diff --git a/tidb-cloud/terraform-use-serverless-branch-resource.md b/tidb-cloud/terraform-use-serverless-branch-resource.md index b2a63765ced23..71044312ccf56 100644 --- a/tidb-cloud/terraform-use-serverless-branch-resource.md +++ b/tidb-cloud/terraform-use-serverless-branch-resource.md @@ -1,36 +1,36 @@ --- -title: Use TiDB Cloud Serverless Branch Resource -summary: Learn how to use the serverless branch resource to create and modify a TiDB Cloud Serverless branch. +title: 使用 TiDB Cloud Serverless Branch 资源 +summary: 了解如何使用 serverless branch 资源来创建和修改 TiDB Cloud Serverless 分支。 --- -# Use TiDB Cloud Serverless Branch Resource +# 使用 TiDB Cloud Serverless Branch 资源 -This document describes how to manage a [TiDB Cloud Serverless branch](/tidb-cloud/branch-manage.md) using the `tidbcloud_serverless_branch` resource. +本文档介绍如何使用 `tidbcloud_serverless_branch` 资源来管理 [TiDB Cloud Serverless 分支](/tidb-cloud/branch-manage.md)。 -The features of the `tidbcloud_serverless_branch` resource include the following: +`tidbcloud_serverless_branch` 资源的功能包括: -- Create TiDB Cloud Serverless branches. -- Import TiDB Cloud Serverless branches. -- Delete TiDB Cloud Serverless branches. +- 创建 TiDB Cloud Serverless 分支。 +- 导入 TiDB Cloud Serverless 分支。 +- 删除 TiDB Cloud Serverless 分支。 > **Note:** > -> TiDB Cloud Serverless branch resource cannot be modified. If you want to change the configuration of a serverless branch resource, you need to delete the existing one and create a new one. +> TiDB Cloud Serverless branch 资源无法被修改。如果你想更改 serverless branch 资源的配置,需要先删除现有资源,再创建一个新的资源。 -## Prerequisites +## 前置条件 -- [Get TiDB Cloud Terraform Provider](/tidb-cloud/terraform-get-tidbcloud-provider.md) v0.4.0 or later. -- [Create a TiDB Cloud Serverless cluster](/tidb-cloud/create-tidb-cluster-serverless.md). +- [获取 TiDB Cloud Terraform Provider](/tidb-cloud/terraform-get-tidbcloud-provider.md) v0.4.0 或更高版本。 +- [创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md)。 -## Create a TiDB Cloud Serverless branch +## 创建 TiDB Cloud Serverless 分支 -You can create a TiDB Cloud Serverless branch using the `tidbcloud_serverless_branch` resource. +你可以使用 `tidbcloud_serverless_branch` 资源来创建 TiDB Cloud Serverless 分支。 -The following example shows how to create a TiDB Cloud Serverless branch. +以下示例展示了如何创建一个 TiDB Cloud Serverless 分支。 -1. Create a directory for the branch and enter it. +1. 为分支创建一个目录并进入该目录。 -2. Create a `branch.tf` file: +2. 创建一个 `branch.tf` 文件: ``` terraform { @@ -53,14 +53,14 @@ The following example shows how to create a TiDB Cloud Serverless branch. } ``` - Use the `resource` block to define the resource of TiDB Cloud, including the resource type, resource name, and resource details. + 使用 `resource` 块来定义 TiDB Cloud 的资源,包括资源类型、资源名称和资源详情。 - - To use the serverless branch resource, set the resource type as `tidbcloud_serverless_branch`. - - For the resource name, you can define it as needed. For example, `example`. - - For the resource details, you can configure them according to the serverless branch specification information. - - To get the serverless branch specification information, see [tidbcloud_serverless_branch (Resource)](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest/docs/resources/serverless_branch). + - 要使用 serverless branch 资源,需要将资源类型设置为 `tidbcloud_serverless_branch`。 + - 资源名称可以根据需要自定义,例如 `example`。 + - 资源详情可以根据 serverless branch 规范信息进行配置。 + - 获取 serverless branch 规范信息,请参见 [tidbcloud_serverless_branch (Resource)](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest/docs/resources/serverless_branch)。 -3. Run the `terraform apply` command. It is not recommended to use `terraform apply --auto-approve` when you apply a resource. +3. 运行 `terraform apply` 命令。在应用资源时,不建议使用 `terraform apply --auto-approve`。 ```shell $ terraform apply @@ -96,13 +96,13 @@ The following example shows how to create a TiDB Cloud Serverless branch. Enter a value: ``` - In the preceding result, Terraform generates an execution plan for you, which describes the actions that Terraform will take: + 在上述结果中,Terraform 为你生成了一个执行计划,描述了 Terraform 将要执行的操作: - - You can check the differences between the configurations and the states. - - You can also see the results of this `apply`. It will add a new resource, and no resource will be changed or destroyed. - - `known after apply` indicates that you will get the corresponding value after `apply`. + - 你可以检查配置与当前状态之间的差异。 + - 你还可以看到本次 `apply` 的结果。它将新增一个资源,不会有资源被更改或销毁。 + - `known after apply` 表示在 `apply` 之后你将获得对应的值。 -4. If everything in your plan looks fine, type `yes` to continue: +4. 如果你的计划内容没有问题,输入 `yes` 继续: ```shell Do you want to perform these actions? @@ -118,7 +118,7 @@ The following example shows how to create a TiDB Cloud Serverless branch. Apply complete! Resources: 1 added, 0 changed, 0 destroyed. ``` -5. Use the `terraform show` or `terraform state show tidbcloud_serverless_branch.${resource-name}` command to inspect the state of your resource. The former command shows the states of all resources and data sources. +5. 使用 `terraform show` 或 `terraform state show tidbcloud_serverless_branch.${resource-name}` 命令来查看你的资源状态。前者会显示所有资源和数据源的状态。 ```shell $ terraform state show tidbcloud_serverless_branch.example @@ -158,15 +158,15 @@ The following example shows how to create a TiDB Cloud Serverless branch. } ``` -## Import a TiDB Cloud Serverless branch +## 导入 TiDB Cloud Serverless 分支 -For a TiDB Cloud Serverless branch that is not managed by Terraform, you can use Terraform to manage it just by importing it. +对于未被 Terraform 管理的 TiDB Cloud Serverless 分支,你可以通过导入的方式让 Terraform 管理它。 -Import a TiDB Cloud Serverless branch that is not created by Terraform as follows: +导入一个非 Terraform 创建的 TiDB Cloud Serverless 分支,操作如下: -1. Add an import block for the new TiDB Cloud Serverless branch resource. +1. 为新的 TiDB Cloud Serverless branch 资源添加一个 import 块。 - Add the following import block to your `.tf` file, replace `example` with a desired resource name, and replace `${id}` with the format of `cluster_id,branch_id`: + 在你的 `.tf` 文件中添加如下 import 块,将 `example` 替换为你期望的资源名称,将 `${id}` 替换为 `cluster_id,branch_id` 的格式: ``` import { @@ -175,21 +175,21 @@ Import a TiDB Cloud Serverless branch that is not created by Terraform as follow } ``` -2. Generate the new configuration file. +2. 生成新的配置文件。 - Generate the new configuration file for the new TiDB Cloud Serverless branch resource according to the import block: + 根据 import 块为新的 TiDB Cloud Serverless branch 资源生成新的配置文件: ```shell terraform plan -generate-config-out=generated.tf ``` - Do not specify an existing `.tf` filename in the preceding command. Otherwise, Terraform will return an error. + 在上述命令中不要指定已存在的 `.tf` 文件名,否则 Terraform 会返回错误。 -3. Review and apply the generated configuration. +3. 审查并应用生成的配置。 - Review the generated configuration file to ensure that it meets your needs. Optionally, you can move the contents of this file to your preferred location. + 审查生成的配置文件,确保其符合你的需求。你也可以选择将该文件内容移动到你喜欢的位置。 - Then, run `terraform apply` to import your infrastructure. After applying, the example output is as follows: + 然后,运行 `terraform apply` 来导入你的基础设施。应用后,示例输出如下: ```shell tidbcloud_serverless_branch.example: Importing... @@ -198,11 +198,11 @@ Import a TiDB Cloud Serverless branch that is not created by Terraform as follow Apply complete! Resources: 1 imported, 0 added, 0 changed, 0 destroyed. ``` -Now you can manage the imported branch with Terraform. +现在你可以使用 Terraform 管理已导入的分支。 -## Delete a TiDB Cloud Serverless branch +## 删除 TiDB Cloud Serverless 分支 -To delete a TiDB Cloud Serverless branch, you can delete the configuration of the `tidbcloud_serverless_branch` resource, then use the `terraform apply` command to destroy the resource: +要删除 TiDB Cloud Serverless 分支,你可以删除 `tidbcloud_serverless_branch` 资源的配置,然后使用 `terraform apply` 命令销毁该资源: ```shell $ terraform apply @@ -263,8 +263,8 @@ tidbcloud_serverless_branch.example: Destruction complete after 1s Apply complete! Resources: 0 added, 0 changed, 1 destroyed. ``` -Now, if you run the `terraform show` command, it will show no managed resources because the resource has been cleared: +现在,如果你运行 `terraform show` 命令,将不会显示任何被管理的资源,因为该资源已被清除: ``` $ terraform show -``` +``` \ No newline at end of file diff --git a/tidb-cloud/terraform-use-serverless-cluster-resource.md b/tidb-cloud/terraform-use-serverless-cluster-resource.md index 9ddfb0a15b592..1382b6fba9191 100644 --- a/tidb-cloud/terraform-use-serverless-cluster-resource.md +++ b/tidb-cloud/terraform-use-serverless-cluster-resource.md @@ -1,32 +1,32 @@ --- -title: Use TiDB Cloud Serverless Cluster Resource -summary: Learn how to use the TiDB Cloud Serverless cluster resource to create and modify a TiDB Cloud Serverless cluster. +title: 使用 TiDB Cloud Serverless 集群资源 +summary: 了解如何使用 TiDB Cloud Serverless 集群资源来创建和修改 TiDB Cloud Serverless 集群。 --- -# Use TiDB Cloud Serverless Cluster Resource +# 使用 TiDB Cloud Serverless 集群资源 -This document describes how to manage a [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) cluster with the `tidbcloud_serverless_cluster` resource. +本文档介绍如何使用 `tidbcloud_serverless_cluster` 资源管理 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。 -In addition, you will also learn how to get the necessary information with the `tidbcloud_projects` data source. +此外,你还将学习如何通过 `tidbcloud_projects` 数据源获取所需的信息。 -The features of the `tidbcloud_serverless_cluster` resource include the following: +`tidbcloud_serverless_cluster` 资源的功能包括: -- Create TiDB Cloud Serverless clusters. -- Modify TiDB Cloud Serverless clusters. -- Import TiDB Cloud Serverless clusters. -- Delete TiDB Cloud Serverless clusters. +- 创建 TiDB Cloud Serverless 集群。 +- 修改 TiDB Cloud Serverless 集群。 +- 导入 TiDB Cloud Serverless 集群。 +- 删除 TiDB Cloud Serverless 集群。 -## Prerequisites +## 前置条件 -- [Get TiDB Cloud Terraform Provider](/tidb-cloud/terraform-get-tidbcloud-provider.md) v0.4.0 or later. +- [获取 TiDB Cloud Terraform Provider](/tidb-cloud/terraform-get-tidbcloud-provider.md) v0.4.0 或更高版本。 -## Get project IDs using the `tidbcloud_projects` data source +## 使用 `tidbcloud_projects` 数据源获取项目 ID -Each TiDB cluster belongs to a project. Before creating a TiDB Cloud Serverless cluster, you need to obtain the ID of the project where you want to create the cluster. If no `project_id` is specified, the default project will be used. +每个 TiDB 集群都属于一个项目。在创建 TiDB Cloud Serverless 集群之前,你需要获取要创建集群的项目 ID。如果未指定 `project_id`,则会使用默认项目。 -To retrieve the information about all available projects, use the `tidbcloud_projects` data source as follows: +要检索所有可用项目的信息,可以按如下方式使用 `tidbcloud_projects` 数据源: -1. In the `main.tf` file created when you [Get TiDB Cloud Terraform Provider](/tidb-cloud/terraform-get-tidbcloud-provider.md), add the `data` and `output` blocks as follows: +1. 在你 [获取 TiDB Cloud Terraform Provider](/tidb-cloud/terraform-get-tidbcloud-provider.md) 时创建的 `main.tf` 文件中,添加如下的 `data` 和 `output` 块: ``` terraform { @@ -52,21 +52,21 @@ To retrieve the information about all available projects, use the `tidbcloud_pro } ``` - - Use the `data` block to define the data source of TiDB Cloud, including the data source type and the data source name. + - 使用 `data` 块定义 TiDB Cloud 的数据源,包括数据源类型和数据源名称。 - - To use the projects data source, set the data source type as `tidbcloud_projects`. - - For the data source name, you can define it as needed. For example, `"example_project"`. - - For the `tidbcloud_projects` data source, you can use the `page` and `page_size` attributes to limit the maximum number of projects you want to check. + - 若要使用项目数据源,将数据源类型设置为 `tidbcloud_projects`。 + - 数据源名称可以根据需要自定义,例如 `"example_project"`。 + - 对于 `tidbcloud_projects` 数据源,可以使用 `page` 和 `page_size` 属性限制你想要查看的最大项目数量。 - - Use the `output` block to define the data source information to be displayed in the output, and expose the information for other Terraform configurations to use. + - 使用 `output` 块定义要在输出中显示的数据源信息,并将信息暴露给其他 Terraform 配置使用。 - The `output` block works similarly to returned values in programming languages. See [Terraform documentation](https://www.terraform.io/language/values/outputs) for more details. + `output` 块的作用类似于编程语言中的返回值。更多详情请参见 [Terraform 文档](https://www.terraform.io/language/values/outputs)。 - To get all the available configurations for the resources and data sources, see the [Terraform provider configuration documentation](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest/docs). + 要获取所有资源和数据源的可用配置,请参见 [Terraform provider 配置文档](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest/docs)。 -2. Run the `terraform apply` command to apply the configurations. You need to type `yes` at the confirmation prompt to proceed. +2. 运行 `terraform apply` 命令以应用配置。你需要在确认提示时输入 `yes` 以继续。 - To skip the prompt, use `terraform apply --auto-approve`: + 若要跳过提示,可以使用 `terraform apply --auto-approve`: ```shell $ terraform apply --auto-approve @@ -117,17 +117,17 @@ To retrieve the information about all available projects, use the `tidbcloud_pro ]) ``` -Now, you can get all the available projects from the output. Copy one of the project IDs that you need. +现在,你可以从输出中获取所有可用项目。复制你需要的项目 ID。 -## Create a TiDB Cloud Serverless cluster +## 创建 TiDB Cloud Serverless 集群 -You can create a TiDB Cloud Serverless cluster using the `tidbcloud_serverless_cluster` resource. +你可以使用 `tidbcloud_serverless_cluster` 资源来创建 TiDB Cloud Serverless 集群。 -The following example shows how to create a TiDB Cloud Serverless cluster. +以下示例展示了如何创建一个 TiDB Cloud Serverless 集群。 -1. Create a directory for the cluster and enter it. +1. 为集群创建一个目录并进入该目录。 -2. Create a `cluster.tf` file: +2. 创建一个 `cluster.tf` 文件: ``` terraform { @@ -155,14 +155,14 @@ The following example shows how to create a TiDB Cloud Serverless cluster. } ``` - Use the `resource` block to define the resource of TiDB Cloud, including the resource type, resource name, and resource details. + 使用 `resource` 块定义 TiDB Cloud 的资源,包括资源类型、资源名称和资源详情。 - - To use the TiDB Cloud Serverless cluster resource, set the resource type as `tidbcloud_serverless_cluster`. - - For the resource name, you can define it as needed. For example, `example`. - - For the resource details, you can configure them according to the Project ID and the TiDB Cloud Serverless cluster specification information. - - To get the TiDB Cloud Serverless cluster specification information, see [tidbcloud_serverless_cluster (Resource)](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest/docs/resources/serverless_cluster). + - 若要使用 TiDB Cloud Serverless 集群资源,将资源类型设置为 `tidbcloud_serverless_cluster`。 + - 资源名称可以根据需要自定义,例如 `example`。 + - 资源详情可以根据项目 ID 及 TiDB Cloud Serverless 集群的规格信息进行配置。 + - 获取 TiDB Cloud Serverless 集群规格信息,请参见 [tidbcloud_serverless_cluster (Resource)](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest/docs/resources/serverless_cluster)。 -3. Run the `terraform apply` command. It is not recommended to use `terraform apply --auto-approve` when you apply a resource. +3. 运行 `terraform apply` 命令。应用资源时不建议使用 `terraform apply --auto-approve`。 ```shell $ terraform apply @@ -208,13 +208,13 @@ The following example shows how to create a TiDB Cloud Serverless cluster. Enter a value: ``` - In the preceding result, Terraform generates an execution plan for you, which describes the actions that Terraform will take: + 在上述结果中,Terraform 为你生成了一个执行计划,描述了 Terraform 将要执行的操作: - - You can check the differences between the configurations and the states. - - You can also see the results of this `apply`. It will add a new resource, and no resource will be changed or destroyed. - - `known after apply` indicates that you will get the corresponding value after `apply`. + - 你可以检查配置与状态之间的差异。 + - 你还可以看到本次 `apply` 的结果。它将新增一个资源,不会有资源被更改或销毁。 + - `known after apply` 表示你将在 `apply` 后获得对应的值。 -4. If everything in your plan looks fine, type `yes` to continue: +4. 如果你的计划没有问题,输入 `yes` 继续: ```shell Do you want to perform these actions? @@ -229,7 +229,7 @@ The following example shows how to create a TiDB Cloud Serverless cluster. Apply complete! Resources: 1 added, 0 changed, 0 destroyed. ``` -5. Use the `terraform show` or `terraform state show tidbcloud_serverless_cluster.${resource-name}` command to inspect the state of your resource. The former command shows the states of all resources and data sources. +5. 使用 `terraform show` 或 `terraform state show tidbcloud_serverless_cluster.${resource-name}` 命令检查资源的状态。前者会显示所有资源和数据源的状态。 ```shell $ terraform state show tidbcloud_serverless_cluster.example @@ -289,16 +289,16 @@ The following example shows how to create a TiDB Cloud Serverless cluster. } ``` -## Modify a TiDB Cloud Serverless cluster +## 修改 TiDB Cloud Serverless 集群 -For a TiDB Cloud Serverless cluster, you can use Terraform to manage resources. The arguments that you can modify include: +对于 TiDB Cloud Serverless 集群,你可以使用 Terraform 管理资源。可修改的参数包括: -- `display_name`: The display name of the cluster. -- `spending_limit`: The spending limit of the cluster. -- `endpoints.public.disabled`: Whether to disable the public endpoint. -- `automated_backup_policy.start_time`: The UTC time of day in `HH:mm` format when the automated backup starts. +- `display_name`:集群的显示名称。 +- `spending_limit`:集群的消费上限。 +- `endpoints.public.disabled`:是否禁用公网连接。 +- `automated_backup_policy.start_time`:自动备份开始的 UTC 时间,格式为 `HH:mm`。 -To modify a TiDB Cloud Serverless cluster, you can modify the configuration of the `tidbcloud_serverless_cluster` resource, then use the `terraform apply` command to apply the changes. For example, you can modify the `display_name` and `spending_limit` as follows: +要修改 TiDB Cloud Serverless 集群,可以修改 `tidbcloud_serverless_cluster` 资源的配置,然后使用 `terraform apply` 命令应用更改。例如,你可以如下修改 `display_name` 和 `spending_limit`: ``` resource "tidbcloud_serverless_cluster" "example" { @@ -313,7 +313,7 @@ resource "tidbcloud_serverless_cluster" "example" { } ``` -Then, run the `terraform apply` command to apply the changes: +然后,运行 `terraform apply` 命令应用更改: ```shell $ terraform apply @@ -359,7 +359,7 @@ tidbcloud_serverless_cluster.example: Modifications complete after 8s Apply complete! Resources: 0 added, 1 changed, 0 destroyed. ``` -Then, you can use the `terraform show` or `terraform state show tidbcloud_serverless_cluster.${resource-name}` command to inspect the state of your resource. The former command shows the states of all resources and data sources. +然后,你可以使用 `terraform show` 或 `terraform state show tidbcloud_serverless_cluster.${resource-name}` 命令检查资源的状态。前者会显示所有资源和数据源的状态。 ```shell $ terraform state show tidbcloud_serverless_cluster.example @@ -418,15 +418,15 @@ resource "tidbcloud_serverless_cluster" "example" { } ``` -## Import a TiDB Cloud Serverless cluster +## 导入 TiDB Cloud Serverless 集群 -For a TiDB Cloud Serverless cluster that is not managed by Terraform, you can use Terraform to manage it just by importing it. +对于未被 Terraform 管理的 TiDB Cloud Serverless 集群,你可以通过导入的方式让 Terraform 管理它。 -Import a TiDB Cloud Serverless cluster that is not created by Terraform as follows: +导入未由 Terraform 创建的 TiDB Cloud Serverless 集群,操作如下: -1. Add an import block for the new TiDB Cloud Serverless cluster resource. +1. 为新的 TiDB Cloud Serverless 集群资源添加 import 块。 - Add the following import block to your `.tf` file, replace `example` with a desired resource name, and replace `${id}` with the cluster ID: + 在你的 `.tf` 文件中添加如下 import 块,将 `example` 替换为你想要的资源名称,将 `${id}` 替换为集群 ID: ``` import { @@ -435,21 +435,21 @@ Import a TiDB Cloud Serverless cluster that is not created by Terraform as follo } ``` -2. Generate the new configuration file. +2. 生成新的配置文件。 - Generate the new configuration file for the new TiDB Cloud Serverless cluster resource according to the import block: + 根据 import 块为新的 TiDB Cloud Serverless 集群资源生成新的配置文件: ```shell terraform plan -generate-config-out=generated.tf ``` - Do not specify an existing `.tf` filename in the preceding command. Otherwise, Terraform will return an error. + 上述命令中不要指定已存在的 `.tf` 文件名,否则 Terraform 会返回错误。 -3. Review and apply the generated configuration. +3. 审查并应用生成的配置。 - Review the generated configuration file to ensure that it meets your needs. Optionally, you can move the contents of this file to your preferred location. + 审查生成的配置文件,确保其符合你的需求。你也可以选择将该文件内容移动到你喜欢的位置。 - Then, run `terraform apply` to import your infrastructure. After applying, the example output is as follows: + 然后,运行 `terraform apply` 导入你的基础设施。应用后,示例输出如下: ```shell tidbcloud_serverless_cluster.example: Importing... @@ -458,11 +458,11 @@ Import a TiDB Cloud Serverless cluster that is not created by Terraform as follo Apply complete! Resources: 1 imported, 0 added, 0 changed, 0 destroyed. ``` -Now you can manage the imported cluster with Terraform. +现在你可以使用 Terraform 管理已导入的集群。 -## Delete a TiDB Cloud Serverless cluster +## 删除 TiDB Cloud Serverless 集群 -To delete a TiDB Cloud Serverless cluster, you can delete the configuration of the `tidbcloud_serverless_cluster` resource, then use the `terraform apply` command to destroy the resource: +要删除 TiDB Cloud Serverless 集群,可以删除 `tidbcloud_serverless_cluster` 资源的配置,然后使用 `terraform apply` 命令销毁该资源: ```shell $ terraform apply @@ -542,8 +542,8 @@ tidbcloud_serverless_cluster.example: Destruction complete after 1s Apply complete! Resources: 0 added, 0 changed, 1 destroyed. ``` -Now, if you run the `terraform show` command, it will show no managed resources because the resource has been cleared: +现在,如果你运行 `terraform show` 命令,将不会显示任何受管资源,因为该资源已被清除: ``` $ terraform show -``` +``` \ No newline at end of file diff --git a/tidb-cloud/terraform-use-serverless-export-resource.md b/tidb-cloud/terraform-use-serverless-export-resource.md index 2c2f382a14273..e4b72afe50edc 100644 --- a/tidb-cloud/terraform-use-serverless-export-resource.md +++ b/tidb-cloud/terraform-use-serverless-export-resource.md @@ -1,36 +1,36 @@ --- -title: Use TiDB Cloud Serverless Export Resource -summary: Learn how to use the TiDB Cloud Serverless export resource to create and modify a TiDB Cloud Serverless export task. +title: 使用 TiDB Cloud Serverless Export 资源 +summary: 了解如何使用 TiDB Cloud Serverless export 资源来创建和修改 TiDB Cloud Serverless 导出任务。 --- -# Use TiDB Cloud Serverless Export Resource +# 使用 TiDB Cloud Serverless Export 资源 -This document describes how to manage a [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) data export task using the `tidbcloud_serverless_export` resource. +本文档介绍了如何使用 `tidbcloud_serverless_export` 资源管理 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 数据导出任务。 -The features of the `tidbcloud_serverless_export` resource include the following: +`tidbcloud_serverless_export` 资源的功能包括: -- Create TiDB Cloud Serverless data export tasks. -- Import TiDB Cloud Serverless data export tasks. -- Delete TiDB Cloud Serverless data export tasks. +- 创建 TiDB Cloud Serverless 数据导出任务。 +- 导入 TiDB Cloud Serverless 数据导出任务。 +- 删除 TiDB Cloud Serverless 数据导出任务。 > **Note:** > -> TiDB Cloud Serverless export resource cannot be modified. If you want to change the configuration of a TiDB Cloud Serverless export resource, you need to delete the existing one, and then create a new one. +> TiDB Cloud Serverless export 资源无法被修改。如果你想更改 TiDB Cloud Serverless export 资源的配置,需要先删除现有资源,然后重新创建一个新的资源。 -## Prerequisites +## 前置条件 -- [Get TiDB Cloud Terraform Provider](/tidb-cloud/terraform-get-tidbcloud-provider.md) v0.4.0 or later. -- [Create a TiDB Cloud Serverless cluster](/tidb-cloud/create-tidb-cluster-serverless.md). +- [获取 TiDB Cloud Terraform Provider](/tidb-cloud/terraform-get-tidbcloud-provider.md) v0.4.0 或更高版本。 +- [创建一个 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md)。 -## Create a TiDB Cloud Serverless data export task +## 创建 TiDB Cloud Serverless 数据导出任务 -You can create a TiDB Cloud Serverless data export task using the `tidbcloud_serverless_export` resource. +你可以使用 `tidbcloud_serverless_export` 资源来创建 TiDB Cloud Serverless 数据导出任务。 -The following example shows how to create a TiDB Cloud Serverless data export task. +以下示例展示了如何创建一个 TiDB Cloud Serverless 数据导出任务。 -1. Create a directory for the export and enter it. +1. 为导出任务创建一个目录并进入该目录。 -2. Create a `export.tf` file: +2. 创建一个 `export.tf` 文件: ``` terraform { @@ -51,14 +51,14 @@ The following example shows how to create a TiDB Cloud Serverless data export ta } ``` - Use the `resource` block to define the resource of TiDB Cloud, including the resource type, resource name, and resource details. + 使用 `resource` 块来定义 TiDB Cloud 的资源,包括资源类型、资源名称和资源详情。 - - To use the serverless export resource, set the resource type as `tidbcloud_serverless_export`. - - For the resource name, you can define it as needed. For example, `example`. - - For the resource details, you can configure them according to the serverless export specification information. - - To get the serverless export specification information, see [tidbcloud_serverless_export (Resource)](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest/docs/resources/serverless_export). + - 要使用 serverless export 资源,需要将资源类型设置为 `tidbcloud_serverless_export`。 + - 资源名称可以根据需要自定义,例如 `example`。 + - 资源详情可以根据 serverless export 规范信息进行配置。 + - 获取 serverless export 规范信息,请参见 [tidbcloud_serverless_export (Resource)](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest/docs/resources/serverless_export)。 -3. Run the `terraform apply` command. It is not recommended to use `terraform apply --auto-approve` when you apply a resource. +3. 运行 `terraform apply` 命令。应用资源时,不推荐使用 `terraform apply --auto-approve`。 ```shell $ terraform apply @@ -94,13 +94,13 @@ The following example shows how to create a TiDB Cloud Serverless data export ta Enter a value: ``` - In the preceding result, Terraform generates an execution plan for you, which describes the actions that Terraform will take: + 在上述结果中,Terraform 为你生成了一个执行计划,描述了 Terraform 将要执行的操作: - - You can check the difference between the configurations and the states. - - You can also see the results of this `apply`. It will add a new resource, and no resource will be changed or destroyed. - - `known after apply` indicates that you will get the corresponding value after `apply`. + - 你可以检查配置和状态之间的差异。 + - 你还可以看到本次 `apply` 的结果。它将新增一个资源,不会有资源被更改或销毁。 + - `known after apply` 表示你将在 `apply` 之后获得对应的值。 -4. If everything in your plan looks fine, type `yes` to continue: +4. 如果你的计划内容没有问题,输入 `yes` 继续: ```shell Do you want to perform these actions? @@ -115,11 +115,11 @@ The following example shows how to create a TiDB Cloud Serverless data export ta Apply complete! Resources: 1 added, 0 changed, 0 destroyed. ``` - In this example, the `tidbcloud_serverless_export.example` resource will create an export task to export data from the entire cluster. - - This resource is not synchronized. You can use `terraform refresh` to retrieve its latest state. + 在本示例中,`tidbcloud_serverless_export.example` 资源将创建一个导出任务,用于导出整个集群的数据。 -5. Use the `terraform show` or `terraform state show tidbcloud_serverless_export.${resource-name}` command to inspect the state of your resource. The former command shows the states of all resources and data sources. + 该资源是非同步的。你可以使用 `terraform refresh` 获取其最新状态。 + +5. 使用 `terraform show` 或 `terraform state show tidbcloud_serverless_export.${resource-name}` 命令检查你的资源状态。前者会显示所有资源和数据源的状态。 ```shell $ terraform state show tidbcloud_serverless_export.example @@ -142,15 +142,15 @@ The following example shows how to create a TiDB Cloud Serverless data export ta } ``` -## Import a TiDB Cloud Serverless data export task +## 导入 TiDB Cloud Serverless 数据导出任务 -For a TiDB Serverless data export task that is not managed by Terraform, you can use Terraform to manage it just by importing it. +对于未被 Terraform 管理的 TiDB Serverless 数据导出任务,你可以通过导入的方式让 Terraform 管理它。 -Import a TiDB Cloud Serverless data export task that is not created by Terraform as follows: +导入一个非 Terraform 创建的 TiDB Cloud Serverless 数据导出任务,操作如下: -1. Add an import block for the new TiDB Cloud Serverless export resource. +1. 为新的 TiDB Cloud Serverless export 资源添加一个 import 块。 - Add the following import block to your `.tf` file, replace `example` with a desired resource name, and replace `${id}` with the format of `cluster_id,export_id`: + 在你的 `.tf` 文件中添加如下 import 块,将 `example` 替换为你期望的资源名称,将 `${id}` 替换为 `cluster_id,export_id` 的格式: ``` import { @@ -159,21 +159,21 @@ Import a TiDB Cloud Serverless data export task that is not created by Terraform } ``` -2. Generate the new configuration file. +2. 生成新的配置文件。 - Generate the new configuration file for the new serverless export resource according to the import block: + 根据 import 块为新的 serverless export 资源生成新的配置文件: ```shell terraform plan -generate-config-out=generated.tf ``` - Do not specify an existing `.tf` filename in the preceding command. Otherwise, Terraform will return an error. + 上述命令中不要指定已存在的 `.tf` 文件名,否则 Terraform 会返回错误。 -3. Review and apply the generated configuration. +3. 审查并应用生成的配置。 - Review the generated configuration file to ensure that it meets your needs. Optionally, you can move the contents of this file to your preferred location. + 审查生成的配置文件,确保其符合你的需求。你也可以选择将该文件内容移动到你喜欢的位置。 - Then, run `terraform apply` to import your infrastructure. After applying, the example output is as follows: + 然后,运行 `terraform apply` 导入你的基础设施。应用后,示例输出如下: ```shell tidbcloud_serverless_export.example: Importing... @@ -182,11 +182,11 @@ Import a TiDB Cloud Serverless data export task that is not created by Terraform Apply complete! Resources: 1 imported, 0 added, 0 changed, 0 destroyed. ``` -Now you can manage the imported export with Terraform. +现在你可以使用 Terraform 管理已导入的导出任务。 -## Delete a TiDB Cloud Serverless data export task +## 删除 TiDB Cloud Serverless 数据导出任务 -To delete a TiDB Cloud Serverless data export task, you can delete the configuration of the `tidbcloud_serverless_export` resource, then use the `terraform apply` command to destroy the resource: +要删除 TiDB Cloud Serverless 数据导出任务,你可以删除 `tidbcloud_serverless_export` 资源的配置,然后使用 `terraform apply` 命令销毁该资源: ```shell $ terraform apply @@ -230,8 +230,8 @@ tidbcloud_serverless_export.example: Destruction complete after 2s Apply complete! Resources: 0 added, 0 changed, 1 destroyed. ``` -Now, if you run the `terraform show` command, it will show no managed resources because the resource has been cleared: +现在,如果你运行 `terraform show` 命令,将不会显示任何被管理的资源,因为该资源已被清除: ``` $ terraform show -``` +``` \ No newline at end of file diff --git a/tidb-cloud/terraform-use-sql-user-resource.md b/tidb-cloud/terraform-use-sql-user-resource.md index 8a8103189c7a9..643b8999696ea 100644 --- a/tidb-cloud/terraform-use-sql-user-resource.md +++ b/tidb-cloud/terraform-use-sql-user-resource.md @@ -1,33 +1,33 @@ --- -title: Use SQL User Resource -summary: Learn how to use the SQL user resource to create and modify a TiDB Cloud SQL user. +title: 使用 SQL 用户资源 +summary: 了解如何使用 SQL 用户资源在 TiDB Cloud 中创建和修改 SQL 用户。 --- -# Use SQL User Resource +# 使用 SQL 用户资源 -This document describes how to manage TiDB Cloud SQL users using the `tidbcloud_sql_user` resource. +本文档介绍如何使用 `tidbcloud_sql_user` 资源管理 TiDB Cloud SQL 用户。 -The features of the `tidbcloud_sql_user` resource include the following: +`tidbcloud_sql_user` 资源的功能包括: -- Create TiDB Cloud SQL users. -- Modify TiDB Cloud SQL users. -- Import TiDB Cloud SQL users. -- Delete TiDB Cloud SQL users. +- 创建 TiDB Cloud SQL 用户。 +- 修改 TiDB Cloud SQL 用户。 +- 导入 TiDB Cloud SQL 用户。 +- 删除 TiDB Cloud SQL 用户。 -## Prerequisites +## 前置条件 -- [Get TiDB Cloud Terraform Provider](/tidb-cloud/terraform-get-tidbcloud-provider.md) v0.4.0 or later. -- [Create a TiDB Cloud Dedicated cluster](/tidb-cloud/create-tidb-cluster.md) or [a TiDB Cloud Serverless cluster](/tidb-cloud/create-tidb-cluster-serverless.md). +- [获取 TiDB Cloud Terraform Provider](/tidb-cloud/terraform-get-tidbcloud-provider.md) v0.4.0 或更高版本。 +- [创建 TiDB Cloud 专属集群](/tidb-cloud/create-tidb-cluster.md) 或 [创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md)。 -## Create a SQL user +## 创建 SQL 用户 -You can create a SQL user using the `tidbcloud_sql_user` resource. +你可以使用 `tidbcloud_sql_user` 资源来创建 SQL 用户。 -The following example shows how to create a TiDB Cloud SQL user. +以下示例展示了如何创建一个 TiDB Cloud SQL 用户。 -1. Create a directory for the SQL user and enter it. +1. 为 SQL 用户创建一个目录并进入该目录。 -2. Create a `sql_user.tf` file: +2. 创建一个 `sql_user.tf` 文件: ``` terraform { @@ -51,14 +51,14 @@ The following example shows how to create a TiDB Cloud SQL user. } ``` - Use the `resource` block to define the resource of TiDB Cloud, including the resource type, resource name, and resource details. + 使用 `resource` 块定义 TiDB Cloud 的资源,包括资源类型、资源名称和资源详情。 - - To use the SQL user resource, set the resource type as `tidbcloud_sql_user`. - - For the resource name, you can define it as needed. For example, `example`. - - For SQL users in the TiDB Cloud Serverless cluster, the `user_name` and builtin role `role_readonly` and `role_readwrite` must start with the user prefix, you can get the user prefix by running the `tidbcloud_serverless_cluster` data source. - - To get the SQL user specification information, see [`tidbcloud_sql_user` (Resource)](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest/docs/resources/sql_user). + - 要使用 SQL 用户资源,需要将资源类型设置为 `tidbcloud_sql_user`。 + - 资源名称可以根据需要自定义,例如 `example`。 + - 对于 TiDB Cloud Serverless 集群中的 SQL 用户,`user_name` 以及内置角色 `role_readonly` 和 `role_readwrite` 必须以用户前缀开头,你可以通过运行 `tidbcloud_serverless_cluster` 数据源获取用户前缀。 + - 获取 SQL 用户的详细配置信息,请参见 [`tidbcloud_sql_user` (Resource)](https://registry.terraform.io/providers/tidbcloud/tidbcloud/latest/docs/resources/sql_user)。 -3. Run the `terraform apply` command. It is not recommended to use `terraform apply --auto-approve` when you apply a resource. +3. 运行 `terraform apply` 命令。应用资源时,不建议使用 `terraform apply --auto-approve`。 ```shell $ terraform apply @@ -86,13 +86,13 @@ The following example shows how to create a TiDB Cloud SQL user. Enter a value: ``` - In the preceding result, Terraform generates an execution plan for you, which describes the actions Terraform will take: + 在上述结果中,Terraform 为你生成了一个执行计划,描述了 Terraform 将要执行的操作: - - You can check the differences between the configurations and the states. - - You can also see the results of this `apply`. It will add a new resource, and no resource will be changed or destroyed. - - `known after apply` indicates that you will get the corresponding value after `apply`. + - 你可以检查配置与当前状态之间的差异。 + - 你还可以看到本次 `apply` 的结果。它将新增一个资源,不会有资源被更改或销毁。 + - `known after apply` 表示你将在 `apply` 后获得对应的值。 -4. If everything in your plan looks fine, type `yes` to continue: +4. 如果你的计划内容无误,输入 `yes` 继续: ```shell Do you want to perform these actions? @@ -107,7 +107,7 @@ The following example shows how to create a TiDB Cloud SQL user. Apply complete! Resources: 1 added, 0 changed, 0 destroyed. ``` -5. Use the `terraform show` or `terraform state show tidbcloud_sql_user.${resource-name}` command to inspect the state of your resource. The former command shows the states of all resources and data sources. +5. 使用 `terraform show` 或 `terraform state show tidbcloud_sql_user.${resource-name}` 命令检查资源的状态。前者会显示所有资源和数据源的状态。 ```shell $ terraform state show tidbcloud_sql_user.example @@ -120,13 +120,13 @@ The following example shows how to create a TiDB Cloud SQL user. } ``` -## Change the password or user roles of a SQL user +## 修改 SQL 用户的密码或用户角色 -You can use Terraform to change the password or user roles of a SQL user as follows: +你可以通过 Terraform 修改 SQL 用户的密码或用户角色,方法如下: -1. In the `sql_user.tf` file that is used when you [create the SQL user](#create-a-sql-user), change the `password`, `builtin_role`, and `custom_roles` (if applicable). +1. 在你 [创建 SQL 用户](#create-a-sql-user) 时使用的 `sql_user.tf` 文件中,修改 `password`、`builtin_role` 以及(如适用)`custom_roles`。 - For example: + 例如: ``` resource "tidbcloud_sql_user" "example" { @@ -137,7 +137,7 @@ You can use Terraform to change the password or user roles of a SQL user as foll } ``` -2. Run the `terraform apply` command: +2. 运行 `terraform apply` 命令: ```shell $ terraform apply @@ -167,9 +167,9 @@ You can use Terraform to change the password or user roles of a SQL user as foll ``` - In the preceding execution plan, password and builtin role will be changed. + 在上述执行计划中,密码和内置角色将会被更改。 -3. If everything in your plan looks fine, type `yes` to continue: +3. 如果你的计划内容无误,输入 `yes` 继续: ```shell Enter a value: yes @@ -180,7 +180,7 @@ You can use Terraform to change the password or user roles of a SQL user as foll Apply complete! Resources: 0 added, 1 changed, 0 destroyed. ``` -4. Use `terraform state show tidbcloud_sql_user.${resource-name}` to check the state: +4. 使用 `terraform state show tidbcloud_sql_user.${resource-name}` 检查状态: ``` $ terraform state show tidbcloud_sql_user.example @@ -193,17 +193,17 @@ You can use Terraform to change the password or user roles of a SQL user as foll } ``` -The `builtin_role` is changed to `role_readonly`. The `password` is not shown because it is a sensitive value. +`builtin_role` 已更改为 `role_readonly`。`password` 未显示,因为它是敏感值。 -## Import a SQL user +## 导入 SQL 用户 -For a TiDB Cloud SQL user that is not managed by Terraform, you can use Terraform to manage it by importing it. +对于未被 Terraform 管理的 TiDB Cloud SQL 用户,你可以通过导入的方式让 Terraform 管理它。 -For example, you can import a SQL user that is not created by Terraform as follows: +例如,你可以按如下方式导入一个非 Terraform 创建的 SQL 用户: -1. Add an import block for the new SQL user resource +1. 为新的 SQL 用户资源添加 import 块 - Add the following import block to your `.tf` file, replace `example` with a desired resource name, and replace `${id}` with the format of `cluster_id,user_name`: + 在你的 `.tf` 文件中添加如下 import 块,将 `example` 替换为你期望的资源名称,将 `${id}` 替换为 `cluster_id,user_name` 的格式: ``` import { @@ -212,23 +212,23 @@ For example, you can import a SQL user that is not created by Terraform as follo } ``` -2. Generate the new configuration file +2. 生成新的配置文件 - Generate the new configuration file for the new SQL user resource according to the import block: + 根据 import 块为新的 SQL 用户资源生成配置文件: ```shell terraform plan -generate-config-out=generated.tf ``` - Do not specify an existing `.tf` filename in the preceding command. Otherwise, Terraform will return an error. + 上述命令中不要指定已存在的 `.tf` 文件名,否则 Terraform 会返回错误。 - Then the `generated.tf` file is created in the current directory, which contains the configuration of the imported resource. But the provider will throw an error because the required argument `password` is not set. You can replace the value of `password` argument to the `tidbcloud_sql_user` resource in the generated configuration file. + 然后,当前目录下会生成 `generated.tf` 文件,包含了被导入资源的配置信息。但由于未设置必需参数 `password`,provider 会抛出错误。你可以在生成的配置文件中为 `tidbcloud_sql_user` 资源的 `password` 参数赋值。 -3. Review and apply the generated configuration +3. 审查并应用生成的配置 - Review the generated configuration file to ensure that it meets your needs. Optionally, you can move the contents of this file to your preferred location. + 审查生成的配置文件,确保其符合你的需求。你也可以选择将该文件内容移动到你喜欢的位置。 - Then, run `terraform apply` to import your infrastructure. After applying, the example output is as follows: + 然后,运行 `terraform apply` 导入你的基础设施。应用后,示例输出如下: ```shell tidbcloud_sql_user.example: Importing... [id=10423692645600000000,example_user] @@ -237,11 +237,11 @@ For example, you can import a SQL user that is not created by Terraform as follo Apply complete! Resources: 1 imported, 0 added, 0 changed, 0 destroyed. ``` -Now you can manage the imported SQL user with Terraform. +现在你可以使用 Terraform 管理被导入的 SQL 用户。 -## Delete a SQL user +## 删除 SQL 用户 -To delete a SQL user, you can delete the configuration of the `tidbcloud_sql_user` resource, then use the `terraform apply` command to destroy the resource: +要删除 SQL 用户,你可以删除 `tidbcloud_sql_user` 资源的配置,然后使用 `terraform apply` 命令销毁该资源: ```shell $ terraform apply @@ -275,8 +275,8 @@ To delete a SQL user, you can delete the configuration of the `tidbcloud_sql_use Apply complete! Resources: 0 added, 0 changed, 1 destroyed. ``` -Now, if you run the `terraform show` command, you will get nothing because the resource has been cleared: +现在,如果你运行 `terraform show` 命令,将不会有任何输出,因为资源已被清除: ``` $ terraform show -``` +``` \ No newline at end of file diff --git a/tidb-cloud/third-party-monitoring-integrations.md b/tidb-cloud/third-party-monitoring-integrations.md index ee65d9c3174c4..aa79572f48aa0 100644 --- a/tidb-cloud/third-party-monitoring-integrations.md +++ b/tidb-cloud/third-party-monitoring-integrations.md @@ -1,45 +1,30 @@ --- -title: 第三方指标集成(Beta) +title: 第三方指标集成 summary: 了解如何使用第三方指标集成。 --- -# 第三方指标集成(Beta) +# 第三方指标集成 -你可以将 TiDB Cloud 与第三方指标服务集成,以接收 TiDB Cloud 警报并使用指标服务查看 TiDB 集群的性能指标。第三方指标集成目前处于 beta 阶段。 +你可以将 TiDB Cloud 与以下第三方指标服务集成,在这些服务中接收 TiDB Cloud 警报并查看 TiDB 集群的性能指标: -## 所需权限 +- [Datadog 集成(预览版)](#datadog-集成预览版) +- [Prometheus 和 Grafana 集成(测试版)](#prometheus-和-grafana-集成测试版) +- [New Relic 集成(预览版)](#new-relic-集成预览版) -要编辑第三方集成设置,你必须是组织的 `Organization Owner` 角色或目标项目的 `Project Owner` 角色。 +## Datadog 集成(预览版) -## 查看或修改第三方集成 +通过 Datadog 集成,你可以配置 TiDB Cloud,将关于 TiDB 集群的指标数据发送到 [Datadog](https://www.datadoghq.com/),并在你的 Datadog 仪表盘中查看这些指标。 -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到你的目标项目。 -2. 在左侧导航栏中,点击**项目设置** > **集成**。 +有关详细的集成步骤以及 Datadog 跟踪的指标列表,请参阅 [Integrate TiDB Cloud with Datadog](/tidb-cloud/monitor-datadog-integration.md)。 -此时会显示可用的第三方集成。 +## Prometheus 和 Grafana 集成(测试版) -## 限制 +通过 Prometheus 和 Grafana 集成,你可以从 TiDB Cloud 获取一个用于 Prometheus 的 `scrape_config` 文件,并使用该文件中的内容来配置 Prometheus。你可以在你的 Grafana 仪表盘中查看这些指标。 -- 对于 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群,不支持第三方指标集成。 +有关详细的集成步骤以及 Prometheus 跟踪的指标列表,请参阅 [Integrate TiDB Cloud with Prometheus and Grafana](/tidb-cloud/monitor-prometheus-and-grafana-integration.md)。 -- 当集群状态为**创建中**、**恢复中**、**已暂停**或**恢复中**时,第三方指标集成不可用。 +## New Relic 集成(预览版) -## 可用集成 +通过 New Relic 集成,你可以配置 TiDB Cloud,将关于 TiDB 集群的指标数据发送到 [New Relic](https://newrelic.com/),并在你的 New Relic 仪表盘中查看这些指标。 -### Datadog 集成(beta) - -通过 Datadog 集成,你可以配置 TiDB Cloud 将 TiDB 集群的指标数据发送到 [Datadog](https://www.datadoghq.com/),并在 Datadog 仪表板中查看这些指标。 - -有关详细的集成步骤和 Datadog 跟踪的指标列表,请参考[将 TiDB Cloud 与 Datadog 集成](/tidb-cloud/monitor-datadog-integration.md)。 - -### Prometheus 和 Grafana 集成(beta) - -通过 Prometheus 和 Grafana 集成,你可以从 TiDB Cloud 获取 Prometheus 的 `scrape_config` 文件,并使用该文件中的内容配置 Prometheus。你可以在 Grafana 仪表板中查看这些指标。 - -有关详细的集成步骤和 Prometheus 跟踪的指标列表,请参见[将 TiDB Cloud 与 Prometheus 和 Grafana 集成](/tidb-cloud/monitor-prometheus-and-grafana-integration.md)。 - -### New Relic 集成(beta) - -通过 New Relic 集成,你可以配置 TiDB Cloud 将 TiDB 集群的指标数据发送到 [New Relic](https://newrelic.com/),并在 New Relic 仪表板中查看这些指标。 - -有关详细的集成步骤和 New Relic 跟踪的指标列表,请参见[将 TiDB Cloud 与 New Relic 集成](/tidb-cloud/monitor-new-relic-integration.md)。 +有关详细的集成步骤以及 New Relic 跟踪的指标列表,请参阅 [Integrate TiDB Cloud with New Relic](/tidb-cloud/monitor-new-relic-integration.md)。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-auditlog-config.md b/tidb-cloud/ticloud-auditlog-config.md index dbf6f68ff2c76..2919ab1df12d2 100644 --- a/tidb-cloud/ticloud-auditlog-config.md +++ b/tidb-cloud/ticloud-auditlog-config.md @@ -1,61 +1,61 @@ --- title: ticloud serverless audit-log config -summary: The reference of `ticloud serverless audit-log config`. +summary: `ticloud serverless audit-log config` 的参考文档。 --- # ticloud serverless audit-log config -Configure the database audit logging for a TiDB Cloud Serverless cluster. +为 TiDB Cloud Serverless 集群配置数据库审计日志。 ```shell ticloud serverless audit-log config [flags] ``` -## Examples +## 示例 -Configure the database audit logging in interactive mode: +以交互模式配置数据库审计日志: ```shell ticloud serverless audit-log config ``` -Enable the database audit logging in non-interactive mode: +以非交互模式启用数据库审计日志: ```shell ticloud serverless audit-log config -c --enabled ``` -Disable the database audit logging in non-interactive mode: +以非交互模式禁用数据库审计日志: ```shell ticloud serverless audit-log config -c --enabled=false ``` -Unredact the database audit logging in non-interactive mode: +以非交互模式取消数据库审计日志的数据脱敏: ```shell ticloud serverless audit-log config -c --unredacted ``` -## Flags +## 参数说明 -In non-interactive mode, you need to manually enter the required flags. In interactive mode, you can just follow CLI prompts to fill them in. +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| Flag | Description | Required | Note | -|-------------------------|-----------------------------------------------------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | The ID of the cluster. | Yes | Only works in non-interactive mode. | -| --enabled | Enable or disable the database audit logging. | No | Only works in non-interactive mode. | -| --unredacted | Enable or disable data redaction in audit logs. | No | Only works in non-interactive mode. | -| -h, --help | Shows help information for this command. | No | Works in both non-interactive and interactive modes. | +| 参数 | 说明 | 是否必需 | 备注 | +|---------------------------|----------------------------------------------------------------------|----------|------------------------------------------------------| +| -c, --cluster-id string | 集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| --enabled | 启用或禁用数据库审计日志。 | 否 | 仅在非交互模式下生效。 | +| --unredacted | 启用或禁用审计日志中的数据脱敏。 | 否 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## Inherited flags +## 继承参数 -| Flag | Description | Required | Note | -|----------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | Disables color in output. | No | Only works in non-interactive mode. In interactive mode, disabling color might not work with some UI components. | -| -P, --profile string | Specifies the active [user profile](/tidb-cloud/cli-reference.md#user-profile) used in this command. | No | Works in both non-interactive and interactive modes. | -| -D, --debug | Enables debug mode. | No | Works in both non-interactive and interactive modes. | +| 参数 | 说明 | 是否必需 | 备注 | +|-----------------------|---------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | -## Feedback +## 反馈 -If you have any questions or suggestions on the TiDB Cloud CLI, feel free to create an [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose). Also, we welcome any contributions. +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-auditlog-describe.md b/tidb-cloud/ticloud-auditlog-describe.md index 0ce320858ebf4..2e1edf8a0912d 100644 --- a/tidb-cloud/ticloud-auditlog-describe.md +++ b/tidb-cloud/ticloud-auditlog-describe.md @@ -1,52 +1,52 @@ --- title: ticloud serverless audit-log describe -summary: The reference of `ticloud serverless audit-log describe`. +summary: `ticloud serverless audit-log describe` 的参考文档。 --- # ticloud serverless audit-log describe -Describe the database audit logging configuration for a TiDB Cloud Serverless cluster. +描述 TiDB Cloud Serverless 集群的数据库审计日志配置。 ```shell ticloud serverless audit-log describe [flags] ``` -Or use the following alias command: +或者使用以下别名命令: ```shell ticloud serverless audit-log get [flags] ``` -## Examples +## 示例 -Get the database audit logging configuration in interactive mode: +以交互模式获取数据库审计日志配置: ```shell ticloud serverless audit-log describe ``` -Get the database audit logging configuration in non-interactive mode: +以非交互模式获取数据库审计日志配置: ```shell ticloud serverless audit-log describe -c ``` -## Flags +## 参数说明 -In non-interactive mode, you need to manually enter the required flags. In interactive mode, you can just follow CLI prompts to fill them in. +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| Flag | Description | Required | Note | -|-------------------------|----------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | The cluster ID. | Yes | Only works in non-interactive mode. | -| -h, --help | Shows help information for this command. | No | Works in both non-interactive and interactive modes. | +| 参数 | 描述 | 是否必需 | 备注 | +|---------------------------|-----------------------------------|----------|----------------------------------------------------| +| -c, --cluster-id string | 集群 ID。 | 是 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## Inherited flags +## 继承参数 -| Flag | Description | Required | Note | -|----------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | Disables color in output. | No | Only works in non-interactive mode. In interactive mode, disabling color might not work with some UI components. | -| -D, --debug | Enables debug mode. | No | Works in both non-interactive and interactive modes. | +| 参数 | 描述 | 是否必需 | 备注 | +|-----------------------|----------------------------------------------------------------------|----------|----------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示效果。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | -## Feedback +## 反馈 -If you have any questions or suggestions on the TiDB Cloud CLI, feel free to create an [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose). Also, we welcome any contributions. \ No newline at end of file +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎在 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose) 页面提交。同时也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-auditlog-download.md b/tidb-cloud/ticloud-auditlog-download.md index e1eaf4c0e3b59..095aba9374a70 100644 --- a/tidb-cloud/ticloud-auditlog-download.md +++ b/tidb-cloud/ticloud-auditlog-download.md @@ -1,52 +1,52 @@ --- title: ticloud serverless audit-log download -summary: The reference of `ticloud serverless audit-log download`. +summary: `ticloud serverless audit-log download` 的参考文档。 --- # ticloud serverless audit-log download -Download the database audit logs from a TiDB Cloud Serverless cluster. +从 TiDB Cloud Serverless 集群下载数据库审计日志。 ```shell ticloud serverless audit-log download [flags] ``` -## Examples +## 示例 -Download the database audit logs in interactive mode: +以交互模式下载数据库审计日志: ```shell ticloud serverless audit-log download ``` -Download the database audit logs in non-interactive mode: +以非交互模式下载数据库审计日志: ```shell ticloud serverless audit-log download -c --start-date --end-date ``` -## Flags +## 参数说明 -In non-interactive mode, you need to manually enter the required flags. In interactive mode, you can just follow CLI prompts to fill them in. +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| Flag | Description | Required | Note | -|-------------------------|---------------------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | Cluster ID. | Yes | Only works in non-interactive mode. | -| --start-date string | The start date of the audit log you want to download in the format of `YYYY-MM-DD`, for example `2025-01-01`. | Yes | Only works in non-interactive mode. | -| --end-date string | The end date of the audit log you want to download in the format of `YYYY-MM-DD`, for example `2025-01-01`. | Yes | Only works in non-interactive mode. | -| --output-path string | The path where you want to download the audit logs. If not specified, logs are downloaded to the current directory. | No | Only works in non-interactive mode. | -| --concurrency int | Download concurrency (`3` by default). | No | Works in both non-interactive and interactive modes. | -| --force | Download without confirmation. | No | Works in both non-interactive and interactive modes. | -| -h, --help | Shows help information for this command. | No | Works in both non-interactive and interactive modes. | +| Flag | 描述 | 是否必需 | 备注 | +|-------------------------|--------------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| +| -c, --cluster-id string | 集群 ID。 | 是 | 仅在非交互模式下生效。 | +| --start-date string | 你想要下载的审计日志的起始日期,格式为 `YYYY-MM-DD`,例如 `2025-01-01`。 | 是 | 仅在非交互模式下生效。 | +| --end-date string | 你想要下载的审计日志的结束日期,格式为 `YYYY-MM-DD`,例如 `2025-01-01`。 | 是 | 仅在非交互模式下生效。 | +| --output-path string | 你希望下载审计日志的路径。如果未指定,日志将下载到当前目录。 | 否 | 仅在非交互模式下生效。 | +| --concurrency int | 下载并发数(默认为 `3`)。 | 否 | 在非交互和交互模式下均可用。 | +| --force | 无需确认直接下载。 | 否 | 在非交互和交互模式下均可用。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## Inherited flags +## 继承参数 -| Flag | Description | Required | Note | -|----------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | Disables color in output. | No | Only works in non-interactive mode. In interactive mode, disabling color might not work with some UI components. | -| -P, --profile string | Specifies the active [user profile](/tidb-cloud/cli-reference.md#user-profile) used in this command. | No | Works in both non-interactive and interactive modes. | -| -D, --debug | Enables debug mode. | No | Works in both non-interactive and interactive modes. | +| Flag | 描述 | 是否必需 | 备注 | +|----------------------|---------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | -## Feedback +## 反馈 -If you have any questions or suggestions on the TiDB Cloud CLI, feel free to create an [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose). Also, we welcome any contributions. +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-auditlog-filter-create.md b/tidb-cloud/ticloud-auditlog-filter-create.md index 35b5babaf816c..ffc5190fb6b59 100644 --- a/tidb-cloud/ticloud-auditlog-filter-create.md +++ b/tidb-cloud/ticloud-auditlog-filter-create.md @@ -1,61 +1,61 @@ --- title: ticloud serverless audit-log filter-rule create -summary: The reference of `ticloud serverless audit-log filter-rule create`. +summary: `ticloud serverless audit-log filter-rule create` 的参考文档。 --- # ticloud serverless audit-log filter-rule create -Create an audit log filter rule for a TiDB Cloud Serverless cluster. +为 TiDB Cloud Serverless 集群创建审计日志过滤规则。 ```shell ticloud serverless audit-log filter-rule create [flags] ``` -Or use the following alias command: +或者使用以下别名命令: ```shell ticloud serverless audit-log filter create [flags] ``` -## Examples +## 示例 -Create a filter rule in interactive mode: +以交互模式创建过滤规则: ```shell ticloud serverless audit-log filter create ``` -Create a filter rule that captures all audit logs in non-interactive mode: +以非交互模式创建捕获所有审计日志的过滤规则: ```shell ticloud serverless audit-log filter create --cluster-id --name --rule '{"users":["%@%"],"filters":[{}]}' ``` -Create a filter rule that filters `QUERY` and `EXECUTE` events for the `test.t` table and filters `QUERY` events for all tables in non-interactive mode: +以非交互模式创建过滤 `test.t` 表的 `QUERY` 和 `EXECUTE` 事件,以及过滤所有表的 `QUERY` 事件的过滤规则: ```shell ticloud serverless audit-log filter create --cluster-id --name --rule '{"users":["%@%"],"filters":[{"classes":["QUERY","EXECUTE"],"tables":["test.t"]},{"classes":["QUERY"]}]}' ``` -## Flags +## 参数 -In non-interactive mode, you need to manually enter the required flags. In interactive mode, you can just follow CLI prompts to fill them in. +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| Flag | Description | Required | Note | -|-------------------------|-------------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | The ID of the cluster. | Yes | Only works in non-interactive mode. | -| --name string | The name of the filter rule. | Yes | Only works in non-interactive mode. | -| --rule string | Filter rule expressions. Use `ticloud serverless audit-log filter template` to see filter templates. | Yes | Only works in non-interactive mode. | -| -h, --help | Shows help information for this command. | No | Works in both non-interactive and interactive modes. | +| 参数 | 描述 | 是否必需 | 备注 | +|-------------------------|--------------------------------------------------------------------------------------------------------|----------|----------------------------------------------------| +| -c, --cluster-id string | 集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| --name string | 过滤规则的名称。 | 是 | 仅在非交互模式下生效。 | +| --rule string | 过滤规则表达式。可使用 `ticloud serverless audit-log filter template` 查看过滤模板。 | 是 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## Inherited flags +## 继承参数 -| Flag | Description | Required | Note | -|----------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | Disables color in output. | No | Only works in non-interactive mode. In interactive mode, disabling color might not work with some UI components. | -| -P, --profile string | Specifies the active [user profile](/tidb-cloud/cli-reference.md#user-profile) used in this command. | No | Works in both non-interactive and interactive modes. | -| -D, --debug | Enables debug mode. | No | Works in both non-interactive and interactive modes. | +| 参数 | 描述 | 是否必需 | 备注 | +|----------------------|-----------------------------------------------------------------------------------------------|----------|----------------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | -## Feedback +## 反馈 -If you have any questions or suggestions on the TiDB Cloud CLI, feel free to create an [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose). Also, we welcome any contributions. +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-auditlog-filter-delete.md b/tidb-cloud/ticloud-auditlog-filter-delete.md index 337ed339a4666..bfab284921547 100644 --- a/tidb-cloud/ticloud-auditlog-filter-delete.md +++ b/tidb-cloud/ticloud-auditlog-filter-delete.md @@ -1,55 +1,55 @@ --- title: ticloud serverless audit-log filter-rule delete -summary: The reference of `ticloud serverless audit-log filter-rule delete`. +summary: `ticloud serverless audit-log filter-rule delete` 的参考文档。 --- # ticloud serverless audit-log filter-rule delete -Delete an audit log filter rule for a TiDB Cloud Serverless cluster. +删除 TiDB Cloud Serverless 集群的审计日志过滤规则。 ```shell ticloud serverless audit-log filter-rule delete [flags] ``` -Or use the following alias command: +或者使用以下别名命令: ```shell ticloud serverless audit-log filter delete [flags] ``` -## Examples +## 示例 -Delete an audit log filter rule in interactive mode: +以交互模式删除审计日志过滤规则: ```shell ticloud serverless audit-log filter delete ``` -Delete an audit log filter rule in non-interactive mode: +以非交互模式删除审计日志过滤规则: ```shell ticloud serverless audit-log filter delete --cluster-id --name ``` -## Flags +## 参数说明 -In non-interactive mode, you need to manually enter the required flags. In interactive mode, you can just follow CLI prompts to fill them in. +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| Flag | Description | Required | Note | -|-------------------------|-----------------------------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | The ID of the cluster. | Yes | Only works in non-interactive mode. | -| --name string | The name of the filter rule. | Yes | Only works in non-interactive mode. | -| --force | Deletes the filter rule without confirmation. | No | Works in both non-interactive and interactive modes. | -| -h, --help | Shows help information for this command. | No | Works in both non-interactive and interactive modes. | +| Flag | 说明 | 是否必需 | 备注 | +|-------------------------|----------------------------------------------------|----------|----------------------------------------------------| +| -c, --cluster-id string | 集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| --name string | 过滤规则的名称。 | 是 | 仅在非交互模式下生效。 | +| --force | 无需确认直接删除过滤规则。 | 否 | 在非交互和交互模式下均可用。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## Inherited flags +## 继承参数 -| Flag | Description | Required | Note | -|----------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | Disables color in output. | No | Only works in non-interactive mode. In interactive mode, disabling color might not work with some UI components. | -| -P, --profile string | Specifies the active [user profile](/tidb-cloud/cli-reference.md#user-profile) used in this command. | No | Works in both non-interactive and interactive modes. | -| -D, --debug | Enables debug mode. | No | Works in both non-interactive and interactive modes. | +| Flag | 说明 | 是否必需 | 备注 | +|----------------------|---------------------------------------------------------------------------------------|----------|----------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | -## Feedback +## 反馈 -If you have any questions or suggestions on the TiDB Cloud CLI, feel free to create an [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose). Also, we welcome any contributions. +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-auditlog-filter-describe.md b/tidb-cloud/ticloud-auditlog-filter-describe.md index c75c6dd6b1661..7f28719101c44 100644 --- a/tidb-cloud/ticloud-auditlog-filter-describe.md +++ b/tidb-cloud/ticloud-auditlog-filter-describe.md @@ -1,54 +1,54 @@ --- title: ticloud serverless audit-log filter-rule describe -summary: The reference of `ticloud serverless audit-log filter-rule describe`. +summary: `ticloud serverless audit-log filter-rule describe` 的参考文档。 --- # ticloud serverless audit-log filter-rule describe -Describe an audit log filter rule for a TiDB Cloud Serverless cluster. +用于描述 TiDB Cloud Serverless 集群的审计日志过滤规则。 ```shell ticloud serverless audit-log filter-rule describe [flags] ``` -Or use the following alias command: +或者使用以下别名命令: ```shell ticloud serverless audit-log filter describe [flags] ``` -## Examples +## 示例 -Describe an audit log filter rule in interactive mode: +以交互模式描述一个审计日志过滤规则: ```shell ticloud serverless audit-log filter describe ``` -Describe an audit log filter rule in non-interactive mode: +以非交互模式描述一个审计日志过滤规则: ```shell ticloud serverless audit-log filter describe --cluster-id --name ``` -## Flags +## 参数说明 -In non-interactive mode, you need to manually enter the required flags. In interactive mode, you can just follow CLI prompts to fill them in. +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| Flag | Description | Required | Note | -|-------------------------|------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | The ID of the cluster. | Yes | Only works in non-interactive mode. | -| --name string | The name of the filter rule. | Yes | Only works in non-interactive mode. | -| -h, --help | Shows help information for this command. | No | Works in both non-interactive and interactive modes. | +| 参数 | 描述 | 是否必需 | 备注 | +|--------------------------|--------------------------------|----------|----------------------------------------------| +| -c, --cluster-id string | 集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| --name string | 过滤规则的名称。 | 是 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## Inherited flags +## 继承参数 -| Flag | Description | Required | Note | -|----------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | Disables color in output. | No | Only works in non-interactive mode. In interactive mode, disabling color might not work with some UI components. | -| -P, --profile string | Specifies the active [user profile](/tidb-cloud/cli-reference.md#user-profile) used in this command. | No | Works in both non-interactive and interactive modes. | -| -D, --debug | Enables debug mode. | No | Works in both non-interactive and interactive modes. | +| 参数 | 描述 | 是否必需 | 备注 | +|-----------------------|---------------------------------------------------------------------------------------|----------|--------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | -## Feedback +## 反馈 -If you have any questions or suggestions on the TiDB Cloud CLI, feel free to create an [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose). Also, we welcome any contributions. +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-auditlog-filter-list.md b/tidb-cloud/ticloud-auditlog-filter-list.md index ac11aa930831f..966a04507fabc 100644 --- a/tidb-cloud/ticloud-auditlog-filter-list.md +++ b/tidb-cloud/ticloud-auditlog-filter-list.md @@ -1,60 +1,60 @@ --- title: ticloud serverless audit-log filter-rule list -summary: The reference of `ticloud serverless audit-log filter-rule list`. +summary: `ticloud serverless audit-log filter-rule list` 的参考文档。 --- # ticloud serverless audit-log filter-rule list -List audit log filter rules for a TiDB Cloud Serverless cluster. +列出 TiDB Cloud Serverless 集群的审计日志过滤规则。 ```shell ticloud serverless audit-log filter-rule list [flags] ``` -Or use the following alias command: +或者使用以下别名命令: ```shell ticloud serverless audit-log filter list [flags] ``` -## Examples +## 示例 -List all audit log filter rules in interactive mode: +以交互模式列出所有审计日志过滤规则: ```shell ticloud serverless audit-log filter list ``` -List all audit log filter rules in non-interactive mode: +以非交互模式列出所有审计日志过滤规则: ```shell ticloud serverless audit-log filter list -c ``` -List all audit log filter rules with JSON format in non-interactive mode: +以非交互模式并以 JSON 格式列出所有审计日志过滤规则: ```shell ticloud serverless audit-log filter list -c -o json ``` -## Flags +## 参数说明 -In non-interactive mode, you need to manually enter the required flags. In interactive mode, you can just follow CLI prompts to fill them in. +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| Flag | Description | Required | Note | -|-------------------------|---------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | The ID of the cluster whose audit log filter rules you want to list. | No | Only works in non-interactive mode. | -| -o, --output string | Specifies the output format (`human` by default). Valid values are `human` or `json`. To get a complete result, use the `json` format. | No | Works in both non-interactive and interactive modes. | -| -h, --help | Shows help information for this command. | No | Works in both non-interactive and interactive modes. | +| Flag | 说明 | 是否必需 | 备注 | +|-------------------------|------------------------------------------------------------------------------------------|----------|------------------------------------------------------| +| -c, --cluster-id string | 你想要列出其审计日志过滤规则的集群 ID。 | 否 | 仅在非交互模式下生效。 | +| -o, --output string | 指定输出格式(默认为 `human`)。可选值为 `human` 或 `json`。若需完整结果,请使用 `json` 格式。 | 否 | 在非交互和交互模式下均可用。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## Inherited flags +## 继承参数 -| Flag | Description | Required | Note | -|----------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | Disables color in output. | No | Only works in non-interactive mode. In interactive mode, disabling color might not work with some UI components. | -| -P, --profile string | Specifies the active [user profile](/tidb-cloud/cli-reference.md#user-profile) used in this command. | No | Works in both non-interactive and interactive modes. | -| -D, --debug | Enables debug mode. | No | Works in both non-interactive and interactive modes. | +| Flag | 说明 | 是否必需 | 备注 | +|----------------------|---------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | -## Feedback +## 反馈 -If you have any questions or suggestions on the TiDB Cloud CLI, feel free to create an [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose). Also, we welcome any contributions. +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-auditlog-filter-template.md b/tidb-cloud/ticloud-auditlog-filter-template.md index ffe67f612dbfa..dc41e0b725222 100644 --- a/tidb-cloud/ticloud-auditlog-filter-template.md +++ b/tidb-cloud/ticloud-auditlog-filter-template.md @@ -1,53 +1,53 @@ --- title: ticloud serverless audit-log filter-rule template -summary: The reference of `ticloud serverless audit-log filter-rule template`. +summary: `ticloud serverless audit-log filter-rule template` 的参考文档。 --- # ticloud serverless audit-log filter-rule template -Show audit log filter rule templates for a TiDB Cloud Serverless cluster. +展示 TiDB Cloud Serverless 集群的审计日志过滤规则模板。 ```shell ticloud serverless audit-log filter-rule template [flags] ``` -Or use the following alias command: +或者使用以下别名命令: ```shell ticloud serverless audit-log filter template [flags] ``` -## Examples +## 示例 -Show filter templates in interactive mode: +以交互模式展示过滤模板: ```shell ticloud serverless audit-log filter template ``` -Show filter templates in non-interactive mode: +以非交互模式展示过滤模板: ```shell ticloud serverless audit-log filter template --cluster-id ``` -## Flags +## 参数说明 -In non-interactive mode, you need to manually enter the required flags. In interactive mode, you can just follow CLI prompts to fill them in. +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| Flag | Description | Required | Note | -|-------------------------|------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | The ID of the cluster (optional, for context if templates might become cluster-specific). | No | Only works in non-interactive mode. | -| -h, --help | Shows help information for this command. | No | Works in both non-interactive and interactive modes. | +| Flag | 描述 | 是否必需 | 备注 | +|-------------------------|-----------------------|----------|------------------------------------------------------| +| -c, --cluster-id string | 集群的 ID(可选,如果模板将来可能与集群相关则用于上下文)。 | 否 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## Inherited flags +## 继承参数 -| Flag | Description | Required | Note | -|----------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | Disables color in output. | No | Only works in non-interactive mode. In interactive mode, disabling color might not work with some UI components. | -| -P, --profile string | Specifies the active [user profile](/tidb-cloud/cli-reference.md#user-profile) used in this command. | No | Works in both non-interactive and interactive modes. | -| -D, --debug | Enables debug mode. | No | Works in both non-interactive and interactive modes. | +| Flag | 描述 | 是否必需 | 备注 | +|----------------------|---------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | -## Feedback +## 反馈 -If you have any questions or suggestions on the TiDB Cloud CLI, feel free to create an [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose). Also, we welcome any contributions. +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-auditlog-filter-update.md b/tidb-cloud/ticloud-auditlog-filter-update.md index ecf766fd5ada5..cb83a1386cd7e 100644 --- a/tidb-cloud/ticloud-auditlog-filter-update.md +++ b/tidb-cloud/ticloud-auditlog-filter-update.md @@ -1,68 +1,68 @@ --- title: ticloud serverless audit-log filter-rule update -summary: The reference of `ticloud serverless audit-log filter-rule update`. +summary: `ticloud serverless audit-log filter-rule update` 的参考文档。 --- # ticloud serverless audit-log filter-rule update -Update an audit log filter rule for a TiDB Cloud Serverless cluster. +为 TiDB Cloud Serverless 集群更新审计日志过滤规则。 ```shell ticloud serverless audit-log filter-rule update [flags] ``` -Or use the following alias command: +或者使用以下别名命令: ```shell ticloud serverless audit-log filter update [flags] ``` -## Examples +## 示例 -Update an audit log filter rule in interactive mode: +以交互模式更新审计日志过滤规则: ```shell ticloud serverless audit-log filter update ``` -Enable an audit log filter rule in non-interactive mode: +以非交互模式启用审计日志过滤规则: ```shell ticloud serverless audit-log filter update --cluster-id --name --enabled ``` -Disable an audit log filter rule in non-interactive mode: +以非交互模式禁用审计日志过滤规则: ```shell ticloud serverless audit-log filter update --cluster-id --name --enabled=false ``` -Update filters of an audit log filter rule in non-interactive mode: +以非交互模式更新审计日志过滤规则的过滤条件: ```shell ticloud serverless audit-log filter update --cluster-id --name --rule '{"users":["%@%"],"filters":[{"classes":["QUERY"],"tables":["test.t"]}]}' ``` -## Flags +## 参数说明 -In non-interactive mode, you need to manually enter the required flags. In interactive mode, you can just follow CLI prompts to fill them in. +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| Flag | Description | Required | Note | -|-------------------------|-------------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | The ID of the cluster. | Yes | Only works in non-interactive mode. | -| --name string | The name of the filter rule to update. | Yes | Only works in non-interactive mode. | -| --enabled | Enables or disables the filter rule. | No | Only works in non-interactive mode. | -| --rule string | The new, complete filter rule expression. Use `ticloud serverless audit-log filter template` to see filter templates. | No | Only works in non-interactive mode. | -| -h, --help | Shows help information for this command. | No | Works in both non-interactive and interactive modes. | +| 参数 | 描述 | 是否必需 | 备注 | +|-------------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| +| -c, --cluster-id string | 集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| --name string | 要更新的过滤规则名称。 | 是 | 仅在非交互模式下生效。 | +| --enabled | 启用或禁用该过滤规则。 | 否 | 仅在非交互模式下生效。 | +| --rule string | 新的完整过滤规则表达式。可使用 `ticloud serverless audit-log filter template` 查看过滤模板。 | 否 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## Inherited flags +## 继承参数 -| Flag | Description | Required | Note | -|----------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | Disables color in output. | No | Only works in non-interactive mode. In interactive mode, disabling color might not work with some UI components. | -| -P, --profile string | Specifies the active [user profile](/tidb-cloud/cli-reference.md#user-profile) used in this command. | No | Works in both non-interactive and interactive modes. | -| -D, --debug | Enables debug mode. | No | Works in both non-interactive and interactive modes. | +| 参数 | 描述 | 是否必需 | 备注 | +|----------------------|-----------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | -## Feedback +## 反馈 -If you have any questions or suggestions on the TiDB Cloud CLI, feel free to create an [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose). Also, we welcome any contributions. +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-branch-create.md b/tidb-cloud/ticloud-branch-create.md index 1732c1280129c..7708d2cf457aa 100644 --- a/tidb-cloud/ticloud-branch-create.md +++ b/tidb-cloud/ticloud-branch-create.md @@ -1,11 +1,11 @@ --- title: ticloud serverless branch create -summary: "`ticloud serverless branch create` 命令的参考。" +summary: `ticloud serverless branch create` 的参考文档。 --- # ticloud serverless branch create -为 TiDB Cloud Serverless 集群创建一个[分支](/tidb-cloud/branch-overview.md): +为 TiDB Cloud Serverless 集群创建一个 [分支](/tidb-cloud/branch-overview.md): ```shell ticloud serverless branch create [flags] @@ -13,44 +13,44 @@ ticloud serverless branch create [flags] ## 示例 -在交互模式下为 TiDB Cloud Serverless 集群创建分支: +以交互模式为 TiDB Cloud Serverless 集群创建分支: ```shell ticloud serverless branch create ``` -在非交互模式下为 TiDB Cloud Serverless 集群创建分支: +以非交互模式为 TiDB Cloud Serverless 集群创建分支: ```shell ticloud serverless branch create --cluster-id --display-name ``` -在非交互模式下从另一个分支的指定时间点创建分支: +以非交互模式,从另一个分支的指定时间点创建分支: ```shell ticloud serverless branch create --cluster-id --display-name --parent-id --parent-timestamp ``` -## 参数标志 +## 参数说明 -在非交互模式下,你需要手动输入必需的参数标志。在交互模式下,你可以按照 CLI 提示填写它们。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 的提示填写即可。 -| 参数标志 | 描述 | 是否必需 | 说明 | -|---------------------------|-----------------------------------------------------------------------------------------------------------|----------|-----------------------------------------------------| -| -c, --cluster-id string | 指定要在其中创建分支的集群 ID。 | 是 | 仅在非交互模式下有效。 | -| -n, --display-name string | 指定要创建的分支名称。 | 是 | 仅在非交互模式下有效。 | -| --parent-id string | 指定父分支的 ID。默认值为集群 ID。 | 否 | 仅在非交互模式下有效。 | -| --parent-timestamp string | 指定父分支的时间戳,格式为 RFC3339,例如 `2024-01-01T00:00:00Z`。默认值为当前时间。 | 否 | 仅在非交互模式下有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下都可用。 | +| 参数 | 说明 | 是否必需 | 备注 | +|-----------------------------|--------------------------------------------------------------------------------------------------------|----------|-----------------------------------------------------| +| -c, --cluster-id string | 指定要在哪个集群中创建分支的集群 ID。 | 是 | 仅在非交互模式下生效。 | +| -n, --display-name string | 指定要创建的分支名称。 | 是 | 仅在非交互模式下生效。 | +| --parent-id string | 指定分支的父分支 ID。默认值为集群 ID。 | 否 | 仅在非交互模式下生效。 | +| --parent-timestamp string | 指定父分支的时间戳,格式为 RFC3339,例如 `2024-01-01T00:00:00Z`。默认值为当前时间。 | 否 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## 继承的参数标志 +## 继承参数 -| 参数标志 | 描述 | 是否必需 | 说明 | -|----------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下都可用。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下都可用。 | +| 参数 | 说明 | 是否必需 | 备注 | +|------------------------|---------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建一个 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何形式的贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-branch-delete.md b/tidb-cloud/ticloud-branch-delete.md index 7e311a856a3bd..8a6441f1128d9 100644 --- a/tidb-cloud/ticloud-branch-delete.md +++ b/tidb-cloud/ticloud-branch-delete.md @@ -1,6 +1,6 @@ --- title: ticloud serverless branch delete -summary: "`ticloud serverless branch delete` 命令的参考。" +summary: `ticloud serverless branch delete` 的参考文档。 --- # ticloud serverless branch delete @@ -11,7 +11,7 @@ summary: "`ticloud serverless branch delete` 命令的参考。" ticloud serverless branch delete [flags] ``` -或使用以下别名命令: +或者使用以下别名命令: ```shell ticloud serverless branch rm [flags] @@ -19,37 +19,37 @@ ticloud serverless branch rm [flags] ## 示例 -在交互模式下删除 TiDB Cloud Serverless 分支: +以交互模式删除一个 TiDB Cloud Serverless 分支: ```shell ticloud serverless branch delete ``` -在非交互模式下删除 TiDB Cloud Serverless 分支: +以非交互模式删除一个 TiDB Cloud Serverless 分支: ```shell ticloud branch delete --branch-id --cluster-id ``` -## 标志 +## 参数 -在非交互模式下,你需要手动输入必需的标志。在交互模式下,你只需按照 CLI 提示填写即可。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| 标志 | 描述 | 是否必需 | 说明 | -|-------------------------|-------------------------------------|----------|------------------------------------------| -| -b, --branch-id string | 指定要删除的分支的 ID。 | 是 | 仅在非交互模式下生效。 | -| --force | 删除分支时不需要确认。 | 否 | 在非交互模式和交互模式下都有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互模式和交互模式下都有效。 | -| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| 参数 | 描述 | 是否必需 | 备注 | +|-------------------------|-------------------------------------|----------|------------------------------------------------------| +| -b, --branch-id string | 指定要删除的分支 ID。 | 是 | 仅在非交互模式下生效。 | +| --force | 无需确认直接删除分支。 | 否 | 在非交互和交互模式下均可用。 | +| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | +| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | -## 继承的标志 +## 继承参数 -| 标志 | 描述 | 是否必需 | 说明 | -|----------------------|------------------------------------------------------------------------------------------|----------|-----------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,对某些 UI 组件禁用颜色可能不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互模式和交互模式下都有效。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互模式和交互模式下都有效。 | +| 参数 | 描述 | 是否必需 | 备注 | +|----------------------|-------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定此命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-branch-describe.md b/tidb-cloud/ticloud-branch-describe.md index 960e8c9ec3a37..bb87e7157d033 100644 --- a/tidb-cloud/ticloud-branch-describe.md +++ b/tidb-cloud/ticloud-branch-describe.md @@ -1,17 +1,17 @@ --- title: ticloud serverless branch describe -summary: "`ticloud serverless branch describe` 命令的参考文档。" +summary: `ticloud serverless branch describe` 的参考文档。 --- # ticloud serverless branch describe -获取分支的信息(如端点、[用户名前缀](/tidb-cloud/select-cluster-tier.md#user-name-prefix)和使用情况): +获取分支的相关信息(如端点、[用户名前缀](/tidb-cloud/select-cluster-tier.md#user-name-prefix)和用量等): ```shell ticloud serverless branch describe [flags] ``` -或使用以下别名命令: +或者使用以下别名命令: ```shell ticloud serverless branch get [flags] @@ -19,36 +19,36 @@ ticloud serverless branch get [flags] ## 示例 -在交互模式下获取 TiDB Cloud Serverless 集群的分支信息: +以交互模式获取 TiDB Cloud Serverless 集群的分支信息: ```shell ticloud serverless branch describe ``` -在非交互模式下获取 TiDB Cloud Serverless 集群的分支信息: +以非交互模式获取 TiDB Cloud Serverless 集群的分支信息: ```shell ticloud serverless branch describe --branch-id --cluster-id ``` -## 参数标志 +## 参数说明 -在非交互模式下,你需要手动输入必需的参数标志。在交互模式下,你可以按照 CLI 提示填写这些信息。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| 参数标志 | 描述 | 是否必需 | 说明 | -|------------------------|--------------------------------|----------|-------------------------------------| -| -b, --branch-id string | 指定分支的 ID。 | 是 | 仅在非交互模式下有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下均可使用。 | -| -c, --cluster-id string| 指定集群的 ID。 | 是 | 仅在非交互模式下有效。 | +| 参数 | 描述 | 是否必需 | 备注 | +|-------------------------|----------------------------------------|----------|------------------------------------------------------| +| -b, --branch-id string | 指定分支的 ID。 | 是 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | +| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | -## 继承的参数标志 +## 继承参数 -| 参数标志 | 描述 | 是否必需 | 说明 | -|----------------------|----------------------------------------------------------------------------------------|----------|-------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可使用。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可使用。 | +| 参数 | 描述 | 是否必需 | 备注 | +|----------------------|---------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何形式的贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时也欢迎任何贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-branch-list.md b/tidb-cloud/ticloud-branch-list.md index e3fbac45fcfb7..5f38a1b71932c 100644 --- a/tidb-cloud/ticloud-branch-list.md +++ b/tidb-cloud/ticloud-branch-list.md @@ -1,17 +1,17 @@ --- title: ticloud serverless branch list -summary: "`ticloud serverless branch list` 命令的参考。" +summary: `ticloud serverless branch list` 的参考文档。 --- # ticloud serverless branch list -列出 TiDB Cloud Serverless 集群的所有分支: +列出所有 TiDB Cloud Serverless 集群的分支: ```shell ticloud serverless branch list [flags] ``` -或使用以下别名命令: +或者使用以下别名命令: ```shell ticloud serverless branch ls [flags] @@ -19,42 +19,42 @@ ticloud serverless branch ls [flags] ## 示例 -在交互模式下列出 TiDB Cloud Serverless 集群的所有分支: +以交互模式列出所有 TiDB Cloud Serverless 集群的分支: ```shell ticloud serverless branch list ``` -在非交互模式下列出特定 TiDB Cloud Serverless 集群的所有分支: +以非交互模式列出指定 TiDB Cloud Serverless 集群的所有分支: ```shell ticloud serverless branch list -c ``` -以 JSON 格式列出特定 TiDB Cloud Serverless 集群的所有分支: +以 JSON 格式列出指定 TiDB Cloud Serverless 集群的所有分支: ```shell ticloud serverless branch list -o json ``` -## 标志 +## 参数 -在非交互模式下,你需要手动输入必需的标志。在交互模式下,你只需按照 CLI 提示填写即可。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| 标志 | 描述 | 是否必需 | 注意 | -|-------------------------|--------------------------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下都有效。 | -| -o, --output string | 指定输出格式(默认为 `human`)。有效值为 `human` 或 `json`。要获取完整结果,请使用 `json` 格式。 | 否 | 在非交互和交互模式下都有效。 | +| 参数 | 说明 | 是否必需 | 备注 | +|-------------------------|-------------------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| +| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | +| -o, --output string | 指定输出格式(默认为 **human**)。可选值为 **human** 或 **json**。如需获取完整结果,建议使用 **json** 格式。 | 否 | 在非交互和交互模式下均可用。 | -## 继承的标志 +## 继承参数 -| 标志 | 描述 | 是否必需 | 注意 | -|----------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下都有效。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下都有效。 | +| 参数 | 说明 | 是否必需 | 备注 | +|----------------------|-----------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建[议题](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-branch-shell.md b/tidb-cloud/ticloud-branch-shell.md index 9aaf9d0dd5dd6..3e985403e7e99 100644 --- a/tidb-cloud/ticloud-branch-shell.md +++ b/tidb-cloud/ticloud-branch-shell.md @@ -1,12 +1,12 @@ --- title: ticloud serverless branch shell -summary: "`ticloud serverless branch shell` 命令的参考。" +summary: `ticloud serverless branch shell` 的参考文档。 aliases: ['/tidbcloud/ticloud-connect'] --- # ticloud serverless branch shell -连接到 TiDB Cloud Serverless 集群的分支: +连接到 TiDB Cloud Serverless 集群的某个分支: ```shell ticloud serverless branch shell [flags] @@ -14,50 +14,50 @@ ticloud serverless branch shell [flags] ## 示例 -在交互模式下连接到 TiDB Cloud Serverless 分支: +以交互模式连接到 TiDB Cloud Serverless 分支: ```shell ticloud serverless branch shell ``` -在非交互模式下使用默认用户连接到 TiDB Cloud Serverless 分支: +以非交互模式,使用默认用户连接到 TiDB Cloud Serverless 分支: ```shell ticloud serverless branch shell -c -b ``` -在非交互模式下使用默认用户和密码连接到 TiDB Cloud Serverless 分支: +以非交互模式,使用默认用户和密码连接到 TiDB Cloud Serverless 分支: ```shell ticloud serverless branch shell -c -b --password ``` -在非交互模式下使用指定用户和密码连接到 TiDB Cloud Serverless 分支: +以非交互模式,使用指定用户和密码连接到 TiDB Cloud Serverless 分支: ```shell ticloud serverless branch shell -c -b -u --password ``` -## 参数标志 +## 参数说明 -在非交互模式下,你需要手动输入必需的参数标志。在交互模式下,你可以按照 CLI 提示填写它们。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 的提示填写即可。 -| 参数标志 | 描述 | 是否必需 | 说明 | -|------------------------|-------------------------------------|----------|------------------------------------------------------| -| -b, --branch-id string | 指定分支的 ID。 | 是 | 仅在非交互模式下有效。 | -| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下均有效。 | -| --password | 指定用户的密码。 | 否 | 仅在非交互模式下有效。 | -| -u, --user string | 指定登录用户。 | 否 | 仅在非交互模式下有效。 | +| 参数 | 说明 | 是否必需 | 备注 | +|---------------------------|----------------------------------------|----------|----------------------------------------------------| +| -b, --branch-id string | 指定分支的 ID。 | 是 | 仅在非交互模式下生效。 | +| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | +| --password | 指定用户的密码。 | 否 | 仅在非交互模式下生效。 | +| -u, --user string | 指定登录的用户。 | 否 | 仅在非交互模式下生效。 | -## 继承的参数标志 +## 继承参数 -| 参数标志 | 描述 | 是否必需 | 说明 | -|----------------------|-----------------------------------------------------------------------------------------------------|----------|--------------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均有效。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均有效。 | +| 参数 | 说明 | 是否必需 | 备注 | +|-----------------------|---------------------------------------------------------------------------------------|----------|----------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎在 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose) 页面提交。我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-cluster-create.md b/tidb-cloud/ticloud-cluster-create.md index bf97b0882cf98..adfb5a067acf1 100644 --- a/tidb-cloud/ticloud-cluster-create.md +++ b/tidb-cloud/ticloud-cluster-create.md @@ -1,11 +1,11 @@ --- title: ticloud serverless create -summary: "`ticloud serverless create` 命令的参考。" +summary: `ticloud serverless create` 的参考文档。 --- # ticloud serverless create -创建 TiDB Cloud Serverless 集群: +创建一个 TiDB Cloud Serverless 集群: ```shell ticloud serverless create [flags] @@ -13,46 +13,46 @@ ticloud serverless create [flags] ## 示例 -在交互模式下创建 TiDB Cloud Serverless 集群: +以交互模式创建一个 TiDB Cloud Serverless 集群: ```shell ticloud serverless create ``` -在非交互模式下创建 TiDB Cloud Serverless 集群: +以非交互模式创建一个 TiDB Cloud Serverless 集群: ```shell ticloud serverless create --display-name --region ``` -在非交互模式下创建带有支出限制的 TiDB Cloud Serverless 集群: +以非交互模式并设置消费上限创建一个 TiDB Cloud Serverless 集群: ```shell ticloud serverless create --display-name --region --spending-limit-monthly -``` +``` -## 参数标志 +## 参数说明 -在非交互模式下,你需要手动输入必需的参数标志。在交互模式下,你可以按照 CLI 提示填写它们。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| 参数标志 | 描述 | 是否必需 | 说明 | -|------------------------------|--------------------------------------------------------------------------------------------------------|----------|-----------------------------------------------------| -| -n --display-name string | 指定要创建的集群的名称。 | 是 | 仅在非交互模式下有效。 | -| --spending-limit-monthly int | 指定每月最大支出限制(以美分为单位)。 | 否 | 仅在非交互模式下有效。 | -| -p, --project-id string | 指定要在其中创建集群的项目的 ID。默认值为 `default project`。 | 否 | 仅在非交互模式下有效。 | -| -r, --region string | 指定云区域的名称。你可以使用 "ticloud serverless region" 查看所有区域。 | 是 | 仅在非交互模式下有效。 | -| --disable-public-endpoint | 禁用公共端点。 | 否 | 仅在非交互模式下有效。 | -| --encryption | 启用增强的静态加密。 | 否 | 仅在非交互模式下有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下均有效。 | +| 参数 | 描述 | 是否必需 | 备注 | +|------------------------------|---------------------------------------------------------------------------------------------------------|----------|-----------------------------------------------------| +| -n --display-name string | 指定要创建的集群名称。 | 是 | 仅在非交互模式下生效。 | +| --spending-limit-monthly int | 指定每月最大消费上限(单位为美元分)。 | 否 | 仅在非交互模式下生效。 | +| -p, --project-id string | 指定要创建集群的项目 ID,默认值为 `default project`。 | 否 | 仅在非交互模式下生效。 | +| -r, --region string | 指定云区域名称。你可以使用 "ticloud serverless region" 查看所有区域。 | 是 | 仅在非交互模式下生效。 | +| --disable-public-endpoint | 禁用公网访问入口。 | 否 | 仅在非交互模式下生效。 | +| --encryption | 启用增强的静态加密。 | 否 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## 继承的参数标志 +## 继承参数 -| 参数标志 | 描述 | 是否必需 | 说明 | -|----------------------|-----------------------------------------------------------------------------------------------------|----------|--------------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均有效。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均有效。 | +| 参数 | 描述 | 是否必需 | 备注 | +|----------------------|-----------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。我们也欢迎任何贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-cluster-delete.md b/tidb-cloud/ticloud-cluster-delete.md index 4fda830f382c7..37e1847812e2d 100644 --- a/tidb-cloud/ticloud-cluster-delete.md +++ b/tidb-cloud/ticloud-cluster-delete.md @@ -1,6 +1,6 @@ --- title: ticloud serverless cluster delete -summary: "`ticloud serverless delete` 命令的参考。" +summary: `ticloud serverless delete` 的参考文档。 --- # ticloud serverless delete @@ -11,7 +11,7 @@ summary: "`ticloud serverless delete` 命令的参考。" ticloud serverless delete [flags] ``` -或使用以下别名命令: +或者使用以下别名命令: ```shell ticloud serverless rm [flags] @@ -19,36 +19,36 @@ ticloud serverless rm [flags] ## 示例 -在交互模式下删除 TiDB Cloud Serverless 集群: +以交互模式删除一个 TiDB Cloud Serverless 集群: ```shell ticloud serverless delete ``` -在非交互模式下删除 TiDB Cloud Serverless 集群: +以非交互模式删除一个 TiDB Cloud Serverless 集群: ```shell ticloud serverless delete --cluster-id ``` -## 标志 +## 参数 -在非交互模式下,你需要手动输入必需的标志。在交互模式下,你只需按照 CLI 提示填写即可。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| 标志 | 描述 | 是否必需 | 说明 | -|-------------------------|-------------------------------------|----------|------------------------------------------| -| -c, --cluster-id string | 指定要删除的集群的 ID。 | 是 | 仅在非交互模式下生效。 | -| --force | 删除集群时不需要确认。 | 否 | 在非交互模式和交互模式下都有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互模式和交互模式下都有效。 | +| 参数 | 描述 | 是否必需 | 备注 | +|---------------------------|----------------------------------------------|----------|----------------------------------------------------| +| -c, --cluster-id string | 指定要删除的集群 ID。 | 是 | 仅在非交互模式下生效。 | +| --force | 无需确认直接删除集群。 | 否 | 在非交互和交互模式下均可用。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## 继承的标志 +## 继承参数 -| 标志 | 描述 | 是否必需 | 说明 | -|----------------------|------------------------------------------------------------------------------------------|----------|-----------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,对某些 UI 组件禁用颜色可能不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互模式和交互模式下都有效。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互模式和交互模式下都有效。 | +| 参数 | 描述 | 是否必需 | 备注 | +|-------------------------|----------------------------------------------------------------------|----------|----------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-cluster-describe.md b/tidb-cloud/ticloud-cluster-describe.md index 32d4514d89aec..d6ea90de18190 100644 --- a/tidb-cloud/ticloud-cluster-describe.md +++ b/tidb-cloud/ticloud-cluster-describe.md @@ -1,17 +1,17 @@ --- title: ticloud serverless cluster describe -summary: "`ticloud serverless describe` 命令的参考。" +summary: The reference of `ticloud serverless describe`. --- # ticloud serverless describe -获取 TiDB Cloud Serverless 集群的信息(例如集群配置和集群状态): +获取 TiDB Cloud Serverless 集群的信息(如集群配置和集群状态): ```shell ticloud serverless describe [flags] ``` -或使用以下别名命令: +或者使用以下别名命令: ```shell ticloud serverless get [flags] @@ -19,35 +19,35 @@ ticloud serverless get [flags] ## 示例 -在交互模式下获取 TiDB Cloud Serverless 集群的信息: +以交互模式获取 TiDB Cloud Serverless 集群的信息: ```shell ticloud serverless describe ``` -在非交互模式下获取 TiDB Cloud Serverless 集群的信息: +以非交互模式获取 TiDB Cloud Serverless 集群的信息: ```shell ticloud serverless describe --cluster-id ``` -## 参数标志 +## 参数说明 -在非交互模式下,你需要手动输入必需的参数标志。在交互模式下,你可以按照 CLI 提示填写它们。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| 参数标志 | 描述 | 是否必需 | 说明 | -|-------------------------|-----------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下都可用。 | +| 参数 | 描述 | 是否必需 | 备注 | +|---------------------------|----------------------------------------|----------|----------------------------------------------------| +| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## 继承的参数标志 +## 继承参数 -| 参数标志 | 描述 | 是否必需 | 说明 | -|----------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下都可用。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下都可用。 | +| 参数 | 描述 | 是否必需 | 备注 | +|-------------------------|---------------------------------------------------------------------------------------|----------|----------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建一个 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何形式的贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-cluster-list.md b/tidb-cloud/ticloud-cluster-list.md index bdb891ea1fe69..081cd3a82a527 100644 --- a/tidb-cloud/ticloud-cluster-list.md +++ b/tidb-cloud/ticloud-cluster-list.md @@ -1,17 +1,17 @@ --- title: ticloud serverless cluster list -summary: "`ticloud serverless list` 命令的参考。" +summary: `ticloud serverless list` 的参考文档。 --- # ticloud serverless list -列出项目中的所有 TiDB Cloud Serverless 集群: +列出一个项目下所有的 TiDB Cloud Serverless 集群: ```shell ticloud serverless list [flags] ``` -或使用以下别名命令: +或者使用以下别名命令: ```shell ticloud serverless ls [flags] @@ -19,42 +19,42 @@ ticloud serverless ls [flags] ## 示例 -在交互模式下列出所有 TiDB Cloud Serverless 集群: +以交互模式列出所有 TiDB Cloud Serverless 集群: ```shell ticloud serverless list ``` -在非交互模式下列出指定项目中的所有 TiDB Cloud Serverless 集群: +在非交互模式下,列出指定项目下的所有 TiDB Cloud Serverless 集群: ```shell ticloud serverless list -p ``` -在非交互模式下以 JSON 格式列出指定项目中的所有 TiDB Cloud Serverless 集群: +在非交互模式下,以 JSON 格式列出指定项目下的所有 TiDB Cloud Serverless 集群: ```shell ticloud serverless list -p -o json ``` -## 参数标志 +## 参数 -在非交互模式下,你需要手动输入必需的参数标志。在交互模式下,你可以按照 CLI 提示填写它们。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| 参数标志 | 描述 | 是否必需 | 说明 | -|------------------------|------------------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| -| -p, --project-id string | 指定项目的 ID。 | 是 | 仅在非交互模式下有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下均有效。 | -| -o, --output string | 指定输出格式(默认为 `human`)。有效值为 `human` 或 `json`。要获取完整结果,请使用 `json` 格式。 | 否 | 在非交互和交互模式下均有效。 | +| 参数 | 描述 | 是否必需 | 说明 | +|-------------------------|-------------------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| +| -p, --project-id string | 指定项目的 ID。 | 是 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | +| -o, --output string | 指定输出格式(默认为 `human`)。可选值为 `human` 或 `json`。如需获取完整结果,请使用 `json` 格式。 | 否 | 在非交互和交互模式下均可用。 | -## 继承的参数标志 +## 继承参数 -| 参数标志 | 描述 | 是否必需 | 说明 | -|----------------------|-----------------------------------------------------------------------------------------------------|----------|--------------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均有效。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均有效。 | +| 参数 | 描述 | 是否必需 | 说明 | +|----------------------|-----------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-serverless-export-create.md b/tidb-cloud/ticloud-serverless-export-create.md index 2a24b25026275..94b14a717ba6e 100644 --- a/tidb-cloud/ticloud-serverless-export-create.md +++ b/tidb-cloud/ticloud-serverless-export-create.md @@ -1,6 +1,6 @@ --- title: ticloud serverless export create -summary: "`ticloud serverless export create` 命令的参考。" +summary: The reference of `ticloud serverless export create`. --- # ticloud serverless export create @@ -13,94 +13,94 @@ ticloud serverless export create [flags] ## 示例 -在交互模式下从 TiDB Cloud Serverless 集群导出数据: +以交互模式从 TiDB Cloud Serverless 集群导出数据: ```shell ticloud serverless export create ``` -在非交互模式下从 TiDB Cloud Serverless 集群导出数据到本地文件: +以非交互模式将 TiDB Cloud Serverless 集群的数据导出到本地文件: ```shell ticloud serverless export create -c --filter ``` -在非交互模式下从 TiDB Cloud Serverless 集群导出数据到 Amazon S3: +以非交互模式将 TiDB Cloud Serverless 集群的数据导出到 Amazon S3: ```shell ticloud serverless export create -c --s3.uri --s3.access-key-id --s3.secret-access-key --filter ``` -在非交互模式下从 TiDB Cloud Serverless 集群导出数据到 Google Cloud Storage: +以非交互模式将 TiDB Cloud Serverless 集群的数据导出到 Google Cloud Storage: ```shell ticloud serverless export create -c --gcs.uri --gcs.service-account-key --filter ``` -在非交互模式下从 TiDB Cloud Serverless 集群导出数据到 Azure Blob Storage: +以非交互模式将 TiDB Cloud Serverless 集群的数据导出到 Azure Blob Storage: ```shell ticloud serverless export create -c --azblob.uri --azblob.sas-token --filter ``` -在非交互模式下从 TiDB Cloud Serverless 集群导出数据到阿里云 OSS: +以非交互模式将 TiDB Cloud Serverless 集群的数据导出到阿里云 OSS: ```shell ticloud serverless export create -c --oss.uri --oss.access-key-id --oss.access-key-secret --filter ``` -在非交互模式下导出数据到 Parquet 文件并使用 `SNAPPY` 压缩: +以非交互模式将数据导出为 Parquet 文件并使用 `SNAPPY` 压缩: ```shell ticloud serverless export create -c --file-type parquet --parquet.compression SNAPPY --filter ``` -在非交互模式下使用 SQL 语句导出数据: +以非交互模式通过 SQL 语句导出数据: ```shell ticloud serverless export create -c --sql 'select * from database.table' ``` -## 参数标志 - -在非交互模式下,你需要手动输入必需的参数标志。在交互模式下,你可以按照 CLI 提示填写它们。 - -| 参数标志 | 描述 | 是否必需 | 说明 | -|----------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | 指定要从中导出数据的集群 ID。 | 是 | 仅在非交互模式下有效。 | -| --file-type string | 指定导出文件类型。可选值为 ["SQL" "CSV" "PARQUET"]。(默认为 "CSV") | 否 | 仅在非交互模式下有效。 | -| --target-type string | 指定导出目标。可选值为 [`"LOCAL"` `"S3"` `"GCS"` `"AZURE_BLOB"` `"OSS"`]。默认值为 `"LOCAL"`。 | 否 | 仅在非交互模式下有效。 | -| --s3.uri string | 指定 S3 URI,格式为 `s3:///`。当目标类型为 S3 时必需。 | 否 | 仅在非交互模式下有效。 | -| --s3.access-key-id string | 指定 Amazon S3 的访问密钥 ID。你只需要设置 s3.role-arn 或 [s3.access-key-id, s3.secret-access-key] 其中之一。 | 否 | 仅在非交互模式下有效。 | -| --s3.secret-access-key string | 指定 Amazon S3 的秘密访问密钥。你只需要设置 s3.role-arn 或 [s3.access-key-id, s3.secret-access-key] 其中之一。 | 否 | 仅在非交互模式下有效。 | -| --s3.role-arn string | 指定 Amazon S3 的角色 ARN。你只需要设置 s3.role-arn 或 [s3.access-key-id, s3.secret-access-key] 其中之一。 | 否 | 仅在非交互模式下有效。 | -| --gcs.uri string | 指定 GCS URI,格式为 `gcs:///`。当目标类型为 GCS 时必需。 | 否 | 仅在非交互模式下有效。 | -| --gcs.service-account-key string | 指定 GCS 的 base64 编码服务账号密钥。 | 否 | 仅在非交互模式下有效。 | -| --azblob.uri string | 指定 Azure Blob URI,格式为 `azure://.blob.core.windows.net//`。当目标类型为 AZURE_BLOB 时必需。 | 否 | 仅在非交互模式下有效。 | -| --azblob.sas-token string | 指定 Azure Blob 的 SAS 令牌。 | 否 | 仅在非交互模式下有效。 | -| --oss.uri string | 指定阿里云 OSS URI,格式为 `oss:///`。当导出 `target-type` 为 `"OSS"` 时必需。 | 否 | 仅在非交互模式下有效。 | -| --oss.access-key-id string | 指定访问阿里云 OSS 的 AccessKey ID。 | 否 | 仅在非交互模式下有效。 | -| --oss.access-key-secret string | 指定访问阿里云 OSS 的 AccessKey Secret。 | 否 | 仅在非交互模式下有效。 | -| --csv.delimiter string | 指定 CSV 文件中字符串类型变量的分隔符。(默认为 "\"") | 否 | 仅在非交互模式下有效。 | -| --csv.null-value string | 指定 CSV 文件中空值的表示方式。(默认为 "\\N") | 否 | 仅在非交互模式下有效。 | -| --csv.separator string | 指定 CSV 文件中每个值的分隔符。(默认为 ",") | 否 | 仅在非交互模式下有效。 | -| --csv.skip-header | 导出表的 CSV 文件时不包含表头。 | 否 | 仅在非交互模式下有效。 | -| --parquet.compression string | 指定 Parquet 压缩算法。可选值为 [`"GZIP"` `"SNAPPY"` `"ZSTD"` `"NONE"`]。默认值为 `"ZSTD"`。 | 否 | 仅在非交互模式下有效。 | -| --filter strings | 使用表过滤模式指定要导出的表。不要与 --sql 一起使用。更多信息,请参见[表过滤器](/table-filter.md)。 | 否 | 仅在非交互模式下有效。 | -| --sql string | 使用 `SQL SELECT` 语句过滤导出的数据。 | 否 | 仅在非交互模式下有效。 | -| --where string | 使用 `WHERE` 条件过滤导出的表。不要与 --sql 一起使用。 | 否 | 仅在非交互模式下有效。 | -| --compression string | 指定导出文件的压缩算法。支持的算法包括 `GZIP`、`SNAPPY`、`ZSTD` 和 `NONE`。默认值为 `GZIP`。 | 否 | 仅在非交互模式下有效。 | -| --force | 无需确认即创建导出任务。当你想在非交互模式下导出整个集群时需要确认。 | 否 | 仅在非交互模式下有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下都可用。 | - -## 继承的参数标志 - -| 参数标志 | 描述 | 是否必需 | 说明 | -|----------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下都可用。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下都可用。 | +## 参数 + +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 + +| 参数 | 描述 | 是否必需 | 备注 | +|----------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| +| -c, --cluster-id string | 指定你要导出数据的集群 ID。 | 是 | 仅在非交互模式下生效。 | +| --file-type string | 指定导出文件类型。可选值为 ["SQL" "CSV" "PARQUET"]。(默认值为 "CSV") | 否 | 仅在非交互模式下生效。 | +| --target-type string | 指定导出目标。可选值为 [`"LOCAL"` `"S3"` `"GCS"` `"AZURE_BLOB"` `"OSS"`]。默认值为 `"LOCAL"`。 | 否 | 仅在非交互模式下生效。 | +| --s3.uri string | 指定 S3 URI,格式为 `s3:///`。当目标类型为 S3 时必填。 | 否 | 仅在非交互模式下生效。 | +| --s3.access-key-id string | 指定 Amazon S3 的访问密钥 ID。你只需设置 s3.role-arn 和 [s3.access-key-id, s3.secret-access-key] 其中之一。 | 否 | 仅在非交互模式下生效。 | +| --s3.secret-access-key string | 指定 Amazon S3 的访问密钥 Secret。你只需设置 s3.role-arn 和 [s3.access-key-id, s3.secret-access-key] 其中之一。 | 否 | 仅在非交互模式下生效。 | +| --s3.role-arn string | 指定 Amazon S3 的角色 ARN。你只需设置 s3.role-arn 和 [s3.access-key-id, s3.secret-access-key] 其中之一。 | 否 | 仅在非交互模式下生效。 | +| --gcs.uri string | 指定 GCS URI,格式为 `gcs:///`。当目标类型为 GCS 时必填。 | 否 | 仅在非交互模式下生效。 | +| --gcs.service-account-key string | 指定 GCS 的 base64 编码服务账号密钥。 | 否 | 仅在非交互模式下生效。 | +| --azblob.uri string | 指定 Azure Blob URI,格式为 `azure://.blob.core.windows.net//`。当目标类型为 AZURE_BLOB 时必填。 | 否 | 仅在非交互模式下生效。 | +| --azblob.sas-token string | 指定 Azure Blob 的 SAS token。 | 否 | 仅在非交互模式下生效。 | +| --oss.uri string | 指定阿里云 OSS URI,格式为 `oss:///`。当导出 `target-type` 为 `"OSS"` 时必填。 | 否 | 仅在非交互模式下生效。 | +| --oss.access-key-id string | 指定访问阿里云 OSS 的 AccessKey ID。 | 否 | 仅在非交互模式下生效。 | +| --oss.access-key-secret string | 指定访问阿里云 OSS 的 AccessKey Secret。 | 否 | 仅在非交互模式下生效。 | +| --csv.delimiter string | 指定 CSV 文件中字符串类型变量的定界符。(默认值为 "\"") | 否 | 仅在非交互模式下生效。 | +| --csv.null-value string | 指定 CSV 文件中 null 值的表示方式。(默认值为 "\\N") | 否 | 仅在非交互模式下生效。 | +| --csv.separator string | 指定 CSV 文件中每个值的分隔符。(默认值为 ",") | 否 | 仅在非交互模式下生效。 | +| --csv.skip-header | 导出表的 CSV 文件时不包含表头。 | 否 | 仅在非交互模式下生效。 | +| --parquet.compression string | 指定 Parquet 的压缩算法。可选值为 [`"GZIP"` `"SNAPPY"` `"ZSTD"` `"NONE"`]。默认值为 `"ZSTD"`。 | 否 | 仅在非交互模式下生效。 | +| --filter strings | 通过表过滤模式指定要导出的表。不要与 --sql 一起使用。更多信息参见 [Table Filter](/table-filter.md)。 | 否 | 仅在非交互模式下生效。 | +| --sql string | 通过 `SQL SELECT` 语句过滤导出数据。 | 否 | 仅在非交互模式下生效。 | +| --where string | 通过 `WHERE` 条件过滤导出表。不要与 --sql 一起使用。 | 否 | 仅在非交互模式下生效。 | +| --compression string | 指定导出文件的压缩算法。支持的算法包括 `GZIP`、`SNAPPY`、`ZSTD` 和 `NONE`。默认值为 `GZIP`。 | 否 | 仅在非交互模式下生效。 | +| --force | 无需确认直接创建导出任务。当你在非交互模式下导出整个集群时需要确认。 | 否 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | + +## 继承参数 + +| 参数 | 描述 | 是否必需 | 备注 | +|----------------------|-----------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建一个 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何形式的贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。我们也欢迎任何贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-serverless-export-describe.md b/tidb-cloud/ticloud-serverless-export-describe.md index d08e3259c0456..70124988ce1e4 100644 --- a/tidb-cloud/ticloud-serverless-export-describe.md +++ b/tidb-cloud/ticloud-serverless-export-describe.md @@ -1,6 +1,6 @@ --- title: ticloud serverless export describe -summary: "`ticloud serverless export describe` 命令的参考。" +summary: `ticloud serverless export describe` 的参考文档。 --- # ticloud serverless export describe @@ -11,7 +11,7 @@ summary: "`ticloud serverless export describe` 命令的参考。" ticloud serverless export describe [flags] ``` -或使用以下别名命令: +或者使用以下别名命令: ```shell ticloud serverless export get [flags] @@ -19,36 +19,36 @@ ticloud serverless export get [flags] ## 示例 -在交互模式下获取导出信息: +以交互模式获取导出信息: ```shell ticloud serverless export describe ``` -在非交互模式下获取导出信息: +以非交互模式获取导出信息: ```shell ticloud serverless export describe -c -e ``` -## 参数标志 +## 参数说明 -在非交互模式下,你需要手动输入必需的参数标志。在交互模式下,你可以按照 CLI 提示填写它们。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| 参数标志 | 描述 | 是否必需 | 说明 | -|------------------------|-------------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下有效。 | -| -e, --export-id string | 指定导出任务的 ID。 | 是 | 仅在非交互模式下有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下均有效。 | +| 参数 | 描述 | 是否必需 | 备注 | +|-------------------------|---------------------------------------|----------|------------------------------------------------------| +| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| -e, --export-id string | 指定导出任务的 ID。 | 是 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## 继承的参数标志 +## 继承参数 -| 参数标志 | 描述 | 是否必需 | 说明 | -|----------------------|-----------------------------------------------------------------------------------------------------|----------|--------------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均有效。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均有效。 | +| 参数 | 描述 | 是否必需 | 备注 | +|----------------------|---------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-serverless-export-download.md b/tidb-cloud/ticloud-serverless-export-download.md index 5cfaf19a270ed..fc8bd8ca88907 100644 --- a/tidb-cloud/ticloud-serverless-export-download.md +++ b/tidb-cloud/ticloud-serverless-export-download.md @@ -1,11 +1,11 @@ --- title: ticloud serverless export download -summary: "`ticloud serverless export download` 命令的参考。" +summary: `ticloud serverless export download` 的参考文档。 --- # ticloud serverless export download -将 TiDB Cloud Serverless 集群的导出数据下载到本地存储: +从 TiDB Cloud Serverless 集群下载导出的数据到本地存储: ```shell ticloud serverless export download [flags] @@ -13,39 +13,39 @@ ticloud serverless export download [flags] ## 示例 -在交互模式下下载导出数据: +以交互模式下载导出的数据: ```shell ticloud serverless export download ``` -在非交互模式下下载导出数据: +以非交互模式下载导出的数据: ```shell ticloud serverless export download -c -e ``` -## 参数标志 +## 参数说明 -在非交互模式下,你需要手动输入必需的参数标志。在交互模式下,你可以按照 CLI 提示填写它们。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| 参数标志 | 描述 | 是否必需 | 说明 | -|------------------------|-----------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下有效。 | -| -e, --export-id string | 指定导出任务的 ID。 | 是 | 仅在非交互模式下有效。 | -| --output-path string | 指定保存下载数据的目标路径。如果未指定,数据将下载到当前目录。 | 否 | 仅在非交互模式下有效。 | -| --concurrency int | 指定下载并发数。默认值为 `3`。 | 否 | 在非交互和交互模式下均有效。 | -| --force | 无需确认直接下载导出数据。 | 否 | 在非交互和交互模式下均有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下均有效。 | +| 参数 | 说明 | 是否必需 | 备注 | +|---------------------------|-------------------------------------------------------------------------------------------------------------------|----------|----------------------------------------------------| +| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| -e, --export-id string | 指定导出任务的 ID。 | 是 | 仅在非交互模式下生效。 | +| --output-path string | 指定保存下载数据的目标路径。如果未指定,则数据下载到当前目录。 | 否 | 仅在非交互模式下生效。 | +| --concurrency int | 指定下载并发数。默认值为 `3`。 | 否 | 在非交互和交互模式下均可用。 | +| --force | 无需确认直接下载导出的数据。 | 否 | 在非交互和交互模式下均可用。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## 继承的参数标志 +## 继承参数 -| 参数标志 | 描述 | 是否必需 | 说明 | -|----------------------|-----------------------------------------------------------------------------------------------------|----------|--------------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均有效。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均有效。 | +| 参数 | 说明 | 是否必需 | 备注 | +|-------------------------|------------------------------------------------------------------------------------------------------|----------|----------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-serverless-export-list.md b/tidb-cloud/ticloud-serverless-export-list.md index f76a26fbe26c5..6aeb9ef06275a 100644 --- a/tidb-cloud/ticloud-serverless-export-list.md +++ b/tidb-cloud/ticloud-serverless-export-list.md @@ -1,6 +1,6 @@ --- title: ticloud serverless export list -summary: "`ticloud serverless export list` 命令的参考。" +summary: `ticloud serverless export list` 的参考文档。 --- # ticloud serverless export list @@ -11,7 +11,7 @@ summary: "`ticloud serverless export list` 命令的参考。" ticloud serverless export list [flags] ``` -或使用以下别名命令: +或者使用以下别名命令: ```shell ticloud serverless export ls [flags] @@ -19,42 +19,42 @@ ticloud serverless export ls [flags] ## 示例 -在交互模式下列出所有导出任务: +以交互模式列出所有导出任务: ```shell ticloud serverless export list ``` -在非交互模式下列出指定集群的导出任务: +以非交互模式列出指定集群的导出任务: ```shell ticloud serverless export list -c ``` -在非交互模式下以 JSON 格式列出指定集群的导出任务: +以非交互模式并以 JSON 格式列出指定集群的导出任务: ```shell ticloud serverless export list -c -o json ``` -## 标志 +## 参数说明 -在非交互模式下,你需要手动输入必需的标志。在交互模式下,你只需按照 CLI 提示填写即可。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| 标志 | 描述 | 是否必需 | 注意 | -|-------------------------|--------------------------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下有效。 | -| -o, --output string | 指定输出格式(默认为 `human`)。有效值为 `human` 或 `json`。要获取完整结果,请使用 `json` 格式。 | 否 | 在非交互和交互模式下都有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下都有效。 | +| Flag | 描述 | 是否必需 | 备注 | +|-------------------------|-------------------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| +| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| -o, --output string | 指定输出格式(默认为 `human`)。可选值为 `human` 或 `json`。如需获取完整结果,请使用 `json` 格式。 | 否 | 在非交互和交互模式下均可用。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## 继承的标志 +## 继承参数 -| 标志 | 描述 | 是否必需 | 注意 | -|----------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下都有效。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下都有效。 | +| Flag | 描述 | 是否必需 | 备注 | +|----------------------|-----------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建[议题](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时也欢迎任何贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-serverless-region.md b/tidb-cloud/ticloud-serverless-region.md index eb8a0b4f48a99..4177f27c02f47 100644 --- a/tidb-cloud/ticloud-serverless-region.md +++ b/tidb-cloud/ticloud-serverless-region.md @@ -1,12 +1,12 @@ --- title: ticloud serverless region -summary: "`ticloud serverless region` 命令的参考。" +summary: `ticloud serverless region` 的参考文档。 aliases: ['/tidbcloud/ticloud-serverless-regions'] --- # ticloud serverless region -列出 TiDB Cloud Serverless 的所有可用地域: +列出所有可用于 TiDB Cloud Serverless 的可用区域: ```shell ticloud serverless region [flags] @@ -14,35 +14,35 @@ ticloud serverless region [flags] ## 示例 -列出 TiDB Cloud Serverless 的所有可用地域: +列出所有可用于 TiDB Cloud Serverless 的可用区域: ```shell ticloud serverless region ``` -以 JSON 格式列出 TiDB Cloud Serverless 集群的所有可用地域: +以 JSON 格式列出所有可用于 TiDB Cloud Serverless 集群的可用区域: ```shell ticloud serverless region -o json ``` -## 标志 +## 参数 -在非交互模式下,你需要手动输入必需的标志。在交互模式下,你只需按照 CLI 提示填写即可。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| 标志 | 描述 | 是否必需 | 注意 | +| Flag | Description | Required | Note | |---------------------|--------------------------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| -| -o, --output string | 指定输出格式(默认为 `human`)。有效值为 `human` 或 `json`。要获取完整结果,请使用 `json` 格式。 | 否 | 在非交互和交互模式下都有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下都有效。 | +| -o, --output string | 指定输出格式(默认为 `human`)。有效值为 `human` 或 `json`。如需获取完整结果,请使用 `json` 格式。 | No | 适用于非交互和交互模式。 | +| -h, --help | 显示该命令的帮助信息。 | No | 适用于非交互和交互模式。 | -## 继承的标志 +## 继承参数 -| 标志 | 描述 | 是否必需 | 注意 | +| Flag | Description | Required | Note | |----------------------|--------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下都有效。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下都有效。 | +| --no-color | 禁用输出中的颜色。 | No | 仅适用于非交互模式。在交互模式下,禁用颜色可能无法与某些 UI 组件兼容。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | No | 适用于非交互和交互模式。 | +| -D, --debug | 启用调试模式。 | No | 适用于非交互和交互模式。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建[议题](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-serverless-shell.md b/tidb-cloud/ticloud-serverless-shell.md index 856a3dc68c376..aa81ed0383673 100644 --- a/tidb-cloud/ticloud-serverless-shell.md +++ b/tidb-cloud/ticloud-serverless-shell.md @@ -1,6 +1,6 @@ --- title: ticloud serverless shell -summary: "`ticloud serverless shell` 命令的参考。" +summary: `ticloud serverless shell` 的参考文档。 aliases: ['/tidbcloud/ticloud-connect'] --- @@ -14,49 +14,49 @@ ticloud serverless shell [flags] ## 示例 -在交互模式下连接到 TiDB Cloud Serverless 集群: +以交互模式连接到 TiDB Cloud Serverless 集群: ```shell ticloud serverless shell ``` -在非交互模式下使用默认用户连接到 TiDB Cloud Serverless 集群: +以非交互模式,使用默认用户连接到 TiDB Cloud Serverless 集群: ```shell ticloud serverless shell -c ``` -在非交互模式下使用默认用户和密码连接到 TiDB Cloud Serverless 集群: +以非交互模式,使用默认用户和密码连接到 TiDB Cloud Serverless 集群: ```shell ticloud serverless shell -c --password ``` -在非交互模式下使用指定用户和密码连接到 TiDB Cloud Serverless 集群: +以非交互模式,使用指定用户和密码连接到 TiDB Cloud Serverless 集群: ```shell ticloud serverless shell -c -u --password ``` -## 参数标志 +## 参数说明 -在非交互模式下,你需要手动输入必需的参数标志。在交互模式下,你可以按照 CLI 提示填写它们。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| 参数标志 | 描述 | 是否必需 | 说明 | -|------------------------|-------------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下均有效。 | -| --password | 指定用户的密码。 | 否 | 仅在非交互模式下有效。 | -| -u, --user string | 指定登录用户。 | 否 | 仅在非交互模式下有效。 | +| 参数 | 描述 | 是否必需 | 备注 | +|---------------------------|----------------------------------------|----------|----------------------------------------------------| +| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | +| --password | 指定用户的密码。 | 否 | 仅在非交互模式下生效。 | +| -u, --user string | 指定登录的用户。 | 否 | 仅在非交互模式下生效。 | -## 继承的参数标志 +## 继承参数 -| 参数标志 | 描述 | 是否必需 | 说明 | -|----------------------|-----------------------------------------------------------------------------------------------------|----------|--------------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均有效。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均有效。 | +| 参数 | 描述 | 是否必需 | 备注 | +|-----------------------|-------------------------------------------------------------------------------------------|----------|----------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-serverless-spending-limit.md b/tidb-cloud/ticloud-serverless-spending-limit.md index f1058eb0fcd6c..b696e2883e5ee 100644 --- a/tidb-cloud/ticloud-serverless-spending-limit.md +++ b/tidb-cloud/ticloud-serverless-spending-limit.md @@ -1,11 +1,11 @@ --- title: ticloud serverless spending-limit -summary: "`ticloud serverless spending-limit` 命令的参考。" +summary: `ticloud serverless spending-limit` 的参考文档。 --- # ticloud serverless spending-limit -为 TiDB Cloud Serverless 集群设置每月最大[消费限额](/tidb-cloud/manage-serverless-spend-limit.md): +为 TiDB Cloud Serverless 集群设置每月的最大 [消费限额](/tidb-cloud/manage-serverless-spend-limit.md): ```shell ticloud serverless spending-limit [flags] @@ -13,36 +13,36 @@ ticloud serverless spending-limit [flags] ## 示例 -在交互模式下为 TiDB Cloud Serverless 集群设置消费限额: +以交互模式为 TiDB Cloud Serverless 集群设置消费限额: ```shell ticloud serverless spending-limit ``` -在非交互模式下为 TiDB Cloud Serverless 集群设置消费限额: +以非交互模式为 TiDB Cloud Serverless 集群设置消费限额: ```shell ticloud serverless spending-limit -c --monthly ``` -## 标志 +## 参数说明 -在非交互模式下,你需要手动输入必需的标志。在交互模式下,你只需按照 CLI 提示填写即可。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| 标志 | 描述 | 是否必需 | 说明 | -|-------------------------|-------------------------------------|----------|------------------------------------------| -| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | -| --monthly int32 | 指定每月最大消费限额(以美分为单位)。| 是 | 仅在非交互模式下生效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互模式和交互模式下都有效。 | +| Flag | 描述 | 是否必需 | 备注 | +|-------------------------|----------------------------------------------|----------|----------------------------------------------------| +| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| --monthly int32 | 指定每月最大消费限额(单位为美元分)。 | 是 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## 继承的标志 +## 继承参数 -| 标志 | 描述 | 是否必需 | 说明 | -|----------------------|------------------------------------------------------------------------------------------|----------|-----------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,对某些 UI 组件禁用颜色可能不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互模式和交互模式下都有效。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互模式和交互模式下都有效。 | +| Flag | 描述 | 是否必需 | 备注 | +|----------------------|----------------------------------------------------------------------|----------|----------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-serverless-sql-user-create.md b/tidb-cloud/ticloud-serverless-sql-user-create.md index 3623616c8a1ff..ef1f442d10b47 100644 --- a/tidb-cloud/ticloud-serverless-sql-user-create.md +++ b/tidb-cloud/ticloud-serverless-sql-user-create.md @@ -1,11 +1,11 @@ --- title: ticloud serverless sql-user create -summary: "`ticloud serverless sql-user create` 命令的参考。" +summary: `ticloud serverless sql-user create` 的参考文档。 --- # ticloud serverless sql-user create -创建 TiDB Cloud Serverless SQL 用户: +创建一个 TiDB Cloud Serverless SQL 用户: ```shell ticloud serverless sql-user create [flags] @@ -13,38 +13,38 @@ ticloud serverless sql-user create [flags] ## 示例 -在交互模式下创建 TiDB Cloud Serverless SQL 用户: +以交互模式创建一个 TiDB Cloud Serverless SQL 用户: ```shell ticloud serverless sql-user create ``` -在非交互模式下创建 TiDB Cloud Serverless SQL 用户: +以非交互模式创建一个 TiDB Cloud Serverless SQL 用户: ```shell ticloud serverless sql-user create --user --password --role --cluster-id ``` -## 参数标志 +## 参数说明 -在非交互模式下,你需要手动输入必需的参数标志。在交互模式下,你可以按照 CLI 提示填写它们。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 的提示填写即可。 -| 参数标志 | 描述 | 是否必需 | 说明 | +| 参数 | 描述 | 是否必需 | 备注 | |-------------------------|------------------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下有效。 | -| --password string | 指定 SQL 用户的密码。 | 否 | 仅在非交互模式下有效。 | -| --role strings | 指定 SQL 用户的角色。 | 否 | 仅在非交互模式下有效。 | -| -u, --user string | 指定 SQL 用户的名称。 | 否 | 仅在非交互模式下有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下都可用。 | +| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| --password string | 指定 SQL 用户的密码。 | 否 | 仅在非交互模式下生效。 | +| --role strings | 指定 SQL 用户的角色。 | 否 | 仅在非交互模式下生效。 | +| -u, --user string | 指定 SQL 用户的名称。 | 否 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## 继承的参数标志 +## 继承参数 -| 参数标志 | 描述 | 是否必需 | 说明 | -|----------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下都可用。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下都可用。 | +| 参数 | 描述 | 是否必需 | 备注 | +|----------------------|---------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建一个 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何形式的贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-serverless-sql-user-delete.md b/tidb-cloud/ticloud-serverless-sql-user-delete.md index d923bf0ca7a05..780e101c59b52 100644 --- a/tidb-cloud/ticloud-serverless-sql-user-delete.md +++ b/tidb-cloud/ticloud-serverless-sql-user-delete.md @@ -1,11 +1,11 @@ --- title: ticloud serverless sql-user delete -summary: "`ticloud serverless sql-user delete` 命令的参考。" +summary: `ticloud serverless sql-user delete` 的参考文档。 --- # ticloud serverless sql-user delete -删除 TiDB Cloud Serverless SQL 用户: +删除一个 TiDB Cloud Serverless SQL 用户: ```shell ticloud serverless sql-user delete [flags] @@ -13,36 +13,36 @@ ticloud serverless sql-user delete [flags] ## 示例 -在交互模式下删除 TiDB Cloud Serverless SQL 用户: +以交互模式删除一个 TiDB Cloud Serverless SQL 用户: ```shell ticloud serverless sql-user delete ``` -在非交互模式下删除 TiDB Cloud Serverless SQL 用户: +以非交互模式删除一个 TiDB Cloud Serverless SQL 用户: ```shell ticloud serverless sql-user delete -c --user ``` -## 标志 +## 参数 -在非交互模式下,你需要手动输入必需的标志。在交互模式下,你只需按照 CLI 提示填写即可。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 的提示填写即可。 -| 标志 | 描述 | 是否必需 | 说明 | -|-------------------------|-------------------------------------|----------|------------------------------------------| -| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | -| --force | 删除 SQL 用户时不需要确认。 | 否 | 仅在非交互模式下生效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互模式和交互模式下都有效。 | +| 参数 | 描述 | 是否必需 | 备注 | +|--------------------------|----------------------------------------------|----------|----------------------------------------------| +| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| --force | 无需确认直接删除 SQL 用户。 | 否 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## 继承的标志 +## 继承参数 -| 标志 | 描述 | 是否必需 | 说明 | -|----------------------|------------------------------------------------------------------------------------------|----------|-----------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,对某些 UI 组件禁用颜色可能不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互模式和交互模式下都有效。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互模式和交互模式下都有效。 | +| 参数 | 描述 | 是否必需 | 备注 | +|-----------------------|---------------------------------------------------------------------------------------|----------|--------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建一个 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-serverless-sql-user-list.md b/tidb-cloud/ticloud-serverless-sql-user-list.md index f490aa11a4a62..c23521600fe31 100644 --- a/tidb-cloud/ticloud-serverless-sql-user-list.md +++ b/tidb-cloud/ticloud-serverless-sql-user-list.md @@ -1,6 +1,6 @@ --- title: ticloud serverless sql-user list -summary: "`ticloud serverless sql-user list` 命令的参考。" +summary: `ticloud serverless sql-user list` 的参考文档。 --- # ticloud serverless sql-user list @@ -13,36 +13,36 @@ ticloud serverless sql-user list [flags] ## 示例 -在交互模式下列出 TiDB Cloud Serverless SQL 用户: +以交互模式列出 TiDB Cloud Serverless SQL 用户: ```shell ticloud serverless sql-user list ``` -在非交互模式下列出 TiDB Cloud Serverless SQL 用户: +以非交互模式列出 TiDB Cloud Serverless SQL 用户: ```shell ticloud serverless sql-user list -c ``` -## 参数标志 +## 参数说明 -在非交互模式下,你需要手动输入必需的参数标志。在交互模式下,你可以按照 CLI 提示填写它们。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| 参数标志 | 描述 | 是否必需 | 说明 | -|-------------------------|-------------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下有效。 | -| -o, --output string | 指定输出格式,可选值为 ["human" "json"]。要获取完整结果,请使用 "json" 格式。(默认为 "human")。 | 否 | 仅在非交互模式下有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下都可用。 | +| 参数 | 描述 | 是否必需 | 备注 | +|---------------------------|--------------------------------------------------------------------------------------------------------|----------|----------------------------------------------------| +| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| -o, --output string | 指定输出格式,可选值为 ["human" "json"]。若需完整结果,请使用 "json" 格式。(默认值为 "human") | 否 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## 继承的参数标志 +## 继承参数 -| 参数标志 | 描述 | 是否必需 | 说明 | -|----------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下都可用。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下都可用。 | +| 参数 | 描述 | 是否必需 | 备注 | +|-------------------------|-----------------------------------------------------------------------------------------------|----------|--------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建一个 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何形式的贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-serverless-sql-user-update.md b/tidb-cloud/ticloud-serverless-sql-user-update.md index f233dc0315930..df569382621e5 100644 --- a/tidb-cloud/ticloud-serverless-sql-user-update.md +++ b/tidb-cloud/ticloud-serverless-sql-user-update.md @@ -1,6 +1,6 @@ --- title: ticloud serverless sql-user update -summary: "`ticloud serverless sql-user update` 命令的参考。" +summary: `ticloud serverless sql-user update` 的参考文档。 --- # ticloud serverless sql-user update @@ -13,40 +13,40 @@ ticloud serverless sql-user update [flags] ## 示例 -在交互模式下更新 TiDB Cloud Serverless SQL 用户: +以交互模式更新 TiDB Cloud Serverless SQL 用户: ```shell ticloud serverless sql-user update ``` -在非交互模式下更新 TiDB Cloud Serverless SQL 用户: +以非交互模式更新 TiDB Cloud Serverless SQL 用户: ```shell ticloud serverless sql-user update -c --user --password --role ``` -## 参数标志 +## 参数说明 -在非交互模式下,你需要手动输入必需的参数标志。在交互模式下,你可以按照 CLI 提示填写它们。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| 参数标志 | 描述 | 是否必需 | 说明 | -|------------------------|-----------------------------------------------------------------------------------------------------|----------|------------------------------------------------------| -| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下有效。 | -| --password string | 指定 SQL 用户的新密码。 | 否 | 仅在非交互模式下有效。 | -| --role strings | 指定 SQL 用户的新角色。使用此标志会替换现有角色。 | 否 | 仅在非交互模式下有效。 | -| --add-role strings | 指定要添加给 SQL 用户的角色。 | 否 | 仅在非交互模式下有效。 | -| --delete-role strings | 指定要从 SQL 用户中删除的角色。 | 否 | 仅在非交互模式下有效。 | -| -u, --user string | 指定要更新的 SQL 用户的名称。 | 否 | 仅在非交互模式下有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下均有效。 | +| 参数 | 描述 | 是否必需 | 备注 | +|---------------------------|----------------------------------------------------------------------|----------|----------------------------------------------------| +| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| --password string | 指定 SQL 用户的新密码。 | 否 | 仅在非交互模式下生效。 | +| --role strings | 指定 SQL 用户的新角色。传递该参数会替换现有角色。 | 否 | 仅在非交互模式下生效。 | +| --add-role strings | 指定要添加给 SQL 用户的角色。 | 否 | 仅在非交互模式下生效。 | +| --delete-role strings | 指定要从 SQL 用户中删除的角色。 | 否 | 仅在非交互模式下生效。 | +| -u, --user string | 指定要更新的 SQL 用户名。 | 否 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## 继承的参数标志 +## 继承参数 -| 参数标志 | 描述 | 是否必需 | 说明 | -|----------------------|-----------------------------------------------------------------------------------------------------|----------|--------------------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令中使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均有效。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均有效。 | +| 参数 | 描述 | 是否必需 | 备注 | +|-----------------------|-------------------------------------------------------------------------------------------|----------|----------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。我们也欢迎任何形式的贡献。 \ No newline at end of file diff --git a/tidb-cloud/ticloud-serverless-update.md b/tidb-cloud/ticloud-serverless-update.md index 0f779984d7398..fea2c8eed87b7 100644 --- a/tidb-cloud/ticloud-serverless-update.md +++ b/tidb-cloud/ticloud-serverless-update.md @@ -1,11 +1,11 @@ --- title: ticloud serverless update -summary: "`ticloud serverless update` 命令的参考文档。" +summary: `ticloud serverless update` 的参考文档。 --- # ticloud serverless update -更新 TiDB Cloud Serverless 集群: +更新一个 TiDB Cloud Serverless 集群: ```shell ticloud serverless update [flags] @@ -13,44 +13,44 @@ ticloud serverless update [flags] ## 示例 -在交互模式下更新 TiDB Cloud Serverless 集群: +以交互模式更新一个 TiDB Cloud Serverless 集群: ```shell ticloud serverless update ``` -在非交互模式下更新 TiDB Cloud Serverless 集群的名称: +以非交互模式更新 TiDB Cloud Serverless 集群的名称: ```shell ticloud serverless update -c --display-name ``` -在非交互模式下更新 TiDB Cloud Serverless 集群的标签: +以非交互模式更新 TiDB Cloud Serverless 集群的标签: ```shell ticloud serverless update -c --labels "{\"label1\":\"value1\"}" ``` -## 参数标志 +## 参数 -在非交互模式下,你需要手动输入必需的参数标志。在交互模式下,你可以按照 CLI 提示填写这些信息。 +在非交互模式下,你需要手动输入所需的参数。在交互模式下,你只需按照 CLI 提示填写即可。 -| 参数标志 | 描述 | 是否必需 | 说明 | -|---------------------------|--------------------------------|----------|-------------------------------------| -| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下有效。 | -| -n --display-name string | 指定集群的新名称。 | 否 | 仅在非交互模式下有效。 | -| --labels string | 指定集群的新标签。 | 否 | 仅在非交互模式下有效。 | -| --disable-public-endpoint | 禁用集群的公共端点。 | 否 | 仅在非交互模式下有效。 | -| -h, --help | 显示此命令的帮助信息。 | 否 | 在非交互和交互模式下均可使用。 | +| 参数 | 描述 | 是否必需 | 备注 | +|-----------------------------|----------------------------------------------|----------|----------------------------------------------------| +| -c, --cluster-id string | 指定集群的 ID。 | 是 | 仅在非交互模式下生效。 | +| -n --display-name string | 指定集群的新名称。 | 否 | 仅在非交互模式下生效。 | +| --labels string | 指定集群的新标签。 | 否 | 仅在非交互模式下生效。 | +| --disable-public-endpoint | 禁用集群的公共访问端点。 | 否 | 仅在非交互模式下生效。 | +| -h, --help | 显示该命令的帮助信息。 | 否 | 在非交互和交互模式下均可用。 | -## 继承的参数标志 +## 继承参数 -| 参数标志 | 描述 | 是否必需 | 说明 | -|----------------------|----------------------------------------------------------------------------------------|----------|-------------------------------------------------------------------------------------------| -| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下有效。在交互模式下,禁用颜色可能对某些 UI 组件不起作用。 | -| -P, --profile string | 指定此命令使用的活动[用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可使用。 | -| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可使用。 | +| 参数 | 描述 | 是否必需 | 备注 | +|------------------------|---------------------------------------------------------------------------------------|----------|----------------------------------------------------------------------------------------| +| --no-color | 禁用输出中的颜色。 | 否 | 仅在非交互模式下生效。在交互模式下,禁用颜色可能会影响部分 UI 组件的显示。 | +| -P, --profile string | 指定该命令使用的活动 [用户配置文件](/tidb-cloud/cli-reference.md#user-profile)。 | 否 | 在非交互和交互模式下均可用。 | +| -D, --debug | 启用调试模式。 | 否 | 在非交互和交互模式下均可用。 | ## 反馈 -如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何形式的贡献。 +如果你对 TiDB Cloud CLI 有任何问题或建议,欢迎创建 [issue](https://github.com/tidbcloud/tidbcloud-cli/issues/new/choose)。同时,我们也欢迎任何贡献。 \ No newline at end of file diff --git a/tidb-cloud/tidb-cloud-auditing.md b/tidb-cloud/tidb-cloud-auditing.md index 06f65f555e90d..9c80d101cf825 100644 --- a/tidb-cloud/tidb-cloud-auditing.md +++ b/tidb-cloud/tidb-cloud-auditing.md @@ -1,69 +1,69 @@ --- -title: 数据库审计日志 +title: TiDB Cloud 专属数据库审计日志 summary: 了解如何在 TiDB Cloud 中审计集群。 --- -# 数据库审计日志 +# TiDB Cloud 专属数据库审计日志 -TiDB Cloud 提供数据库审计日志功能,可以在日志中记录用户访问详情的历史记录(例如执行的任何 SQL 语句)。 +TiDB Cloud 为你提供了数据库审计日志功能,用于在日志中记录用户访问的详细历史(如执行的 SQL 语句等)。 > **注意:** > -> 目前,数据库审计日志功能仅供申请使用。要申请此功能,请点击 [TiDB Cloud 控制台](https://tidbcloud.com)右下角的 **?**,然后点击 **Request Support**。然后,在 **Description** 字段中填写"申请数据库审计日志",并点击 **Submit**。 +> 目前,数据库审计日志功能仅支持按需开通。如需申请该功能,请点击 [TiDB Cloud 控制台](https://tidbcloud.com) 右下角的 **?**,然后点击 **Request Support**。在 **Description** 字段填写 “Apply for database audit logging”,并点击 **Submit**。 -为了评估组织的用户访问策略和其他信息安全措施的有效性,定期分析数据库审计日志是一种安全最佳实践。 +为了评估你所在组织的用户访问策略及其他信息安全措施的有效性,定期分析数据库审计日志是一项安全最佳实践。 -审计日志功能默认是禁用的。要审计集群,你需要先启用审计日志,然后指定审计过滤规则。 +审计日志功能默认处于关闭状态。要对集群进行审计,需先启用审计日志功能,并指定审计过滤规则。 > **注意:** > -> 由于审计日志会消耗集群资源,请谨慎考虑是否对集群进行审计。 +> 由于审计日志会消耗集群资源,请谨慎决定是否对集群进行审计。 ## 前提条件 -- 你正在使用 TiDB Cloud Dedicated 集群。TiDB Cloud Serverless 集群不支持审计日志。 -- 你是组织的 `Organization Owner` 或 `Project Owner` 角色。否则,你将无法在 TiDB Cloud 控制台中看到数据库审计相关选项。有关更多信息,请参见[用户角色](/tidb-cloud/manage-user-access.md#用户角色)。 +- 你正在使用 TiDB Cloud 专属集群。审计日志功能不支持 TiDB Cloud Serverless 集群。 +- 你拥有组织的 `Organization Owner` 或 `Project Owner` 角色。否则,你无法在 TiDB Cloud 控制台中看到数据库审计相关选项。详情请参见 [用户角色](/tidb-cloud/manage-user-access.md#user-roles)。 ## 启用审计日志 -TiDB Cloud 支持将 TiDB Cloud Dedicated 集群的审计日志记录到你的云存储服务中。在启用数据库审计日志之前,请在集群所在的云服务提供商上配置你的云存储服务。 +TiDB Cloud 支持将 TiDB Cloud 专属集群的审计日志记录到你的云存储服务。在启用数据库审计日志前,请先在集群所在的云服务商上配置你的云存储服务。 > **注意:** > -> 对于部署在 AWS 上的 TiDB 集群,你可以在启用数据库审计日志时选择将审计日志文件存储在 TiDB Cloud 中。目前,此功能仅供申请使用。要申请此功能,请点击 [TiDB Cloud 控制台](https://tidbcloud.com)右下角的 **?**,然后点击 **Request Support**。然后,在 **Description** 字段中填写"申请将审计日志文件存储在 TiDB Cloud 中",并点击 **Submit**。 +> 对于部署在 AWS 上的 TiDB 集群,启用数据库审计日志时,你可以选择将审计日志文件存储在 TiDB Cloud。目前,该功能仅支持按需开通。如需申请该功能,请点击 [TiDB Cloud 控制台](https://tidbcloud.com) 右下角的 **?**,然后点击 **Request Support**。在 **Description** 字段填写 “Apply to store audit log files in TiDB Cloud”,并点击 **Submit**。 -### 为 AWS 启用审计日志 +### 在 AWS 上启用审计日志 -要为 AWS 启用审计日志,请执行以下步骤: +要在 AWS 上启用审计日志,请按照以下步骤操作: #### 步骤 1. 创建 Amazon S3 存储桶 -在你公司拥有的 AWS 账号中指定一个 Amazon S3 存储桶作为 TiDB Cloud 写入审计日志的目标位置。 +在你公司拥有的 AWS 账号中指定一个 Amazon S3 存储桶,作为 TiDB Cloud 写入审计日志的目标位置。 > 注意: > -> 不要在 AWS S3 存储桶上启用对象锁定。启用对象锁定将阻止 TiDB Cloud 将审计日志文件推送到 S3。 +> 不要在 AWS S3 存储桶上启用对象锁定(object lock)。启用对象锁定会阻止 TiDB Cloud 向 S3 推送审计日志文件。 -有关更多信息,请参见 AWS 用户指南中的[创建存储桶](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html)。 +更多信息请参见 AWS 用户指南中的 [创建存储桶](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html)。 #### 步骤 2. 配置 Amazon S3 访问权限 -1. 获取你要启用审计日志的 TiDB 集群的 TiDB Cloud 账号 ID 和外部 ID。 +1. 获取你要启用审计日志的 TiDB 集群的 TiDB Cloud Account ID 和 External ID。 - 1. 在 TiDB Cloud 控制台中,导航到项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 + 1. 在 TiDB Cloud 控制台,进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击 **Settings** > **DB Audit Logging**。 + 2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Settings** > **DB Audit Logging**。 3. 在 **DB Audit Logging** 页面,点击右上角的 **Enable**。 - 4. 在 **Enable Database Audit Logging** 对话框中,找到 **AWS IAM Policy Settings** 部分,记录 **TiDB Cloud Account ID** 和 **TiDB Cloud External ID** 以供后续使用。 + 4. 在 **Enable Database Audit Logging** 对话框中,找到 **AWS IAM Policy Settings** 部分,记录下 **TiDB Cloud Account ID** 和 **TiDB Cloud External ID**,以备后用。 -2. 在 AWS 管理控制台中,转到 **IAM** > **Access Management** > **Policies**,然后检查是否存在具有 `s3:PutObject` 只写权限的存储桶策略。 +2. 在 AWS 管理控制台,进入 **IAM** > **Access Management** > **Policies**,检查是否已有带有 `s3:PutObject` 写入权限的存储桶策略。 - - 如果存在,记录匹配的存储桶策略以供后续使用。 - - 如果不存在,转到 **IAM** > **Access Management** > **Policies** > **Create Policy**,并根据以下策略模板定义存储桶策略。 + - 如果有,记录匹配的存储桶策略以备后用。 + - 如果没有,进入 **IAM** > **Access Management** > **Policies** > **Create Policy**,并根据以下策略模板定义存储桶策略。 ```json { @@ -78,259 +78,259 @@ TiDB Cloud 支持将 TiDB Cloud Dedicated 集群的审计日志记录到你的 } ``` - 在模板中,`` 是要写入审计日志文件的 S3 存储桶的 Amazon 资源名称(ARN)。你可以转到 S3 存储桶的 **Properties** 标签页,在 **Bucket Overview** 区域获取 ARN 值。在 `"Resource"` 字段中,你需要在 ARN 后添加 `/*`。例如,如果 ARN 是 `arn:aws:s3:::tidb-cloud-test`,你需要将 `"Resource"` 字段的值配置为 `"arn:aws:s3:::tidb-cloud-test/*"`。 + 在模板中,`` 是你 S3 存储桶的 Amazon 资源名称(ARN),即审计日志文件将被写入的存储桶。你可以在 S3 存储桶的 **Properties** 标签页的 **Bucket Overview** 区域获取 ARN 值。在 `"Resource"` 字段中,需要在 ARN 后加上 `/*`。例如,如果 ARN 为 `arn:aws:s3:::tidb-cloud-test`,则 `"Resource"` 字段的值应为 `"arn:aws:s3:::tidb-cloud-test/*"`。 -3. 转到 **IAM** > **Access Management** > **Roles**,然后检查是否已存在一个信任实体对应于你之前记录的 TiDB Cloud 账号 ID 和外部 ID 的角色。 +3. 进入 **IAM** > **Access Management** > **Roles**,检查是否已存在信任实体为你之前记录的 TiDB Cloud Account ID 和 External ID 的角色。 - - 如果存在,记录匹配的角色以供后续使用。 - - 如果不存在,点击 **Create role**,选择 **Another AWS account** 作为信任实体类型,然后在 **Account ID** 字段中输入 TiDB Cloud 账号 ID 值。然后,选择 **Require External ID** 选项,并在 **External ID** 字段中输入 TiDB Cloud 外部 ID 值。 + - 如果有,记录匹配的角色以备后用。 + - 如果没有,点击 **Create role**,选择 **Another AWS account** 作为信任实体类型,然后在 **Account ID** 字段输入 TiDB Cloud Account ID。在 **Require External ID** 选项中输入 TiDB Cloud External ID。 -4. 在 **IAM** > **Access Management** > **Roles** 中,点击上一步中的角色名称进入 **Summary** 页面,然后执行以下步骤: +4. 在 **IAM** > **Access Management** > **Roles**,点击上一步的角色名称进入 **Summary** 页面,然后按以下步骤操作: - 1. 在 **Permissions** 标签页下,检查是否已将具有 `s3:PutObject` 只写权限的记录策略附加到角色。如果没有,选择 **Attach Policies**,搜索所需策略,然后点击 **Attach Policy**。 - 2. 返回 **Summary** 页面并复制 **Role ARN** 值到剪贴板。 + 1. 在 **Permissions** 标签页,检查该角色是否已附加带有 `s3:PutObject` 写入权限的策略。如果没有,选择 **Attach Policies**,搜索所需策略,然后点击 **Attach Policy**。 + 2. 返回 **Summary** 页面,复制 **Role ARN** 的值到剪贴板。 #### 步骤 3. 启用审计日志 -在 TiDB Cloud 控制台中,返回获取 TiDB Cloud 账号 ID 和外部 ID 值的 **Enable Database Audit Logging** 对话框,然后执行以下步骤: +在 TiDB Cloud 控制台,返回你获取 TiDB Cloud Account ID 和 External ID 的 **Enable Database Audit Logging** 对话框,然后按以下步骤操作: -1. 在 **Bucket URI** 字段中,输入要写入审计日志文件的 S3 存储桶的 URI。 +1. 在 **Bucket URI** 字段,输入你 S3 存储桶的 URI,即审计日志文件将被写入的位置。 2. 在 **Bucket Region** 下拉列表中,选择存储桶所在的 AWS 区域。 -3. 在 **Role ARN** 字段中,填入你在[步骤 2. 配置 Amazon S3 访问权限](#步骤-2-配置-amazon-s3-访问权限)中复制的 Role ARN 值。 -4. 点击 **Test Connection** 验证 TiDB Cloud 是否可以访问和写入存储桶。 +3. 在 **Role ARN** 字段,填写你在 [步骤 2. 配置 Amazon S3 访问权限](#step-2-configure-amazon-s3-access) 中复制的 Role ARN。 +4. 点击 **Test Connection**,验证 TiDB Cloud 是否可以访问并写入该存储桶。 - 如果成功,将显示 **The connection is successfully**。否则,请检查你的访问配置。 + 如果连接成功,会显示 **The connection is successfully**。否则,请检查你的访问配置。 -5. 点击 **Enable** 为集群启用审计日志。 +5. 点击 **Enable**,为集群启用审计日志。 TiDB Cloud 已准备好将指定集群的审计日志写入你的 Amazon S3 存储桶。 > **注意:** > -> - 启用审计日志后,如果你对存储桶 URI、位置或 ARN 进行任何新的更改,必须再次点击 **Test Connection** 以验证 TiDB Cloud 是否可以连接到存储桶。然后,点击 **Enable** 应用更改。 -> - 要移除 TiDB Cloud 对 Amazon S3 的访问权限,只需在 AWS 管理控制台中删除授予此集群的信任策略即可。 +> - 启用审计日志后,如果你对存储桶 URI、位置或 ARN 做了任何更改,必须再次点击 **Test Connection** 验证 TiDB Cloud 是否可以连接到存储桶。然后点击 **Enable** 应用更改。 +> - 若要移除 TiDB Cloud 对你 Amazon S3 的访问权限,只需在 AWS 管理控制台中删除授予该集群的信任策略。 -### 为 Google Cloud 启用审计日志 +### 在 Google Cloud 上启用审计日志 -要为 Google Cloud 启用审计日志,请执行以下步骤: +要在 Google Cloud 上启用审计日志,请按照以下步骤操作: #### 步骤 1. 创建 GCS 存储桶 -在你公司拥有的 Google Cloud 账号中指定一个 Google Cloud Storage (GCS) 存储桶作为 TiDB Cloud 写入审计日志的目标位置。 +在你公司拥有的 Google Cloud 账号中指定一个 Google Cloud Storage (GCS) 存储桶,作为 TiDB Cloud 写入审计日志的目标位置。 -有关更多信息,请参见 Google Cloud Storage 文档中的[创建存储桶](https://cloud.google.com/storage/docs/creating-buckets)。 +更多信息请参见 Google Cloud Storage 文档中的 [创建存储桶](https://cloud.google.com/storage/docs/creating-buckets)。 #### 步骤 2. 配置 GCS 访问权限 -1. 获取你要启用审计日志的 TiDB 集群的 Google Cloud 服务账号 ID。 +1. 获取你要启用审计日志的 TiDB 集群的 Google Cloud Service Account ID。 - 1. 在 TiDB Cloud 控制台中,导航到项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 + 1. 在 TiDB Cloud 控制台,进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击 **Settings** > **DB Audit Logging**。 + 2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Settings** > **DB Audit Logging**。 3. 在 **DB Audit Logging** 页面,点击右上角的 **Enable**。 - 4. 在 **Enable Database Audit Logging** 对话框中,找到 **Google Cloud Server Account ID** 部分,记录 **Service Account ID** 以供后续使用。 + 4. 在 **Enable Database Audit Logging** 对话框中,找到 **Google Cloud Server Account ID** 部分,记录下 **Service Account ID**,以备后用。 -2. 在 Google Cloud 控制台中,转到 **IAM & Admin** > **Roles**,然后检查是否存在具有以下存储容器只写权限的角色。 +2. 在 Google Cloud 控制台,进入 **IAM & Admin** > **Roles**,检查是否存在具有以下存储容器写入权限的角色。 - storage.objects.create - storage.objects.delete - 如果存在,为 TiDB 集群记录匹配的角色以供后续使用。如果不存在,转到 **IAM & Admin** > **Roles** > **CREATE ROLE** 为 TiDB 集群定义角色。 + 如果有,记录该角色以备 TiDB 集群使用。如果没有,进入 **IAM & Admin** > **Roles** > **CREATE ROLE**,为 TiDB 集群定义一个角色。 -3. 转到 **Cloud Storage** > **Browser**,选择你想要 TiDB Cloud 访问的 GCS 存储桶,然后点击 **SHOW INFO PANEL**。 +3. 进入 **Cloud Storage** > **Browser**,选择你希望 TiDB Cloud 访问的 GCS 存储桶,然后点击 **SHOW INFO PANEL**。 - 面板将显示。 + 信息面板将显示。 4. 在面板中,点击 **ADD PRINCIPAL**。 - 将显示添加主体的对话框。 + 添加主体的对话框将显示。 -5. 在对话框中,执行以下步骤: +5. 在对话框中,按以下步骤操作: - 1. 在 **New Principals** 字段中,粘贴 TiDB 集群的 Google Cloud 服务账号 ID。 + 1. 在 **New Principals** 字段,粘贴 TiDB 集群的 Google Cloud Service Account ID。 2. 在 **Role** 下拉列表中,选择目标 TiDB 集群的角色。 3. 点击 **SAVE**。 #### 步骤 3. 启用审计日志 -在 TiDB Cloud 控制台中,返回获取 TiDB Cloud 账号 ID 的 **Enable Database Audit Logging** 对话框,然后执行以下步骤: +在 TiDB Cloud 控制台,返回你获取 TiDB Cloud Account ID 的 **Enable Database Audit Logging** 对话框,然后按以下步骤操作: -1. 在 **Bucket URI** 字段中,输入你的完整 GCS 存储桶名称。 -2. 在 **Bucket Region** 字段中,选择存储桶所在的 GCS 区域。 -3. 点击 **Test Connection** 验证 TiDB Cloud 是否可以访问和写入存储桶。 +1. 在 **Bucket URI** 字段,输入你的完整 GCS 存储桶名称。 +2. 在 **Bucket Region** 字段,选择存储桶所在的 GCS 区域。 +3. 点击 **Test Connection**,验证 TiDB Cloud 是否可以访问并写入该存储桶。 - 如果成功,将显示 **The connection is successfully**。否则,请检查你的访问配置。 + 如果连接成功,会显示 **The connection is successfully**。否则,请检查你的访问配置。 -4. 点击 **Enable** 为集群启用审计日志。 +4. 点击 **Enable**,为集群启用审计日志。 TiDB Cloud 已准备好将指定集群的审计日志写入你的 GCS 存储桶。 > **注意:** > -> - 启用审计日志后,如果你对存储桶 URI 或位置进行任何新的更改,必须再次点击 **Test Connection** 以验证 TiDB Cloud 是否可以连接到存储桶。然后,点击 **Enable** 应用更改。 -> - 要移除 TiDB Cloud 对 GCS 存储桶的访问权限,请在 Google Cloud 控制台中删除授予此集群的信任策略。 +> - 启用审计日志后,如果你对存储桶 URI 或位置做了任何更改,必须再次点击 **Test Connection** 验证 TiDB Cloud 是否可以连接到存储桶。然后点击 **Enable** 应用更改。 +> - 若要移除 TiDB Cloud 对你 GCS 存储桶的访问权限,请在 Google Cloud 控制台中删除授予该集群的信任策略。 -### 为 Azure 启用审计日志 +### 在 Azure 上启用审计日志 -要为 Azure 启用审计日志,请执行以下步骤: +要在 Azure 上启用审计日志,请按照以下步骤操作: -#### 步骤 1. 创建 Azure 存储账号 +#### 步骤 1. 创建 Azure 存储账户 -在你组织的 Azure 订阅中创建一个 Azure 存储账号作为 TiDB Cloud 写入数据库审计日志的目标位置。 +在你组织的 Azure 订阅下创建一个 Azure 存储账户,作为 TiDB Cloud 写入数据库审计日志的目标位置。 -有关更多信息,请参见 Azure 文档中的[创建 Azure 存储账号](https://learn.microsoft.com/en-us/azure/storage/common/storage-account-create?tabs=azure-portal)。 +更多信息请参见 Azure 文档中的 [创建 Azure 存储账户](https://learn.microsoft.com/en-us/azure/storage/common/storage-account-create?tabs=azure-portal)。 -#### 步骤 2. 配置 Azure Blob 存储访问权限 +#### 步骤 2. 配置 Azure Blob Storage 访问权限 -1. 在 [Azure 门户](https://portal.azure.com/)中,创建用于存储数据库审计日志的容器。 +1. 在 [Azure 门户](https://portal.azure.com/) 中,创建用于存储数据库审计日志的容器。 - 1. 在 Azure 门户的左侧导航栏中,点击 **Storage Accounts**,然后点击用于存储数据库审计日志的存储账号。 + 1. 在 Azure 门户左侧导航栏点击 **Storage Accounts**,然后点击用于存储数据库审计日志的存储账户。 > **提示:** > - > 如果左侧导航栏被隐藏,点击左上角的菜单按钮切换其可见性。 + > 如果左侧导航栏被隐藏,可点击左上角菜单按钮切换其显示。 - 2. 在所选存储账号的导航栏中,点击 **Data storage > Containers**,然后点击 **+ Container** 打开 **New container** 窗格。 + 2. 在所选存储账户的导航栏中,点击 **Data storage > Containers**,然后点击 **+ Container** 打开 **New container** 面板。 - 3. 在 **New container** 窗格中,输入新容器的名称,设置匿名访问级别(推荐级别是 **Private**,表示无匿名访问),然后点击 **Create**。新容器将在几秒钟内创建并显示在容器列表中。 + 3. 在 **New container** 面板中,输入新容器的名称,设置匿名访问级别(推荐级别为 **Private**,即不允许匿名访问),然后点击 **Create**。几秒钟后,新容器会被创建并显示在容器列表中。 2. 获取目标容器的 URL。 - 1. 在容器列表中,选择目标容器,点击容器的 **...**,然后选择 **Container properties**。 - 2. 在显示的属性页面上,复制 **URL** 值以供后续使用,然后返回容器列表。 + 1. 在容器列表中,选中目标容器,点击容器的 **...**,然后选择 **Container properties**。 + 2. 在显示的属性页面,复制 **URL** 的值以备后用,然后返回容器列表。 -3. 为目标容器生成 SAS 令牌。 +3. 为目标容器生成 SAS token。 - 1. 在容器列表中,选择目标容器,点击容器的 **...**,然后选择 **Generate SAS**。 - 2. 在显示的 **Generate SAS** 窗格中,为 **Signing method** 选择 **Account key**。 - 3. 在 **Permissions** 下拉列表中,选择 **Read**、**Write** 和 **Create** 以允许写入审计日志文件。 - 4. 在 **Start** 和 **Expiry** 字段中,指定 SAS 令牌的有效期。 + 1. 在容器列表中,选中目标容器,点击容器的 **...**,然后选择 **Generate SAS**。 + 2. 在显示的 **Generate SAS** 面板中,**Signing method** 选择 **Account key**。 + 3. 在 **Permissions** 下拉列表中,选择 **Read**、**Write** 和 **Create**,以允许写入审计日志文件。 + 4. 在 **Start** 和 **Expiry** 字段,指定 SAS token 的有效期。 > **注意:** > - > - 审计功能需要持续将审计日志写入存储账号,因此 SAS 令牌必须具有足够长的有效期。但是,较长的有效期会增加令牌泄露的风险。为了安全起见,建议每六到十二个月更换一次 SAS 令牌。 - > - 生成的 SAS 令牌无法撤销,因此你需要谨慎设置其有效期。 - > - 确保在令牌过期之前重新生成并更新 SAS 令牌,以确保审计日志的持续可用性。 + > - 审计功能需要持续向存储账户写入审计日志,因此 SAS token 必须有足够长的有效期。但有效期越长,token 泄露的风险越大。为安全起见,建议每 6 到 12 个月更换一次 SAS token。 + > - 生成的 SAS token 无法撤销,因此需要谨慎设置其有效期。 + > - 请确保在 SAS token 过期前重新生成并更新 token,以保证审计日志的持续可用性。 - 5. 对于 **Allowed protocols**,选择 **HTTPS only** 以确保安全访问。 - 6. 点击 **Generate SAS token and URL**,然后复制显示的 **Blob SAS token** 以供后续使用。 + 5. **Allowed protocols** 选择 **HTTPS only**,以确保安全访问。 + 6. 点击 **Generate SAS token and URL**,然后复制显示的 **Blob SAS token** 以备后用。 #### 步骤 3. 启用审计日志 -1. 在 TiDB Cloud 控制台中,导航到项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 +1. 在 TiDB Cloud 控制台,进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 > **提示:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 -2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击 **Settings** > **DB Audit Logging**。 +2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Settings** > **DB Audit Logging**。 3. 在 **DB Audit Logging** 页面,点击右上角的 **Enable**。 -4. 在 **Enable Database Audit Logging** 对话框中,提供从[步骤 2. 配置 Azure Blob 访问权限](#步骤-2-配置-azure-blob-存储访问权限)获取的 blob URL 和 SAS 令牌: +4. 在 **Enable Database Audit Logging** 对话框中,填写你在 [步骤 2. 配置 Azure Blob 访问权限](#step-2-configure-azure-blob-storage-access) 获取的 blob URL 和 SAS token: - - 在 **Blob URL** 字段中,输入存储审计日志的容器的 URL。 - - 在 **SAS Token** 字段中,输入用于访问容器的 SAS 令牌。 + - 在 **Blob URL** 字段,输入存储审计日志的容器 URL。 + - 在 **SAS Token** 字段,输入访问该容器的 SAS token。 -5. 点击 **Test Connection** 验证 TiDB Cloud 是否可以访问和写入容器。 +5. 点击 **Test Connection**,验证 TiDB Cloud 是否可以访问并写入该容器。 - 如果成功,将显示 **The connection is successfully**。否则,请检查你的访问配置。 + 如果连接成功,会显示 **The connection is successfully**。否则,请检查你的访问配置。 -6. 点击 **Enable** 为集群启用审计日志。 +6. 点击 **Enable**,为集群启用审计日志。 TiDB Cloud 已准备好将指定集群的审计日志写入你的 Azure blob 容器。 > **注意:** > -> 启用审计日志后,如果你对 **Blob URL** 或 **SAS Token** 字段进行新的更改,必须再次点击 **Test Connection** 以验证 TiDB Cloud 是否可以连接到容器。然后,点击 **Enable** 应用更改。 +> 启用审计日志后,如果你对 **Blob URL** 或 **SAS Token** 字段做了更改,必须再次点击 **Test Connection** 验证 TiDB Cloud 是否可以连接到容器。然后点击 **Enable** 应用更改。 ## 指定审计过滤规则 -启用审计日志后,你必须指定审计过滤规则来控制要捕获并写入审计日志的用户访问事件。如果未指定过滤规则,TiDB Cloud 不会记录任何内容。 +启用审计日志后,你必须指定审计过滤规则,以控制捕获哪些用户访问事件并写入审计日志。如果未指定过滤规则,TiDB Cloud 不会记录任何日志。 -要为集群指定审计过滤规则,请执行以下步骤: +为集群指定审计过滤规则,请按以下步骤操作: -1. 在 **DB Audit Logging** 页面的 **Log Filter Rules** 部分,点击 **Add Filter Rule** 添加审计过滤规则。 +1. 在 **DB Audit Logging** 页面,点击 **Add Filter Rule**,在 **Log Filter Rules** 区域添加一条审计过滤规则。 - 你一次可以添加一个审计规则。每个规则指定一个用户表达式、数据库表达式、表表达式和访问类型。你可以添加多个审计规则以满足你的审计要求。 + 你一次只能添加一条审计规则。每条规则需指定用户表达式、数据库表达式、表表达式和访问类型。你可以添加多条审计规则以满足你的审计需求。 -2. 在 **Log Filter Rules** 部分,点击 **>** 展开并查看你已添加的审计规则列表。 +2. 在 **Log Filter Rules** 区域,点击 **>** 展开并查看你已添加的审计规则列表。 > **注意:** > -> - 过滤规则是正则表达式且区分大小写。如果使用通配符规则 `.*`,将记录集群中所有用户、数据库或表事件。 -> - 由于审计日志会消耗集群资源,请谨慎指定过滤规则。为了最小化消耗,建议你指定过滤规则以尽可能将审计日志的范围限制在特定的数据库对象、用户和操作上。 +> - 过滤规则为正则表达式,且区分大小写。如果你使用通配规则 `.*`,则集群中所有用户、数据库或表事件都会被记录。 +> - 由于审计日志会消耗集群资源,指定过滤规则时请谨慎。为最小化资源消耗,建议尽量通过过滤规则限定审计日志的范围,仅针对特定数据库对象、用户和操作进行审计。 ## 查看审计日志 -默认情况下,TiDB Cloud 将数据库审计日志文件存储在你的存储服务中,因此你需要从你的存储服务中读取审计日志信息。 +默认情况下,TiDB Cloud 会将数据库审计日志文件存储在你的存储服务中,因此你需要从你的存储服务中读取审计日志信息。 > **注意:** > -> 如果你已申请并选择将审计日志文件存储在 TiDB Cloud 中,你可以从 **Database Audit Logging** 页面的 **Audit Log Access** 部分下载它们。 +> 如果你已申请并选择将审计日志文件存储在 TiDB Cloud,可以在 **Database Audit Logging** 页面的 **Audit Log Access** 区域下载日志文件。 -TiDB Cloud 审计日志是可读的文本文件,文件名中包含集群 ID、Pod ID 和日志创建日期。 +TiDB Cloud 审计日志为可读文本文件,文件名中包含集群 ID、Pod ID 及日志创建日期。 -例如,`13796619446086334065/tidb-0/tidb-audit-2022-04-21T18-16-29.529.log`。在此示例中,`13796619446086334065` 表示集群 ID,`tidb-0` 表示 Pod ID。 +例如:`13796619446086334065/tidb-0/tidb-audit-2022-04-21T18-16-29.529.log`。在此示例中,`13796619446086334065` 表示集群 ID,`tidb-0` 表示 Pod ID。 -## 禁用审计日志 +## 关闭审计日志 -如果你不再想审计集群,请转到集群页面,点击 **Settings** > **Audit Settings**,然后将右上角的审计设置切换为 **Off**。 +如果你不再需要对集群进行审计,可进入该集群页面,点击 **Settings** > **Audit Settings**,然后将右上角的审计开关切换为 **Off**。 > **注意:** > -> 每当日志文件大小达到 10 MiB 时,日志文件将被推送到云存储桶。因此,在禁用审计日志后,大小小于 10 MiB 的日志文件不会自动推送到云存储桶。要在这种情况下获取日志文件,请联系 [PingCAP 支持](/tidb-cloud/tidb-cloud-support.md)。 +> 每当日志文件大小达到 10 MiB 时,日志文件会被推送到云存储桶。因此,关闭审计日志后,文件大小小于 10 MiB 的日志文件不会自动推送到云存储桶。如需获取此类日志文件,请联系 [PingCAP support](/tidb-cloud/tidb-cloud-support.md)。 ## 审计日志字段 -对于审计日志中的每个数据库事件记录,TiDB 提供以下字段: +对于审计日志中的每条数据库事件记录,TiDB 提供以下字段: > **注意:** > -> 在下表中,字段的最大长度为空表示该字段的数据类型具有明确定义的固定长度(例如,INTEGER 为 4 字节)。 +> 下表中,字段的最大长度为空表示该字段的数据类型有明确的常量长度(例如 INTEGER 类型为 4 字节)。 -| 列号 | 字段名 | TiDB 数据类型 | 最大长度 | 描述 | +| Col # | 字段名 | TiDB 数据类型 | 最大长度 | 描述 | |---|---|---|---|---| -| 1 | N/A | N/A | N/A | 保留供内部使用 | -| 2 | N/A | N/A | N/A | 保留供内部使用 | -| 3 | N/A | N/A | N/A | 保留供内部使用 | +| 1 | N/A | N/A | N/A | 预留给内部使用 | +| 2 | N/A | N/A | N/A | 预留给内部使用 | +| 3 | N/A | N/A | N/A | 预留给内部使用 | | 4 | ID | INTEGER | | 唯一事件 ID | -| 5 | TIMESTAMP | TIMESTAMP | | 事件时间 | +| 5 | TIMESTAMP | TIMESTAMP | | 事件发生时间 | | 6 | EVENT_CLASS | VARCHAR | 15 | 事件类型 | | 7 | EVENT_SUBCLASS | VARCHAR | 15 | 事件子类型 | -| 8 | STATUS_CODE | INTEGER | | 语句的响应状态 | -| 9 | COST_TIME | FLOAT | | 语句消耗的时间 | +| 8 | STATUS_CODE | INTEGER | | 语句响应状态 | +| 9 | COST_TIME | FLOAT | | 语句消耗时间 | | 10 | HOST | VARCHAR | 16 | 服务器 IP | | 11 | CLIENT_IP | VARCHAR | 16 | 客户端 IP | | 12 | USER | VARCHAR | 17 | 登录用户名 | -| 13 | DATABASE | VARCHAR | 64 | 事件相关的数据库 | -| 14 | TABLES | VARCHAR | 64 | 事件相关的表名 | -| 15 | SQL_TEXT | VARCHAR | 64 KB | 掩码 SQL 语句 | -| 16 | ROWS | INTEGER | | 受影响的行数(`0` 表示没有行受影响) | +| 13 | DATABASE | VARCHAR | 64 | 事件相关数据库 | +| 14 | TABLES | VARCHAR | 64 | 事件相关表名 | +| 15 | SQL_TEXT | VARCHAR | 64 KB | 脱敏后的 SQL 语句 | +| 16 | ROWS | INTEGER | | 影响的行数(`0` 表示未影响任何行) | 根据 TiDB 设置的 EVENT_CLASS 字段值,审计日志中的数据库事件记录还包含以下附加字段: -- 如果 EVENT_CLASS 值为 `CONNECTION`,数据库事件记录还包含以下字段: +- 如果 EVENT_CLASS 的值为 `CONNECTION`,数据库事件记录还包含以下字段: - | 列号 | 字段名 | TiDB 数据类型 | 最大长度 | 描述 | + | Col # | 字段名 | TiDB 数据类型 | 最大长度 | 描述 | |---|---|---|---|---| | 17 | CLIENT_PORT | INTEGER | | 客户端端口号 | | 18 | CONNECTION_ID | INTEGER | | 连接 ID | | 19 | CONNECTION_TYPE | VARCHAR | 12 | 通过 `socket` 或 `unix-socket` 连接 | | 20 | SERVER_ID | INTEGER | | TiDB 服务器 ID | - | 21 | SERVER_PORT | INTEGER | | TiDB 服务器用于监听通过 MySQL 协议通信的客户端的端口 | + | 21 | SERVER_PORT | INTEGER | | TiDB 服务器监听 MySQL 协议客户端的端口 | | 22 | SERVER_OS_LOGIN_USER | VARCHAR | 17 | TiDB 进程启动系统的用户名 | - | 23 | OS_VERSION | VARCHAR | N/A | TiDB 服务器所在操作系统的版本 | - | 24 | SSL_VERSION | VARCHAR | 6 | TiDB 当前的 SSL 版本 | + | 23 | OS_VERSION | VARCHAR | N/A | TiDB 服务器所在操作系统版本 | + | 24 | SSL_VERSION | VARCHAR | 6 | TiDB 当前 SSL 版本 | | 25 | PID | INTEGER | | TiDB 进程的 PID | -- 如果 EVENT_CLASS 值为 `TABLE_ACCESS` 或 `GENERAL`,数据库事件记录还包含以下字段: +- 如果 EVENT_CLASS 的值为 `TABLE_ACCESS` 或 `GENERAL`,数据库事件记录还包含以下字段: - | 列号 | 字段名 | TiDB 数据类型 | 最大长度 | 描述 | + | Col # | 字段名 | TiDB 数据类型 | 最大长度 | 描述 | |---|---|---|---|---| | 17 | CONNECTION_ID | INTEGER | | 连接 ID | - | 18 | COMMAND | VARCHAR | 14 | MySQL 协议的命令类型 | + | 18 | COMMAND | VARCHAR | 14 | MySQL 协议命令类型 | | 19 | SQL_STATEMENT | VARCHAR | 17 | SQL 语句类型 | - | 20 | PID | INTEGER | | TiDB 进程的 PID | + | 20 | PID | INTEGER | | TiDB 进程的 PID | \ No newline at end of file diff --git a/tidb-cloud/tidb-cloud-budget.md b/tidb-cloud/tidb-cloud-budget.md index 2fd67a4e7992f..d2f00388496cb 100644 --- a/tidb-cloud/tidb-cloud-budget.md +++ b/tidb-cloud/tidb-cloud-budget.md @@ -1,92 +1,92 @@ --- title: 管理 TiDB Cloud 预算 -summary: 了解如何使用 TiDB Cloud 的预算功能来监控成本。 +summary: 了解如何使用 TiDB Cloud 的预算功能来监控你的成本。 --- # 管理 TiDB Cloud 预算 -在 TiDB Cloud 中,你可以使用预算功能来监控成本并控制支出。 +在 TiDB Cloud 中,你可以使用预算功能来监控你的成本,并控制你的支出。 -当你的月度实际成本超过指定预算的百分比阈值时,系统会向你组织的所有者和计费管理员发送警报邮件。这些通知可以帮助你及时了解情况并采取积极措施来管理支出,使支出与预算保持一致。 +当你的月度实际成本超过你指定预算的百分比阈值时,系统会向你的组织所有者和账单管理员发送告警邮件。这些通知可以帮助你及时了解支出情况,并采取主动措施管理你的支出,使你的费用与预算保持一致。 -TiDB Cloud 提供两种类型的预算来帮助你跟踪支出: +TiDB Cloud 提供两种类型的预算,帮助你跟踪支出: -- **Serverless 支出限额**预算:对于每个 TiDB Cloud Serverless 可扩展集群,TiDB Cloud 会自动创建一个 **Serverless 支出限额**预算。此预算帮助你跟踪实际成本是否超过该集群配置的[支出限额](/tidb-cloud/manage-serverless-spend-limit.md)。它包含三个不可编辑的阈值规则:预算的 75%、90% 和 100%。 +- **Serverless Spending Limit** 预算:对于每个 TiDB Cloud Serverless 可扩展集群,TiDB Cloud 会自动创建一个 **Serverless Spending Limit** 预算。该预算帮助你根据该集群上配置的 [spending limit](/tidb-cloud/manage-serverless-spend-limit.md) 跟踪实际成本。它包含三个阈值规则:预算的 75%、90% 和 100%,这些阈值不可编辑。 -- **自定义**预算:你可以创建自定义预算来跟踪整个组织或特定项目的实际成本。对于每个预算,你可以指定预算范围、设置目标支出金额和配置警报阈值。创建自定义预算后,你可以将月度实际成本与计划成本进行比较,以确保支出不超出预算。 +- **Custom** 预算:你可以创建自定义预算,用于跟踪整个组织或特定项目的实际成本。对于每个预算,你可以指定预算范围、设置目标支出金额,并配置告警阈值。创建自定义预算后,你可以将每月实际成本与计划成本进行对比,确保支出不超出预算。 ## 前提条件 -要查看、创建、编辑或删除组织或项目的预算,你必须具有组织的`组织所有者`或`组织计费管理员`角色。 +要查看、创建、编辑或删除你组织或项目的预算,你必须拥有组织的 `Organization Owner` 或 `Organization Billing Manager` 角色。 ## 查看预算信息 -要查看组织的预算页面,请执行以下步骤: +要查看你组织的预算页面,请按照以下步骤操作: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 -2. 在左侧导航栏中,点击**计费**。 -3. 在**计费**页面上,点击**预算**选项卡。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,使用左上角的下拉框切换到你的目标组织。 +2. 在左侧导航栏中,点击 **Billing**。 +3. 在 **Billing** 页面,点击 **Budgets** 标签页。 -对于每个预算,你可以查看其名称、类型、状态、已使用金额、预算金额、周期和范围。 +对于每个预算,你可以查看其名称、类型、状态、已用金额、预算金额、周期和范围。 ## 创建自定义预算 -要创建自定义预算以监控组织或特定项目的支出,请执行以下步骤: +要创建自定义预算以监控你组织或特定项目的支出,请按照以下步骤操作: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 -2. 在左侧导航栏中,点击**计费**。 -3. 在**计费**页面上,点击**预算**选项卡,然后点击**创建自定义预算**。你最多可以创建五个自定义预算。 -4. 提供预算基本设置。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,使用左上角的下拉框切换到你的目标组织。 +2. 在左侧导航栏中,点击 **Billing**。 +3. 在 **Billing** 页面,点击 **Budgets** 标签页,然后点击 **Create Custom Budget**。你最多可以创建 5 个自定义预算。 +4. 填写预算的基本设置。 - - **名称**:输入预算的名称。 - - **周期**:选择跟踪成本的时间范围。目前,你只能选择**每月**,从每月第一天开始,并在每月初重置。TiDB Cloud 会在此时间范围内跟踪你的实际支出,并与你的预算金额(计划支出)进行比较。 - - **预算范围**:根据需要将范围应用于所有项目(即整个 TiDB Cloud 组织)或特定项目。 + - **Name**:输入预算名称。 + - **Period**:选择用于跟踪成本的时间范围。目前只能选择 **Monthly**,即每月的第一天开始,并在每月初重置。TiDB Cloud 会在该时间范围内根据你的预算金额(计划支出)跟踪你的实际支出。 + - **Budget scope**:根据需要,将范围应用于所有项目(即整个 TiDB Cloud 组织)或某个特定项目。 5. 设置预算金额。 - - **预算金额**:输入所选周期的计划支出金额。 - - **应用信用额度**:选择是否将信用额度应用于运行总成本。信用额度用于减少你的 TiDB Cloud 使用成本。启用此选项后,预算将跟踪运行总成本减去信用额度。 - - **应用折扣**:选择是否将折扣应用于运行总成本。折扣是 TiDB Cloud 服务常规价格的降价。启用此选项后,预算将跟踪运行总成本减去折扣。 + - **Budget Amount**:为所选周期输入计划支出金额。 + - **Apply credits**:选择是否将代金券应用于累计总成本。代金券用于抵扣你在 TiDB Cloud 上的使用成本。启用该选项后,预算会跟踪累计总成本减去代金券后的金额。 + - **Apply discounts**:选择是否将折扣应用于累计总成本。折扣是 TiDB Cloud 服务常规价格的减免。启用该选项后,预算会跟踪累计总成本减去折扣后的金额。 -6. 为预算配置警报阈值。如果你在所选周期内的实际支出超过指定阈值,TiDB Cloud 会向你组织的所有者和计费管理员发送预算通知邮件。 +6. 配置预算的告警阈值。如果你的实际支出在所选周期内超过指定阈值,TiDB Cloud 会向你的组织所有者和账单管理员发送预算通知邮件。 - - 默认情况下,TiDB Cloud 提供三个警报阈值:预算金额的 75%、90% 和 100%。你可以根据需要修改这些百分比。 - - 要添加新的警报阈值,请点击**添加警报阈值**。 - - 要删除阈值,请点击阈值旁边的删除图标。 + - 默认情况下,TiDB Cloud 提供三个告警阈值:预算金额的 75%、90% 和 100%。你可以根据需要修改这些百分比。 + - 若要添加新的告警阈值,点击 **Add alert threshold.** + - 若要移除某个阈值,点击该阈值旁边的删除图标。 -7. 点击**创建**。 +7. 点击 **Create**。 ## 编辑自定义预算 > **注意:** > -> **Serverless 支出限额**预算无法编辑,因为它是由 TiDB Cloud 自动创建的,用于帮助你跟踪 TiDB Cloud Serverless 可扩展集群的成本是否超过其[支出限额](/tidb-cloud/manage-serverless-spend-limit.md)。 +> **Serverless Spending Limit** 预算无法编辑,因为它是由 TiDB Cloud 自动创建,用于帮助你根据 [spending limit](/tidb-cloud/manage-serverless-spend-limit.md) 跟踪 TiDB Cloud Serverless 可扩展集群的成本。 -要编辑自定义预算,请执行以下步骤: +要编辑自定义预算,请按照以下步骤操作: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 -2. 在左侧导航栏中,点击**计费**。 -3. 在**计费**页面上,点击**预算**选项卡。 -4. 找到目标预算所在的行,点击该行中的 **...**,然后点击**编辑**。 -5. 根据需要编辑预算名称、预算范围、预算金额和警报阈值。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,使用左上角的下拉框切换到你的目标组织。 +2. 在左侧导航栏中,点击 **Billing**。 +3. 在 **Billing** 页面,点击 **Budgets** 标签页。 +4. 找到目标预算所在行,点击该行的 **...**,然后点击 **Edit**。 +5. 根据需要编辑预算名称、预算范围、预算金额和告警阈值。 > **注意:** > - > 不支持编辑预算周期以及是否应用信用额度和折扣。 + > 不支持编辑预算周期以及是否应用代金券和折扣。 -6. 点击**更新**。 +6. 点击 **Update**。 ## 删除自定义预算 > **注意:** > -> - 自定义预算删除后,你将不再收到与之相关的任何警报邮件。 -> - **Serverless 支出限额**预算无法删除,因为它是由 TiDB Cloud 自动创建的,用于帮助你跟踪 TiDB Cloud Serverless 可扩展集群的成本是否超过其[支出限额](/tidb-cloud/manage-serverless-spend-limit.md)。 +> - 一旦自定义预算被删除,你将不再收到与其相关的任何告警邮件。 +> - **Serverless Spending Limit** 预算无法删除,因为它是由 TiDB Cloud 自动创建,用于帮助你根据 [spending limit](/tidb-cloud/manage-serverless-spend-limit.md) 跟踪 TiDB Cloud Serverless 可扩展集群的成本。 -要删除自定义预算,请执行以下步骤: +要删除自定义预算,请按照以下步骤操作: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 -2. 在左侧导航栏中,点击**计费**。 -3. 在**计费**页面上,点击**预算**选项卡。 -4. 找到目标预算所在的行,点击该行中的 **...**,然后点击**删除**。 -5. 确认删除。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,使用左上角的下拉框切换到你的目标组织。 +2. 在左侧导航栏中,点击 **Billing**。 +3. 在 **Billing** 页面,点击 **Budgets** 标签页。 +4. 找到目标预算所在行,点击该行的 **...**,然后点击 **Delete**。 +5. 确认删除操作。 \ No newline at end of file diff --git a/tidb-cloud/tidb-cloud-connect-aws-dms.md b/tidb-cloud/tidb-cloud-connect-aws-dms.md index 7c9115297724e..934f3fda0a831 100644 --- a/tidb-cloud/tidb-cloud-connect-aws-dms.md +++ b/tidb-cloud/tidb-cloud-connect-aws-dms.md @@ -1,140 +1,140 @@ --- -title: 将 AWS DMS 连接到 TiDB Cloud 集群 -summary: 了解如何使用 AWS Database Migration Service (AWS DMS) 从 TiDB Cloud 迁移数据或将数据迁移到 TiDB Cloud。 +title: 连接 AWS DMS 到 TiDB Cloud 集群 +summary: 了解如何使用 AWS Database Migration Service (AWS DMS) 从 TiDB Cloud 迁移数据或向 TiDB Cloud 迁移数据。 --- -# 将 AWS DMS 连接到 TiDB Cloud 集群 +# 连接 AWS DMS 到 TiDB Cloud 集群 -[AWS Database Migration Service (AWS DMS)](https://aws.amazon.com/dms/) 是一项云服务,可用于迁移关系数据库、数据仓库、NoSQL 数据库和其他类型的数据存储。你可以使用 AWS DMS 从 TiDB Cloud 集群迁移数据或将数据迁移到 TiDB Cloud 集群。本文档描述如何将 AWS DMS 连接到 TiDB Cloud 集群。 +[AWS Database Migration Service (AWS DMS)](https://aws.amazon.com/dms/) 是一项云服务,可以实现关系型数据库、数据仓库、NoSQL 数据库以及其他类型数据存储的迁移。你可以使用 AWS DMS 从 TiDB Cloud 集群迁移数据,或向 TiDB Cloud 集群迁移数据。本文档介绍如何将 AWS DMS 连接到 TiDB Cloud 集群。 -## 前提条件 +## 前置条件 -### 具有足够访问权限的 AWS 账户 +### 拥有具备足够权限的 AWS 账号 -你需要拥有具有足够权限来管理 DMS 相关资源的 AWS 账户。如果没有,请参考以下 AWS 文档: +你需要拥有一个具备足够权限以管理 DMS 相关资源的 AWS 账号。如果没有,请参考以下 AWS 文档: -- [注册 AWS 账户](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_GettingStarted.SettingUp.html#sign-up-for-aws) -- [AWS Database Migration Service 的身份和访问管理](https://docs.aws.amazon.com/dms/latest/userguide/security-iam.html) +- [注册 AWS 账号](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_GettingStarted.SettingUp.html#sign-up-for-aws) +- [AWS Database Migration Service 的身份与访问管理](https://docs.aws.amazon.com/dms/latest/userguide/security-iam.html) -### TiDB Cloud 账户和 TiDB 集群 +### 拥有 TiDB Cloud 账号和 TiDB 集群 -你需要拥有 TiDB Cloud 账户和 TiDB Cloud Serverless 或 TiDB Cloud Dedicated 集群。如果没有,请参考以下文档创建: +你需要拥有一个 TiDB Cloud 账号,以及一个 TiDB Cloud Serverless 或 TiDB Cloud Dedicated 集群。如果没有,请参考以下文档进行创建: - [创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md) - [创建 TiDB Cloud Dedicated 集群](/tidb-cloud/create-tidb-cluster.md) ## 配置网络 -在创建 DMS 资源之前,你需要正确配置网络以确保 DMS 可以与 TiDB Cloud 集群通信。如果你不熟悉 AWS,请联系 AWS 支持。以下提供了几种可能的配置供参考。 +在创建 DMS 资源之前,你需要正确配置网络,以确保 DMS 能够与 TiDB Cloud 集群通信。如果你不熟悉 AWS,建议联系 AWS 支持。以下为你提供几种可能的配置方式,供参考。
-对于 TiDB Cloud Serverless,客户端可以通过公共端点或私有端点连接到集群。 +对于 TiDB Cloud Serverless,你的客户端可以通过公有端点或私有端点连接到集群。 -- 要[通过公共端点连接到 TiDB Cloud Serverless 集群](/tidb-cloud/connect-via-standard-connection-serverless.md),请执行以下操作之一以确保 DMS 复制实例可以访问互联网。 +- 若要[通过公有端点连接 TiDB Cloud Serverless 集群](/tidb-cloud/connect-via-standard-connection-serverless.md),请执行以下任一操作,确保 DMS 复制实例能够访问互联网。 - - 在公共子网中部署复制实例并启用**公共可访问**。更多信息,请参见[互联网访问配置](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Internet_Gateway.html#vpc-igw-internet-access)。 + - 在公有子网中部署复制实例,并启用 **Public accessible**。更多信息,参见 [互联网访问配置](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Internet_Gateway.html#vpc-igw-internet-access)。 - - 在私有子网中部署复制实例并将私有子网中的流量路由到公共子网。在这种情况下,你需要至少三个子网,两个私有子网和一个公共子网。这两个私有子网形成一个复制实例所在的子网组。然后,你需要在公共子网中创建一个 NAT 网关,并将两个私有子网的流量路由到 NAT 网关。更多信息,请参见[从私有子网访问互联网](https://docs.aws.amazon.com/vpc/latest/userguide/nat-gateway-scenarios.html#public-nat-internet-access)。 + - 在私有子网中部署复制实例,并将私有子网的流量路由到公有子网。在此场景下,你至少需要三个子网:两个私有子网和一个公有子网。两个私有子网组成一个子网组,复制实例部署在其中。然后你需要在公有子网中创建一个 NAT 网关,并将两个私有子网的流量路由到该 NAT 网关。更多信息,参见 [从私有子网访问互联网](https://docs.aws.amazon.com/vpc/latest/userguide/nat-gateway-scenarios.html#public-nat-internet-access)。 -- 要通过私有端点连接到 TiDB Cloud Serverless 集群,请先[设置私有端点](/tidb-cloud/set-up-private-endpoint-connections-serverless.md),然后在私有子网中部署复制实例。 +- 若要通过私有端点连接 TiDB Cloud Serverless 集群,请先[设置私有端点](/tidb-cloud/set-up-private-endpoint-connections-serverless.md),并在私有子网中部署复制实例。
-对于 TiDB Cloud Dedicated,客户端可以通过公共端点、私有端点或 VPC 对等连接连接到集群。 +对于 TiDB Cloud Dedicated,你的客户端可以通过公有端点、私有端点或 VPC Peering 连接到集群。 -- 要[通过公共端点连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/connect-via-standard-connection.md),请执行以下操作之一以确保 DMS 复制实例可以访问互联网。此外,你需要将复制实例或 NAT 网关的公共 IP 地址添加到集群的 [IP 访问列表](/tidb-cloud/configure-ip-access-list.md)中。 +- 若要[通过公有端点连接 TiDB Cloud Dedicated 集群](/tidb-cloud/connect-via-standard-connection.md),请执行以下任一操作,确保 DMS 复制实例能够访问互联网。此外,你还需要将复制实例或 NAT 网关的公有 IP 地址添加到集群的 [IP 访问列表](/tidb-cloud/configure-ip-access-list.md)。 - - 在公共子网中部署复制实例并启用**公共可访问**。更多信息,请参见[互联网访问配置](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Internet_Gateway.html#vpc-igw-internet-access)。 + - 在公有子网中部署复制实例,并启用 **Public accessible**。更多信息,参见 [互联网访问配置](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Internet_Gateway.html#vpc-igw-internet-access)。 - - 在私有子网中部署复制实例并将私有子网中的流量路由到公共子网。在这种情况下,你需要至少三个子网,两个私有子网和一个公共子网。这两个私有子网形成一个复制实例所在的子网组。然后,你需要在公共子网中创建一个 NAT 网关,并将两个私有子网的流量路由到 NAT 网关。更多信息,请参见[从私有子网访问互联网](https://docs.aws.amazon.com/vpc/latest/userguide/nat-gateway-scenarios.html#public-nat-internet-access)。 + - 在私有子网中部署复制实例,并将私有子网的流量路由到公有子网。在此场景下,你至少需要三个子网:两个私有子网和一个公有子网。两个私有子网组成一个子网组,复制实例部署在其中。然后你需要在公有子网中创建一个 NAT 网关,并将两个私有子网的流量路由到该 NAT 网关。更多信息,参见 [从私有子网访问互联网](https://docs.aws.amazon.com/vpc/latest/userguide/nat-gateway-scenarios.html#public-nat-internet-access)。 -- 要通过私有端点连接到 TiDB Cloud Dedicated 集群,请先[设置私有端点](/tidb-cloud/set-up-private-endpoint-connections.md),然后在私有子网中部署复制实例。 +- 若要通过私有端点连接 TiDB Cloud Dedicated 集群,请先[设置私有端点](/tidb-cloud/set-up-private-endpoint-connections.md),并在私有子网中部署复制实例。 -- 要通过 VPC 对等连接连接到 TiDB Cloud Dedicated 集群,请先[设置 VPC 对等连接](/tidb-cloud/set-up-vpc-peering-connections.md),然后在私有子网中部署复制实例。 +- 若要通过 VPC Peering 连接 TiDB Cloud Dedicated 集群,请先[设置 VPC Peering 连接](/tidb-cloud/set-up-vpc-peering-connections.md),并在私有子网中部署复制实例。
## 创建 AWS DMS 复制实例 -1. 在 AWS DMS 控制台中,转到[**复制实例**](https://console.aws.amazon.com/dms/v2/home#replicationInstances)页面并切换到相应的区域。建议使用与 TiDB Cloud 相同的区域。 +1. 在 AWS DMS 控制台,进入 [**Replication instances**](https://console.aws.amazon.com/dms/v2/home#replicationInstances) 页面,并切换到对应的区域。建议 AWS DMS 与 TiDB Cloud 使用相同的区域。 - ![创建复制实例](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-connect-replication-instances.png) + ![Create replication instance](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-connect-replication-instances.png) -2. 点击**创建复制实例**。 +2. 点击 **Create replication instance**。 3. 填写实例名称、ARN 和描述。 -4. 在**实例配置**部分,配置实例: - - **实例类**:选择适当的实例类。更多信息,请参见[选择复制实例类型](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_ReplicationInstance.Types.html)。 - - **引擎版本**:保持默认配置。 - - **高可用性**:根据业务需求选择**多可用区**或**单可用区**。 +4. 在 **Instance configuration** 部分,配置实例: + - **Instance class**:选择合适的实例类型。更多信息,参见 [选择复制实例类型](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_ReplicationInstance.Types.html)。 + - **Engine version**:保持默认配置。 + - **High Availability**:根据你的业务需求选择 **Multi-AZ** 或 **Single-AZ**。 -5. 在**分配存储 (GiB)** 字段中配置存储。 +5. 在 **Allocated storage (GiB)** 字段配置存储空间。 -6. 配置连接和安全。你可以参考[前一节](#配置网络)进行网络配置。 +6. 配置连接性和安全性。你可以参考[上一节](#configure-network)的网络配置说明。 - - **网络类型 - 新**:选择 **IPv4**。 - - **虚拟私有云 (VPC) for IPv4**:选择你需要的 VPC。 - - **复制子网组**:为你的复制实例选择一个子网组。 - - **公共可访问**:根据你的网络配置进行设置。 + - **Network type - new**:选择 **IPv4**。 + - **Virtual private cloud (VPC) for IPv4**:选择你需要的 VPC。 + - **Replication subnet group**:为你的复制实例选择一个子网组。 + - **Public accessible**:根据你的网络配置进行设置。 - ![连接和安全](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-connect-connectivity-security.png) + ![Connectivity and security](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-connect-connectivity-security.png) -7. 根据需要配置**高级设置**、**维护**和**标签**部分,然后点击**创建复制实例**完成实例创建。 +7. 如有需要,配置 **Advanced settings**、**Maintenance** 和 **Tags** 部分,然后点击 **Create replication instance** 完成实例创建。 > **注意:** > -> AWS DMS 还支持无服务器复制。详细步骤请参见[创建无服务器复制](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Serverless.Components.html#CHAP_Serverless.create)。与复制实例不同,AWS DMS 无服务器复制不提供**公共可访问**选项。 +> AWS DMS 也支持无服务器(serverless)复制。详细步骤参见 [创建无服务器复制](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Serverless.Components.html#CHAP_Serverless.create)。与复制实例不同,AWS DMS 无服务器复制不提供 **Public accessible** 选项。 ## 创建 TiDB Cloud DMS 端点 -对于连接性,将 TiDB Cloud 集群用作源或目标的步骤类似,但 DMS 对源和目标的数据库设置要求有所不同。更多信息,请参见[使用 MySQL 作为源](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html)或[使用 MySQL 作为目标](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.MySQL.html)。将 TiDB Cloud 集群用作源时,你只能**迁移现有数据**,因为 TiDB 不支持 MySQL binlog。 +在连接性方面,将 TiDB Cloud 集群作为源端或目标端的步骤类似,但 DMS 对源端和目标端的数据库设置有一些不同的要求。更多信息,参见 [将 MySQL 作为源端](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html) 或 [将 MySQL 作为目标端](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.MySQL.html)。当将 TiDB Cloud 集群作为源端时,只能选择 **Migrate existing data**,因为 TiDB 不支持 MySQL binlog。 -1. 在 AWS DMS 控制台中,转到[**端点**](https://console.aws.amazon.com/dms/v2/home#endpointList)页面并切换到相应的区域。 +1. 在 AWS DMS 控制台,进入 [**Endpoints**](https://console.aws.amazon.com/dms/v2/home#endpointList) 页面,并切换到对应的区域。 - ![创建端点](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-connect-create-endpoint.png) + ![Create endpoint](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-connect-create-endpoint.png) -2. 点击**创建端点**以创建目标数据库端点。 +2. 点击 **Create endpoint** 创建目标数据库端点。 -3. 在**端点类型**部分,选择**源端点**或**目标端点**。 +3. 在 **Endpoint type** 部分,选择 **Source endpoint** 或 **Target endpoint**。 -4. 在**端点配置**部分,填写**端点标识符**和 ARN 字段。然后,选择 **MySQL** 作为**源引擎**或**目标引擎**。 +4. 在 **Endpoint configuration** 部分,填写 **Endpoint identifier** 和 ARN 字段。然后,将 **Source engine** 或 **Target engine** 选择为 **MySQL**。 -5. 对于**访问端点数据库**字段,选中**手动提供访问信息**复选框,并按如下方式填写集群信息: +5. 在 **Access to endpoint database** 字段,勾选 **Provide access information manually**,并按如下方式填写集群信息:
- - **服务器名称**:TiDB Cloud Serverless 集群的 `HOST`。 - - **端口**:TiDB Cloud Serverless 集群的 `PORT`。 - - **用户名**:用于迁移的 TiDB Cloud Serverless 集群用户。确保它满足 DMS 要求。 - - **密码**:TiDB Cloud Serverless 集群用户的密码。 - - **安全套接字层 (SSL) 模式**:如果通过公共端点连接,强烈建议将模式设置为 **verify-full** 以确保传输安全。如果通过私有端点连接,可以将模式设置为 **none**。 - - (可选)**CA 证书**:使用 [ISRG Root X1 证书](https://letsencrypt.org/certs/isrgrootx1.pem)。更多信息,请参见[到 TiDB Cloud Serverless 的 TLS 连接](/tidb-cloud/secure-connections-to-serverless-clusters.md)。 + - **Server name**:TiDB Cloud Serverless 集群的 `HOST`。 + - **Port**:TiDB Cloud Serverless 集群的 `PORT`。 + - **User name**:用于迁移的 TiDB Cloud Serverless 集群用户。确保其满足 DMS 要求。 + - **Password**:TiDB Cloud Serverless 集群用户的密码。 + - **Secure Socket Layer (SSL) mode**:如果通过公有端点连接,强烈建议将模式设置为 **verify-full**,以确保传输安全。如果通过私有端点连接,可以设置为 **none**。 + - (可选)**CA certificate**:使用 [ISRG Root X1 证书](https://letsencrypt.org/certs/isrgrootx1.pem)。更多信息,参见 [TLS 连接到 TiDB Cloud Serverless](/tidb-cloud/secure-connections-to-serverless-clusters.md)。
- - **服务器名称**:TiDB Cloud Dedicated 集群的 `HOST`。 - - **端口**:TiDB Cloud Dedicated 集群的 `PORT`。 - - **用户名**:用于迁移的 TiDB Cloud Dedicated 集群用户。确保它满足 DMS 要求。 - - **密码**:TiDB Cloud Dedicated 集群用户的密码。 - - **安全套接字层 (SSL) 模式**:如果通过公共端点连接,强烈建议将模式设置为 **verify-full** 以确保传输安全。如果通过私有端点连接,可以将其设置为 **none**。 - - (可选)**CA 证书**:根据[到 TiDB Cloud Dedicated 的 TLS 连接](/tidb-cloud/tidb-cloud-tls-connect-to-dedicated.md)获取 CA 证书。 + - **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](/tidb-cloud/tidb-cloud-tls-connect-to-dedicated.md) 获取 CA 证书。
- ![手动提供访问信息](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-connect-configure-endpoint.png) + ![Provide access information manually](/media/tidb-cloud/aws-dms-tidb-cloud/aws-dms-connect-configure-endpoint.png) -6. 如果要将端点创建为**目标端点**,展开**端点设置**部分,选中**使用端点连接属性**复选框,然后将**额外连接属性**设置为 `Initstmt=SET FOREIGN_KEY_CHECKS=0;`。 +6. 如果你希望将端点创建为 **Target endpoint**,请展开 **Endpoint settings** 部分,勾选 **Use endpoint connection attributes**,然后将 **Extra connection attributes** 设置为 `Initstmt=SET FOREIGN_KEY_CHECKS=0;`。 -7. 根据需要配置 **KMS 密钥**和**标签**部分。点击**创建端点**完成实例创建。 +7. 如有需要,配置 **KMS Key** 和 **Tags** 部分。点击 **Create endpoint** 完成实例创建。 \ No newline at end of file diff --git a/tidb-cloud/tidb-cloud-console-auditing.md b/tidb-cloud/tidb-cloud-console-auditing.md index d3b578424540f..152ac988f4845 100644 --- a/tidb-cloud/tidb-cloud-console-auditing.md +++ b/tidb-cloud/tidb-cloud-console-auditing.md @@ -5,57 +5,57 @@ summary: 了解 TiDB Cloud 控制台的审计日志功能。 # 控制台审计日志 -TiDB Cloud 提供控制台审计日志功能,帮助你跟踪用户在 [TiDB Cloud 控制台](https://tidbcloud.com)上的各种行为和操作。例如,你可以跟踪邀请用户加入组织和创建集群等操作。 +TiDB Cloud 提供了控制台审计日志功能,帮助你追踪用户在 [TiDB Cloud 控制台](https://tidbcloud.com) 上的各种行为和操作。例如,你可以追踪邀请用户加入你的组织、创建集群等操作。 ## 前提条件 -- 你必须在 TiDB Cloud 中担任组织的 `Organization Owner` 或 `Organization Console Audit Manager` 角色。否则,你将无法在 TiDB Cloud 控制台中看到控制台审计日志相关选项。 -- 你只能为你的组织启用和禁用控制台审计日志。你只能跟踪组织中用户的操作。 -- 启用控制台审计日志后,将审计 TiDB Cloud 控制台的所有事件类型,你无法指定仅审计其中的某些事件。 +- 你必须是 TiDB Cloud 组织中的 `Organization Owner` 或 `Organization Console Audit Manager` 角色。否则,你无法在 TiDB Cloud 控制台中看到与控制台审计日志相关的选项。 +- 你只能为你的组织启用和禁用控制台审计日志。你只能追踪你所在组织用户的操作。 +- 启用控制台审计日志后,TiDB Cloud 控制台的所有事件类型都会被审计,无法只指定审计其中的部分事件。 ## 启用控制台审计日志 -控制台审计日志功能默认是禁用的。要启用它,请执行以下步骤: +控制台审计日志功能默认处于禁用状态。要启用该功能,请按照以下步骤操作: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 -2. 在左侧导航栏中,点击**控制台审计日志**。 -3. 点击右上角的**设置**,启用控制台审计日志,然后点击**更新**。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,使用左上角的下拉框切换到你的目标组织。 +2. 在左侧导航栏中,点击 **Console Audit Logging**。 +3. 点击右上角的 **Settings**,启用控制台审计日志,然后点击 **Update**。 ## 禁用控制台审计日志 -要禁用控制台审计日志,请执行以下步骤: +要禁用控制台审计日志,请按照以下步骤操作: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 -2. 在左侧导航栏中,点击**控制台审计日志**。 -3. 点击右上角的**设置**,禁用控制台审计日志,然后点击**更新**。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,使用左上角的下拉框切换到你的目标组织。 +2. 在左侧导航栏中,点击 **Console Audit Logging**。 +3. 点击右上角的 **Settings**,禁用控制台审计日志,然后点击 **Update**。 ## 查看控制台审计日志 -你只能查看组织的控制台审计日志。 +你只能查看你所在组织的控制台审计日志。 > **注意:** > -> - 如果你的组织首次启用控制台审计日志,控制台审计日志将为空。执行任何被审计的事件后,你将看到相应的日志。 -> - 如果控制台审计日志被禁用超过 90 天,你将无法看到任何日志。 +> - 如果你的组织是第一次启用控制台审计日志,控制台审计日志内容为空。在执行任何被审计的事件后,你会看到相应的日志。 +> - 如果控制台审计日志被禁用已超过 90 天,你将无法看到任何日志。 -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 -2. 在左侧导航栏中,点击**控制台审计日志**。 -3. 要获取特定部分的审计日志,你可以过滤事件类型、操作状态和时间范围。 -4. (可选)要过滤更多字段,点击**高级过滤器**,添加更多过滤条件,然后点击**应用**。 -5. 点击日志行以在右侧窗格中查看其详细信息。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,使用左上角的下拉框切换到你的目标组织。 +2. 在左侧导航栏中,点击 **Console Audit Logging**。 +3. 如需获取特定部分的审计日志,可以筛选事件类型、操作状态和时间范围。 +4. (可选)如需筛选更多字段,点击 **Advanced filter**,添加更多筛选条件,然后点击 **Apply**。 +5. 点击某一日志行,可在右侧面板查看其详细信息。 ## 导出控制台审计日志 -要导出组织的控制台审计日志,请执行以下步骤: +要导出你所在组织的控制台审计日志,请按照以下步骤操作: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 -2. 在左侧导航栏中,点击**控制台审计日志**。 -3. (可选)如果你需要导出特定部分的控制台审计日志,可以通过各种条件进行过滤。否则,跳过此步骤。 -4. 点击**下载日志**,并选择所需的导出格式(JSON 或 CSV)。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,使用左上角的下拉框切换到你的目标组织。 +2. 在左侧导航栏中,点击 **Console Audit Logging**。 +3. (可选)如需导出特定部分的控制台审计日志,可以通过多种条件进行筛选。否则可跳过此步骤。 +4. 点击 **Download logs**,并选择所需的导出格式(JSON 或 CSV)。 ## 控制台审计日志存储策略 -控制台审计日志的存储时间为 90 天,之后日志将自动清理。 +控制台审计日志的存储时间为 90 天,超过后日志会被自动清理。 > **注意:** > @@ -64,121 +64,122 @@ TiDB Cloud 提供控制台审计日志功能,帮助你跟踪用户在 [TiDB Cl ## 控制台审计事件类型 -控制台审计日志通过事件类型记录 TiDB Cloud 控制台上的各种用户活动。 +控制台审计日志通过事件类型记录用户在 TiDB Cloud 控制台上的各种活动。 > **注意:** > -> 目前,TiDB Cloud 控制台上的大多数事件类型都可以被审计,你可以在下表中找到它们。对于尚未覆盖的其余事件类型,TiDB Cloud 将持续努力将它们也包含在内。 - -| 控制台审计事件类型 | 描述 | -|--------------------------------|----------------------------------------------------------------------------------| -| CreateOrganization | 创建组织 | -| LoginOrganization | 登录组织 | -| SwitchOrganization | 从当前组织切换到另一个组织 | -| LogoutOrganization | 从组织注销 | -| InviteUserToOrganization | 邀请用户加入组织 | -| DeleteInvitationToOrganization | 删除用户加入组织的邀请 | -| ResendInvitationToOrganization | 重新发送用户加入组织的邀请 | -| ConfirmJoinOrganization | 被邀请的用户确认加入组织 | -| DeleteUserFromOrganization | 从组织中删除已加入的用户 | -| UpdateUserRoleInOrganization | 更新用户在组织中的角色 | -| CreateAPIKey | 创建 API 密钥 | -| EditAPIKey | 编辑 API 密钥 | -| DeleteAPIKey | 删除 API 密钥 | -| UpdateTimezone | 更新组织的时区 | -| ShowBill | 显示组织账单 | -| DownloadBill | 下载组织账单 | -| ShowCredits | 显示组织积分 | -| AddPaymentCard | 添加支付卡 | -| UpdatePaymentCard | 更新支付卡 | -| DeletePaymentCard | 删除支付卡 | -| SetDefaultPaymentCard | 设置默认支付卡 | -| EditBillingProfile | 编辑账单资料信息 | -| ContractAction | 组织合同相关活动 | -| EnableConsoleAuditLog | 启用控制台审计日志 | -| ShowConsoleAuditLog | 显示控制台审计日志 | -| InviteUserToProject | 邀请用户加入项目 | -| DeleteInvitationToProject | 删除用户加入项目的邀请 | -| ResendInvitationToProject | 重新发送用户加入项目的邀请 | -| ConfirmJoinProject | 被邀请的用户确认加入项目 | -| DeleteUserFromProject | 从项目中删除已加入的用户 | -| CreateProject | 创建项目 | -| CreateProjectCIDR | 创建新的项目 CIDR | -| CreateAWSVPCPeering | 创建 AWS VPC 对等连接 | -| DeleteAWSVPCPeering | 删除 AWS VPC 对等连接 | -| CreateGCPVPCPeering | 创建 Google Cloud VPC 对等连接 | -| DeleteGCPVPCPeering | 删除 Google Cloud VPC 对等连接 | -| CreatePrivateEndpointService | 创建私有端点服务 | -| DeletePrivateEndpointService | 删除私有端点服务 | -| CreateAWSPrivateEndPoint | 创建 AWS 私有端点 | -| DeleteAWSPrivateEndPoint | 删除 AWS 私有端点 | -| SubscribeAlerts | 订阅警报 | -| UnsubscribeAlerts | 取消订阅警报 | -| CreateDatadogIntegration | 创建 Datadog 集成 | -| DeleteDatadogIntegration | 删除 Datadog 集成 | -| CreateVercelIntegration | 创建 Vercel 集成 | -| DeleteVercelIntegration | 删除 Vercel 集成 | -| CreatePrometheusIntegration | 创建 Prometheus 集成 | -| DeletePrometheusIntegration | 删除 Prometheus 集成 | -| CreateCluster | 创建集群 | -| DeleteCluster | 删除集群 | -| PauseCluster | 暂停集群 | -| ResumeCluster | 恢复集群 | -| ScaleCluster | 扩展集群 | -| DownloadTiDBClusterCA | 下载 CA 证书 | -| OpenWebSQLConsole | 通过 Web SQL 连接到 TiDB 集群 | -| SetRootPassword | 设置 TiDB 集群的 root 密码 | -| UpdateIPAccessList | 更新 TiDB 集群的 IP 访问列表 | -| SetAutoBackup | 设置 TiDB 集群的自动备份机制 | -| DoManualBackup | 执行 TiDB 集群的手动备份 | -| DeleteBackupTask | 删除备份任务 | -| DeleteBackup | 删除备份文件 | -| RestoreFromBackup | 基于备份文件恢复到 TiDB 集群 | -| RestoreFromTrash | 基于回收站中的备份文件恢复到 TiDB 集群 | -| ImportDataFromAWS | 从 AWS 导入数据 | -| ImportDataFromGCP | 从 Google Cloud 导入数据 | -| ImportDataFromLocal | 从本地磁盘导入数据 | -| CreateMigrationJob | 创建迁移任务 | -| SuspendMigrationJob | 暂停迁移任务 | -| ResumeMigrationJob | 恢复迁移任务 | -| DeleteMigrationJob | 删除迁移任务 | -| ShowDiagnose | 显示诊断信息 | -| DBAuditLogAction | 设置数据库审计日志活动 | -| AddDBAuditFilter | 添加数据库审计日志过滤器 | -| DeleteDBAuditFilter | 删除数据库审计日志过滤器 | -| EditProject | 编辑项目信息 | -| DeleteProject | 删除项目 | -| BindSupportPlan | 绑定支持计划 | -| CancelSupportPlan | 取消支持计划 | -| UpdateOrganizationName | 更新组织名称 | -| SetSpendLimit | 编辑 TiDB Cloud Serverless 可扩展集群的支出限制 | -| UpdateMaintenanceWindow | 修改维护窗口开始时间 | -| DeferMaintenanceTask | 推迟维护任务 | -| CreateBranch | 创建 TiDB Cloud Serverless 分支 | -| DeleteBranch | 删除 TiDB Cloud Serverless 分支 | -| SetBranchRootPassword | 为 TiDB Cloud Serverless 分支设置 root 密码 | -| ConnectBranchGitHub | 将集群与 GitHub 仓库连接以启用分支集成 | -| DisconnectBranchGitHub | 断开集群与 GitHub 仓库的连接以禁用分支集成 | +> 目前,TiDB Cloud 控制台的大多数事件类型都可以被审计,你可以在下表中找到它们。对于尚未覆盖的事件类型,TiDB Cloud 会持续完善并纳入审计范围。 + +| 控制台审计事件类型 | 描述 | +|-------------------------------------|----------------------------------------------------------------------| +| CreateOrganization | 创建组织 | +| LoginOrganization | 登录组织 | +| SwitchOrganization | 从当前组织切换到其他组织 | +| LogoutOrganization | 退出组织 | +| InviteUserToOrganization | 邀请用户加入组织 | +| DeleteInvitationToOrganization | 删除用户加入组织的邀请 | +| ResendInvitationToOrganization | 重新发送用户加入组织的邀请 | +| ConfirmJoinOrganization | 被邀请用户确认加入组织 | +| DeleteUserFromOrganization | 删除已加入组织的用户 | +| UpdateUserRoleInOrganization | 更新组织中用户的角色 | +| CreateAPIKey | 创建 API Key | +| EditAPIKey | 编辑 API Key | +| DeleteAPIKey | 删除 API Key | +| UpdateTimezone | 更新组织的时区 | +| ShowBill | 查看组织账单 | +| DownloadBill | 下载组织账单 | +| ShowCredits | 查看组织积分 | +| AddPaymentCard | 添加支付卡 | +| UpdatePaymentCard | 更新支付卡 | +| DeletePaymentCard | 删除支付卡 | +| SetDefaultPaymentCard | 设置默认支付卡 | +| EditBillingProfile | 编辑账单信息 | +| ContractAction | 组织合同相关操作 | +| EnableConsoleAuditLog | 启用控制台审计日志 | +| ShowConsoleAuditLog | 查看控制台审计日志 | +| InviteUserToProject | 邀请用户加入项目 | +| DeleteInvitationToProject | 删除用户加入项目的邀请 | +| ResendInvitationToProject | 重新发送用户加入项目的邀请 | +| ConfirmJoinProject | 被邀请用户确认加入项目 | +| DeleteUserFromProject | 删除已加入项目的用户 | +| CreateProject | 创建项目 | +| CreateProjectCIDR | 创建新的项目 CIDR | +| CreateAWSVPCPeering | 创建 AWS VPC Peering | +| DeleteAWSVPCPeering | 删除 AWS VPC Peering | +| CreateGCPVPCPeering | 创建 Google Cloud VPC Peering | +| DeleteGCPVPCPeering | 删除 Google Cloud VPC Peering | +| CreatePrivateEndpointService | 创建私有终端节点服务 | +| DeletePrivateEndpointService | 删除私有终端节点服务 | +| CreateAWSPrivateEndPoint | 创建 AWS 私有终端节点 | +| DeleteAWSPrivateEndPoint | 删除 AWS 私有终端节点 | +| SubscribeAlerts | 订阅告警 | +| UnsubscribeAlerts | 取消订阅告警 | +| CreateDatadogIntegration | 创建 datadog 集成 | +| DeleteDatadogIntegration | 删除 datadog 集成 | +| CreateVercelIntegration | 创建 vercel 集成 | +| DeleteVercelIntegration | 删除 vercel 集成 | +| CreatePrometheusIntegration | 创建 Prometheus 集成 | +| DeletePrometheusIntegration | 删除 Prometheus 集成 | +| CreateCluster | 创建集群 | +| DeleteCluster | 删除集群 | +| PauseCluster | 暂停集群 | +| ResumeCluster | 恢复集群 | +| ScaleCluster | 扩容集群 | +| DownloadTiDBClusterCA | 下载 CA 证书 | +| OpenWebSQLConsole | 通过 Web SQL 连接 TiDB 集群 | +| SetRootPassword | 设置 TiDB 集群的 root 密码 | +| UpdateIPAccessList | 更新 TiDB 集群的 IP 访问列表 | +| SetAutoBackup | 设置 TiDB 集群的自动备份机制 | +| DoManualBackup | 执行 TiDB 集群的手动备份 | +| BackupCompleted | 备份任务完成 | +| DeleteBackupTask | 删除备份任务 | +| DeleteBackup | 删除备份文件 | +| RestoreFromBackup | 基于备份文件恢复到 TiDB 集群 | +| RestoreFromTrash | 基于回收站中的备份文件恢复到 TiDB 集群 | +| ImportDataFromAWS | 从 AWS 导入数据 | +| ImportDataFromGCP | 从 Google Cloud 导入数据 | +| ImportDataFromLocal | 从本地磁盘导入数据 | +| CreateMigrationJob | 创建迁移任务 | +| SuspendMigrationJob | 暂停迁移任务 | +| ResumeMigrationJob | 恢复迁移任务 | +| DeleteMigrationJob | 删除迁移任务 | +| ShowDiagnose | 查看诊断信息 | +| DBAuditLogAction | 设置数据库审计日志活动 | +| AddDBAuditFilter | 添加数据库审计日志过滤器 | +| DeleteDBAuditFilter | 删除数据库审计日志过滤器 | +| EditProject | 编辑项目信息 | +| DeleteProject | 删除项目 | +| BindSupportPlan | 绑定支持计划 | +| CancelSupportPlan | 取消支持计划 | +| UpdateOrganizationName | 更新组织名称 | +| SetSpendLimit | 编辑 TiDB Cloud Serverless 弹性集群的消费上限 | +| UpdateMaintenanceWindow | 修改维护窗口开始时间 | +| DeferMaintenanceTask | 延迟维护任务 | +| CreateBranch | 创建 TiDB Cloud Serverless 分支 | +| DeleteBranch | 删除 TiDB Cloud Serverless 分支 | +| SetBranchRootPassword | 设置 TiDB Cloud Serverless 分支的 root 密码 | +| ConnectBranchGitHub | 将集群与 GitHub 仓库连接以启用分支集成 | +| DisconnectBranchGitHub | 断开集群与 GitHub 仓库的连接以禁用分支集成 | ## 控制台审计日志字段 -为帮助你跟踪用户活动,TiDB Cloud 为每个控制台审计日志提供以下字段: - -| 字段名称 | 数据类型 | 描述 | -|---|---|---| -| type | string | 事件类型 | -| ends_at | timestamp | 事件时间 | -| operator_type | enum | 操作者类型:`user` 或 `api_key` | -| operator_id | uint64 | 操作者 ID | -| operator_name | string | 操作者名称 | -| operator_ip | string | 操作者的 IP 地址 | -| operator_login_method | enum | 操作者的登录方法:`google`、`github`、`microsoft`、`email` 或 `api_key` | -| org_id | uint64 | 事件所属的组织 ID | -| org_name | string | 事件所属的组织名称 | -| project_id | uint64 | 事件所属的项目 ID | -| project_name | string | 事件所属的项目名称 | -| cluster_id | uint64 | 事件所属的集群 ID | -| cluster_name | string | 事件所属的集群名称 | -| trace_id | string | 操作者发起请求的跟踪 ID。此字段目前为空,将在未来版本中提供。 | -| result | enum | 事件结果:`success` 或 `failure` | -| details | json | 事件的详细描述 | +为帮助你追踪用户活动,TiDB Cloud 为每条控制台审计日志提供了以下字段: + +| 字段名 | 数据类型 | 描述 | +|-----------------------|------------|--------------------------------------------------------------------------------------| +| type | string | 事件类型 | +| ends_at | timestamp | 事件时间 | +| operator_type | enum | 操作人类型:`user` 或 `api_key` | +| operator_id | uint64 | 操作人 ID | +| operator_name | string | 操作人名称 | +| operator_ip | string | 操作人 IP 地址 | +| operator_login_method | enum | 操作人登录方式:`google`、`github`、`microsoft`、`email` 或 `api_key` | +| org_id | uint64 | 事件所属组织 ID | +| org_name | string | 事件所属组织名称 | +| project_id | uint64 | 事件所属项目 ID | +| project_name | string | 事件所属项目名称 | +| cluster_id | uint64 | 事件所属集群 ID | +| cluster_name | string | 事件所属集群名称 | +| trace_id | string | 操作人发起请求的 Trace ID。该字段当前为空,未来版本将会支持。 | +| result | enum | 事件结果:`success` 或 `failure` | +| details | json | 事件详细描述 | \ No newline at end of file diff --git a/tidb-cloud/tidb-cloud-encrypt-cmek.md b/tidb-cloud/tidb-cloud-encrypt-cmek.md index c6de10d6895f3..cb7f4a6b849bd 100644 --- a/tidb-cloud/tidb-cloud-encrypt-cmek.md +++ b/tidb-cloud/tidb-cloud-encrypt-cmek.md @@ -1,79 +1,81 @@ --- -title: 使用客户管理的加密密钥进行静态加密 +title: 使用客户管理的加密密钥进行静态数据加密 summary: 了解如何在 TiDB Cloud 中使用客户管理的加密密钥(CMEK)。 --- -# 使用客户管理的加密密钥进行静态加密 +# 使用客户管理的加密密钥进行静态数据加密 -客户管理的加密密钥(Customer-Managed Encryption Key,CMEK)允许你使用完全由你控制的对称加密密钥来保护 TiDB Cloud Dedicated 集群中的静态数据。这个密钥被称为 CMEK 密钥。 +客户管理的加密密钥(Customer-Managed Encryption Key,CMEK)允许你通过使用完全由你控制的对称加密密钥,保护 TiDB Cloud 专属集群中的静态数据安全。该密钥被称为 CMEK 密钥。 -当为项目启用 CMEK 后,该项目中创建的所有集群都会使用 CMEK 密钥加密其静态数据。此外,这些集群生成的任何备份数据也会使用相同的密钥进行加密。如果未启用 CMEK,TiDB Cloud 会使用托管密钥来加密集群中的所有静态数据。 +一旦为项目启用 CMEK,该项目下创建的所有集群都会使用 CMEK 密钥对其静态数据进行加密。此外,这些集群生成的任何备份数据也会使用同一密钥进行加密。如果未启用 CMEK,TiDB Cloud 会使用托管密钥对集群中静态数据进行加密。 > **注意:** > -> 目前,此功能仅供申请使用。如果你需要试用此功能,请联系[技术支持](/tidb-cloud/tidb-cloud-support.md)。 +> - CMEK 类似于自带密钥(BYOK)。在 BYOK 模式下,你通常会在本地生成密钥并上传。然而,TiDB Cloud 仅支持在 [AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) 内生成的密钥。 +> - 目前,该功能仅支持按需开通。如果你需要试用该功能,请联系 [support](/tidb-cloud/tidb-cloud-support.md)。 ## 限制 - 目前,TiDB Cloud 仅支持使用 AWS KMS 提供 CMEK。 -- 要使用 CMEK,你需要在创建项目时启用 CMEK,并在创建集群之前完成 CMEK 相关配置。你无法为现有项目启用 CMEK。 -- 目前,在启用 CMEK 的项目中,你只能创建在 AWS 上托管的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群。不支持在其他云服务提供商上托管的 TiDB Cloud Dedicated 集群和 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。 -- 目前,对于特定项目,你只能为一个 AWS 区域启用 CMEK。配置完成后,你无法在同一项目中的其他区域创建集群。 +- 若要使用 CMEK,需在创建项目时启用 CMEK,并在创建集群前完成 CMEK 相关配置。无法为已存在的项目启用 CMEK。 +- 目前,在启用 CMEK 的项目中,只能创建托管于 AWS 的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群。不支持托管于其他云服务商的 TiDB Cloud Dedicated 集群和 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。 +- 目前,在启用 CMEK 的项目中,不支持 [双区域备份](/tidb-cloud/backup-and-restore-concepts.md#dual-region-backup)。 +- 目前,对于同一个项目,只能为一个 AWS 区域启用 CMEK。配置完成后,无法在同一项目下的其他区域创建集群。 ## 启用 CMEK -如果你想使用你账号拥有的 KMS 加密数据,请执行以下步骤。 +如果你希望使用自己账户下的 KMS 对数据进行加密,请按照以下步骤操作。 -### 步骤 1. 创建启用 CMEK 的项目 +### 步骤 1. 创建支持 CMEK 的项目 -如果你是组织的 `Organization Owner` 角色,你可以使用 TiDB Cloud 控制台或 API 创建启用 CMEK 的项目。 +如果你拥有组织的 `Organization Owner` 角色,可以通过 TiDB Cloud 控制台或 API 创建支持 CMEK 的项目。 -
+
-要创建启用 CMEK 的项目,请执行以下步骤: +要创建支持 CMEK 的项目,请执行以下操作: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标组织。 -2. 在左侧导航栏中,点击 **Projects**。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,使用左上角的下拉框切换到目标组织。 +2. 在左侧导航栏点击 **Projects**。 3. 在 **Projects** 页面,点击右上角的 **Create New Project**。 4. 填写项目名称。 -5. 选择启用项目的 CMEK 功能。 +5. 选择启用项目的 CMEK 能力。 6. 点击 **Confirm** 完成项目创建。
-
+
-你可以通过 [Create a CMEK-enabled project](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Project/operation/CreateProject) 端点使用 TiDB Cloud API 完成此步骤。确保将 `aws_cmek_enabled` 字段设置为 `true`。 +你可以通过 TiDB Cloud API 的 [Create a CMEK-enabled project](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Project/operation/CreateProject) 接口完成此步骤。请确保 `aws_cmek_enabled` 字段设置为 `true`。 -目前,TiDB Cloud API 仍处于测试阶段。有关更多信息,请参见 [TiDB Cloud API 文档](https://docs.pingcap.com/tidbcloud/api/v1beta)。 +目前,TiDB Cloud API 仍处于 beta 阶段。更多信息请参见 [TiDB Cloud API Documentation](https://docs.pingcap.com/tidbcloud/api/v1beta)。
### 步骤 2. 完成项目的 CMEK 配置 -你可以使用 TiDB Cloud 控制台或 API 完成项目的 CMEK 配置。 +你可以通过 TiDB Cloud 控制台或 API 完成项目的 CMEK 配置。 > **注意:** > -> 确保密钥的策略满足要求,并且没有权限不足或账号问题等错误。这些错误可能导致使用此密钥创建的集群出现问题。 +> 请确保密钥的策略符合要求,并且没有权限不足或账户问题等错误。这些错误可能导致集群无法正确使用该密钥创建。 -
+
-要完成项目的 CMEK 配置,请执行以下步骤: +要完成项目的 CMEK 配置,请执行以下操作: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com)中,使用左上角的组合框切换到目标项目。 -2. 在左侧导航栏中,点击 **Project Settings** > **Encryption Access**。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com) 中,使用左上角的下拉框切换到目标项目。 +2. 在左侧导航栏点击 **Project Settings** > **Encryption Access**。 3. 在 **Encryption Access** 页面,点击 **Create Encryption Key** 进入密钥创建页面。 -4. 密钥提供者仅支持 AWS KMS。你可以选择加密密钥可以使用的区域。 -5. 复制并保存 JSON 文件为 `ROLE-TRUST-POLICY.JSON`。此文件描述了信任关系。 -6. 将此信任关系添加到 AWS KMS 的密钥策略中。有关更多信息,请参见 [AWS KMS 中的密钥策略](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)。 -7. 在 TiDB Cloud 控制台中,滚动到密钥创建页面底部,然后填写从 AWS KMS 获取的 **KMS Key ARN**。 +4. 密钥提供方仅支持 AWS KMS。你可以选择加密密钥可用的区域。 +5. 复制并保存 JSON 文件为 `ROLE-TRUST-POLICY.JSON`。该文件描述了信任关系。 +6. 将该信任关系添加到 AWS KMS 的密钥策略中。更多信息请参考 [Key policies in AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)。 +7. 在 TiDB Cloud 控制台的密钥创建页面底部,填写从 AWS KMS 获取的 **KMS Key ARN**。 8. 点击 **Create** 创建密钥。
-
+
1. 在 AWS KMS 上配置密钥策略,并将以下信息添加到密钥策略中: @@ -82,7 +84,7 @@ summary: 了解如何在 TiDB Cloud 中使用客户管理的加密密钥(CMEK "Version": "2012-10-17", "Id": "cmek-policy", "Statement": [ - // EBS 相关策略 + // EBS-related policy { "Sid": "Allow access through EBS for all principals in the account that are authorized to use EBS", "Effect": "Allow", @@ -105,7 +107,7 @@ summary: 了解如何在 TiDB Cloud 中使用客户管理的加密密钥(CMEK } } }, - // S3 相关策略 + // S3-related policy { "Sid": "Allow TiDB cloud role to use KMS to store encrypted backup to S3", "Effect": "Allow", @@ -118,51 +120,51 @@ summary: 了解如何在 TiDB Cloud 中使用客户管理的加密密钥(CMEK ], "Resource": "*" }, - ... // 用户自己的 KMS 管理员访问权限 + ... // user's own admin access to KMS ] } ``` - - `` 是运行集群的账号。如果你不知道账号,请联系 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 - - `` 是你想要创建集群的区域,例如 `us-west-2`。如果你不想指定区域,请将 `` 替换为通配符 `*`,并将其放在 `StringLike` 块中。 - - 有关上述块中的 EBS 相关策略,请参见 [AWS 文档](https://docs.aws.amazon.com/kms/latest/developerguide/conditions-kms.html#conditions-kms-caller-account)。 - - 有关上述块中的 S3 相关策略,请参见 [AWS 博客](https://repost.aws/knowledge-center/s3-bucket-access-default-encryption)。 + - `` 是你的集群运行所在的账户。如果你不清楚该账户,请联系 [TiDB Cloud Support](/tidb-cloud/tidb-cloud-support.md)。 + - `` 是你希望创建集群的区域,例如 `us-west-2`。如果你不想指定区域,可以将 `` 替换为通配符 `*`,并放在 `StringLike` 块中。 + - 有关上述 EBS 相关策略,请参考 [AWS 文档](https://docs.aws.amazon.com/kms/latest/developerguide/conditions-kms.html#conditions-kms-caller-account)。 + - 有关上述 S3 相关策略,请参考 [AWS 博客](https://repost.aws/knowledge-center/s3-bucket-access-default-encryption)。 -2. 调用 TiDB Cloud API 的 [Configure AWS CMEK](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Cluster/operation/CreateAwsCmek) 端点。 +2. 调用 TiDB Cloud API 的 [Configure AWS CMEK](https://docs.pingcap.com/tidbcloud/api/v1beta#tag/Cluster/operation/CreateAwsCmek) 接口。 - 目前,TiDB Cloud API 仍处于测试阶段。有关更多信息,请参见 [TiDB Cloud API 文档](https://docs.pingcap.com/tidbcloud/api/v1beta)。 + 目前,TiDB Cloud API 仍处于 beta 阶段。更多信息请参见 [TiDB Cloud API Documentation](https://docs.pingcap.com/tidbcloud/api/v1beta)。
> **注意:** > -> 此功能将在未来进一步增强,即将推出的功能可能需要额外的权限。因此,此策略要求可能会发生变化。 +> 该功能未来会进一步增强,后续功能可能需要额外的权限。因此,该策略要求可能会发生变化。 ### 步骤 3. 创建集群 -在[步骤 1](#步骤-1-创建启用-cmek-的项目) 中创建的项目下,创建一个在 AWS 上托管的 TiDB Cloud Dedicated 集群。有关详细步骤,请参见[此文档](/tidb-cloud/create-tidb-cluster.md)。确保集群所在的区域与[步骤 2](/tidb-cloud/tidb-cloud-encrypt-cmek.md#步骤-2-完成项目的-cmek-配置)中的区域相同。 +在 [步骤 1](#step-1-create-a-cmek-enabled-project) 创建的项目下,创建托管于 AWS 的 TiDB Cloud Dedicated 集群。详细步骤请参考 [此文档](/tidb-cloud/create-tidb-cluster.md)。请确保集群所在区域与 [步骤 2](/tidb-cloud/tidb-cloud-encrypt-cmek.md#step-2-complete-the-cmek-configuration-of-the-project) 中配置的区域一致。 > **注意:** > -> 启用 CMEK 后,集群节点使用的 EBS 卷和集群备份使用的 S3 都将使用 CMEK 进行加密。 +> 启用 CMEK 后,集群节点使用的 EBS 卷以及集群备份使用的 S3 都会使用 CMEK 进行加密。 ## 轮换 CMEK -你可以在 AWS KMS 上配置[自动 CMEK 轮换](http://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html)。启用此轮换后,你无需在 TiDB Cloud 的项目设置中更新 **Encryption Access**,包括 CMEK ID。 +你可以在 AWS KMS 上配置 [自动 CMEK 轮换](http://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html)。启用轮换后,无需在 TiDB Cloud 项目的 **Encryption Access** 设置中更新 CMEK ID。 -## 撤销和恢复 CMEK +## 撤销与恢复 CMEK -如果你需要临时撤销 TiDB Cloud 对 CMEK 的访问权限,请执行以下步骤: +如果你需要临时撤销 TiDB Cloud 对 CMEK 的访问权限,请按照以下步骤操作: -1. 在 AWS KMS 控制台上,撤销相应的权限并更新 KMS 密钥策略。 -2. 在 TiDB Cloud 控制台上,暂停项目中的所有集群。 +1. 在 AWS KMS 控制台撤销相应权限,并更新 KMS Key 策略。 +2. 在 TiDB Cloud 控制台暂停该项目下的所有集群。 > **注意:** > -> 在 AWS KMS 上撤销 CMEK 后,你正在运行的集群不会受到影响。但是,当你暂停集群然后恢复集群时,由于无法访问 CMEK,集群将无法正常恢复。 +> 在 AWS KMS 上撤销 CMEK 后,正在运行的集群不会受到影响。但当你暂停集群并尝试恢复时,由于无法访问 CMEK,集群将无法正常恢复。 -撤销 TiDB Cloud 对 CMEK 的访问权限后,如果你需要恢复访问权限,请执行以下步骤: +撤销 TiDB Cloud 对 CMEK 的访问权限后,如果需要恢复访问权限,请按照以下步骤操作: -1. 在 AWS KMS 控制台上,恢复 CMEK 访问策略。 -2. 在 TiDB Cloud 控制台上,恢复项目中的所有集群。 +1. 在 AWS KMS 控制台恢复 CMEK 访问策略。 +2. 在 TiDB Cloud 控制台恢复该项目下的所有集群。 \ No newline at end of file diff --git a/tidb-cloud/tidb-cloud-events.md b/tidb-cloud/tidb-cloud-events.md index fbf27481119a2..14e96fb22f6ac 100644 --- a/tidb-cloud/tidb-cloud-events.md +++ b/tidb-cloud/tidb-cloud-events.md @@ -1,58 +1,58 @@ --- -title: TiDB Cloud 集群事件 -summary: 了解如何使用事件页面查看 TiDB Cloud 集群的事件。 +title: TiDB Cloud Cluster Events +summary: 了解如何使用 Events 页面查看 TiDB Cloud 集群的事件。 --- # TiDB Cloud 集群事件 -TiDB Cloud 会在集群层面记录历史事件。*事件*表示 TiDB Cloud 集群中的一个变更。你可以在**事件**页面查看已记录的事件,包括事件类型、状态、消息、触发时间和触发用户。 +TiDB Cloud 会在集群层级记录历史事件。一个 *event* 表示你的 TiDB Cloud 集群发生了某种变更。你可以在 **Events** 页面查看已记录的事件,包括事件类型、状态、消息、触发时间和触发用户。 -本文档介绍如何使用**事件**页面查看 TiDB Cloud 集群的事件,并列出支持的事件类型。 +本文档介绍如何使用 **Events** 页面查看 TiDB Cloud 集群的事件,并列出了支持的事件类型。 -## 查看事件页面 +## 查看 Events 页面 -要在**事件**页面查看事件,请按照以下步骤操作: +要在 **Events** 页面查看事件,请按照以下步骤操作: -1. 在项目的 [**集群**](https://tidbcloud.com/project/clusters) 页面,点击目标集群的名称以进入其概览页面。 +1. 在你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群的名称,进入其概览页面。 - > **提示:** + > **Tip:** > > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 -2. 在左侧导航栏中,点击**监控** > **事件**。 +2. 在左侧导航栏,点击 **Monitoring** > **Events**。 ## 已记录的事件 -TiDB Cloud 记录以下类型的集群事件: +TiDB Cloud 会记录以下类型的集群事件: -| 事件类型 | 描述 | +| Event Type| Description | |:--- |:--- | -| CreateCluster | 创建集群 | -| PauseCluster | 暂停集群 | -| ResumeCluster | 恢复集群 | -| ModifyClusterSize | 修改集群大小 | -| BackupCluster | 备份集群 | -| ExportBackup | 导出备份 | -| RestoreFromCluster | 恢复集群 | -| CreateChangefeed | 创建 changefeed | -| PauseChangefeed | 暂停 changefeed | -| ResumeChangefeed | 恢复 changefeed | -| DeleteChangefeed | 删除 changefeed | -| EditChangefeed | 编辑 changefeed | -| ScaleChangefeed | 调整 changefeed 规格 | -| FailedChangefeed | Changefeed 失败 | -| ImportData | 向集群导入数据 | -| UpdateSpendingLimit | 更新 TiDB Cloud Serverless 可扩展集群的支出限制 | -| ResourceLimitation | 更新 TiDB Cloud Serverless 集群的资源限制 | - -对于每个事件,会记录以下信息: - -- 事件类型 -- 状态 -- 消息 -- 时间 -- 触发者 +| CreateCluster | 创建集群 | +| PauseCluster | 暂停集群 | +| ResumeCluster | 恢复集群 | +| ModifyClusterSize | 修改集群规格 | +| BackupCluster | 备份集群 | +| ExportBackup | 导出备份 | +| RestoreFromCluster | 恢复集群 | +| CreateChangefeed | 创建 changefeed | +| PauseChangefeed | 暂停 changefeed | +| ResumeChangefeed | 恢复 changefeed | +| DeleteChangefeed | 删除 changefeed | +| EditChangefeed | 编辑 changefeed | +| ScaleChangefeed | 扩容 changefeed 规格 | +| FailedChangefeed | changefeed 失败 | +| ImportData | 向集群导入数据 | +| UpdateSpendingLimit | 更新 TiDB Cloud Serverless 弹性集群的消费上限 | +| ResourceLimitation | 更新 TiDB Cloud Serverless 集群的资源限制 | + +对于每个事件,都会记录以下信息: + +- Event Type +- Status +- Message +- Time +- Triggered By ## 事件保留策略 -事件数据保留 7 天。 +事件数据会保留 7 天。 \ No newline at end of file diff --git a/tidb-cloud/tidb-cloud-faq.md b/tidb-cloud/tidb-cloud-faq.md index 69b3d1597db80..56361d877f608 100644 --- a/tidb-cloud/tidb-cloud-faq.md +++ b/tidb-cloud/tidb-cloud-faq.md @@ -1,207 +1,207 @@ --- title: TiDB Cloud 常见问题 -summary: 了解关于 TiDB Cloud 的最常见问题(FAQ)。 +summary: 了解与 TiDB Cloud 相关的最常见问题(FAQs)。 --- # TiDB Cloud 常见问题 -本文列出了关于 TiDB Cloud 的最常见问题。 +本文档列出了关于 TiDB Cloud 的最常见问题。 -## 一般问题 +## 通用常见问题 ### 什么是 TiDB Cloud? -TiDB Cloud 通过完全托管的云实例使部署、管理和维护 TiDB 集群变得更加简单,你可以通过直观的控制台来控制它。你可以轻松地在 Amazon Web Services (AWS)、Google Cloud 或 Microsoft Azure 上部署,快速构建关键任务应用程序。 +TiDB Cloud 通过一个直观的控制台,让你能够更简单地部署、管理和维护 TiDB 集群,提供了完全托管的云实例。你可以轻松地在 Amazon Web Services (AWS)、Google Cloud 或 Microsoft Azure 上部署,以便快速构建关键业务应用。 -TiDB Cloud 使得几乎不需要培训的开发人员和 DBA 也能轻松处理曾经复杂的任务,如基础设施管理和集群部署,从而专注于你的应用程序,而不是数据库的复杂性。通过简单的点击按钮即可扩展或收缩 TiDB 集群,你不再浪费昂贵的资源,因为你可以根据需要的容量和时间来配置数据库。 +TiDB Cloud 让开发者和 DBA 即使没有或几乎没有培训,也能轻松处理曾经复杂的任务,如基础设施管理和集群部署,从而专注于你的应用,而不是数据库的复杂性。通过一键横向扩展或缩容 TiDB 集群,你可以根据实际需求灵活配置数据库资源,避免资源浪费。 ### TiDB 和 TiDB Cloud 之间是什么关系? -TiDB 是一个开源数据库,是希望在自己的数据中心、自管理的云环境或两者混合环境中运行 TiDB Self-Managed 的组织的最佳选择。 +TiDB 是一个开源数据库,非常适合希望在自有数据中心、自管云环境或两者混合环境中运行 TiDB 自管版的组织。 -TiDB Cloud 是 TiDB 的完全托管的云数据库即服务。它具有易于使用的基于 Web 的管理控制台,让你可以管理关键任务生产环境的 TiDB 集群。 +TiDB Cloud 是 TiDB 的完全托管云数据库服务(Database as a Service)。它提供了易用的基于 Web 的管理控制台,帮助你管理关键生产环境下的 TiDB 集群。 -### TiDB Cloud 是否与 MySQL 兼容? +### TiDB Cloud 兼容 MySQL 吗? -目前,TiDB Cloud 支持大部分 MySQL 5.7 和 MySQL 8.0 语法,但不支持触发器、存储过程和用户定义函数。更多详细信息,请参见[与 MySQL 的兼容性](/mysql-compatibility.md)。 +目前,TiDB Cloud 支持大部分 MySQL 5.7 和 MySQL 8.0 语法,但不支持触发器、存储过程和用户自定义函数。更多详情,参见 [与 MySQL 的兼容性](/mysql-compatibility.md)。 -### 我可以使用哪些编程语言来使用 TiDB Cloud? +### 我可以用哪些编程语言操作 TiDB Cloud? -你可以使用任何支持 MySQL 客户端或驱动程序的语言。 +你可以使用任何被 MySQL 客户端或驱动支持的语言。 ### 我可以在哪里运行 TiDB Cloud? TiDB Cloud 目前可在 Amazon Web Services (AWS)、Google Cloud 和 Microsoft Azure 上使用。 -### TiDB Cloud 是否支持不同云服务提供商之间的 VPC 对等连接? +### TiDB Cloud 支持不同云服务商之间的 VPC 对等连接吗? 不支持。 -### TiDB Cloud 支持哪些版本的 TiDB? +### TiDB Cloud 支持哪些 TiDB 版本? -- 从 2025 年 1 月 2 日起,新建 TiDB Cloud Dedicated 集群的默认 TiDB 版本是 [v8.1.2](https://docs.pingcap.com/tidb/v8.1/release-8.1.2)。 -- 从 2024 年 2 月 21 日起,TiDB Cloud Serverless 集群的 TiDB 版本是 [v7.1.3](https://docs.pingcap.com/tidb/v7.1/release-7.1.3)。 +- 对于新建的 TiDB Cloud 专属集群,自 2025 年 7 月 15 日起,默认 TiDB 版本为 [v8.5.2](https://docs.pingcap.com/tidb/v8.5/release-8.5.2)。 +- 对于 TiDB Cloud Serverless 集群,自 2025 年 4 月 22 日起,TiDB 版本为 [v7.5.2](https://docs.pingcap.com/tidb/v7.5/release-7.5.2)。 -更多信息,请参见 [TiDB Cloud 发布说明](/tidb-cloud/tidb-cloud-release-notes.md)。 +更多信息,参见 [TiDB Cloud 发布说明](/tidb-cloud/tidb-cloud-release-notes.md)。 ### 哪些公司在生产环境中使用 TiDB 或 TiDB Cloud? -TiDB 受到全球超过 1500 家企业的信任,涉及金融服务、游戏和电子商务等各个行业。我们的用户包括 Square(美国)、Shopee(新加坡)和中国银联(中国)。具体详情请参见我们的[案例研究](https://www.pingcap.com/customers/)。 +TiDB 已被全球 1500 多家企业信赖,覆盖金融服务、游戏、电商等多个行业。我们的用户包括 Square(美国)、Shopee(新加坡)和中国银联(中国)。具体案例请参见我们的 [客户案例](https://www.pingcap.com/customers/)。 ### SLA 是什么样的? -TiDB Cloud 提供 99.99% 的 SLA。详情请参见 [TiDB Cloud 服务的服务级别协议](https://www.pingcap.com/legal/service-level-agreement-for-tidb-cloud-services/)。 +TiDB Cloud 提供 99.99% 的 SLA。详情参见 [TiDB Cloud 服务级别协议](https://www.pingcap.com/legal/service-level-agreement-for-tidb-cloud-services/)。 ### TiDB Cloud 中的 BETA 是什么意思? -BETA 是 TiDB Cloud 功能或产品在正式发布(GA)之前的公开预览阶段。 +BETA 是 TiDB Cloud 某项功能或服务在正式发布(GA)前的公开预览阶段。 -### 如何了解更多关于 TiDB Cloud 的信息? +### 如何进一步了解 TiDB Cloud? -了解 TiDB Cloud 的最好方法是按照我们的分步教程进行操作。查看以下主题以开始: +了解 TiDB Cloud 的最佳方式是按照我们的分步教程操作。你可以从以下主题开始: - [TiDB Cloud 简介](/tidb-cloud/tidb-cloud-intro.md) -- [开始使用](/tidb-cloud/tidb-cloud-quickstart.md) +- [快速入门](/tidb-cloud/tidb-cloud-quickstart.md) - [创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md) -### 删除集群时提到的 `XXX's Org/default project/Cluster0` 是什么意思? +### 删除集群时,`XXX's Org/default project/Cluster0` 指的是什么? -在 TiDB Cloud 中,集群由组织名称、项目名称和集群名称的组合唯一标识。为确保你删除的是预期的集群,你需要提供该集群的完全限定名称,例如 `XXX's Org/default project/Cluster0`。 +在 TiDB Cloud 中,一个集群由组织名、项目名和集群名唯一标识。为了确保你删除的是目标集群,你需要提供该集群的全限定名称,例如 `XXX's Org/default project/Cluster0`。 -## 架构问题 +## 架构常见问题 -### 我的 TiDB 集群中有不同的组件。TiDB、TiKV 和 TiFlash 节点是什么? +### 我的 TiDB 集群中有不同的组件。什么是 TiDB、TiKV 和 TiFlash 节点? -TiDB 是 SQL 计算层,用于聚合从 TiKV 或 TiFlash 存储返回的查询数据。TiDB 可以水平扩展;增加 TiDB 节点数量将增加集群可以处理的并发查询数量。 +TiDB 是 SQL 计算层,用于聚合来自 TiKV 或 TiFlash 存储的查询数据。TiDB 支持水平扩展,增加 TiDB 节点数量可以提升集群的并发查询能力。 -TiKV 是用于存储 OLTP 数据的事务存储。TiKV 中的所有数据都自动维护多个副本(默认为三个副本),因此 TiKV 具有原生高可用性并支持自动故障转移。TiKV 可以水平扩展;增加事务存储数量将增加 OLTP 吞吐量。 +TiKV 是事务型存储,用于存储 OLTP 数据。TiKV 中的所有数据会自动维护多副本(默认三副本),因此 TiKV 天生具备高可用性并支持自动故障转移。TiKV 支持水平扩展,增加事务存储节点可以提升 OLTP 吞吐量。 -TiFlash 是分析存储,它实时从事务存储(TiKV)复制数据,并支持实时 OLAP 工作负载。与 TiKV 不同,TiFlash 以列式存储数据以加速分析处理。TiFlash 也可以水平扩展;增加 TiFlash 节点将增加 OLAP 存储和计算能力。 +TiFlash 是分析型存储,实时从事务存储(TiKV)同步数据,支持实时 OLAP 负载。与 TiKV 不同,TiFlash 以列存方式存储数据,加速分析型处理。TiFlash 也支持水平扩展,增加 TiFlash 节点可以提升 OLAP 存储和计算能力。 -PD(Placement Driver)是整个 TiDB 集群的"大脑",因为它存储了集群的元数据。它根据 TiKV 节点实时报告的数据分布状态向特定的 TiKV 节点发送数据调度命令。在 TiDB Cloud 中,每个集群的 PD 由 PingCAP 管理,你无法看到或维护它。 +PD(Placement Driver)是整个 TiDB 集群的“大脑”,负责存储集群元数据。它根据 TiKV 节点实时上报的数据分布状态,向特定 TiKV 节点下发数据调度命令。在 TiDB Cloud 上,每个集群的 PD 由 PingCAP 统一管理,你无法直接查看或维护。 ### TiDB 如何在 TiKV 节点之间复制数据? -TiKV 将键值空间划分为键范围,每个键范围被视为一个"Region"。在 TiKV 中,数据分布在集群中的所有节点上,并使用 Region 作为基本单位。PD 负责将 Region 尽可能均匀地分布(调度)到集群中的所有节点上。 +TiKV 将键值空间划分为多个键区间,每个区间称为一个 “Region”。在 TiKV 中,数据以 Region 为基本单位分布在集群所有节点上。PD 负责将 Region 尽可能均匀地调度到集群所有节点。 -TiDB 使用 Raft 共识算法按 Region 复制数据。存储在不同节点上的 Region 的多个副本形成一个 Raft Group。 +TiDB 采用 Raft 共识算法,通过 Region 进行数据复制。存储在不同节点上的同一个 Region 的多个副本组成一个 Raft Group。 -每个数据更改都记录为一个 Raft 日志。通过 Raft 日志复制,数据被安全可靠地复制到 Raft Group 的多个节点上。 +每次数据变更都会被记录为一条 Raft 日志。通过 Raft 日志复制,数据能够安全可靠地同步到 Raft Group 的多个节点。 -## 高可用性问题 +## 高可用性常见问题 -### TiDB Cloud 如何确保高可用性? +### TiDB Cloud 如何保证高可用性? -TiDB 使用 Raft 共识算法确保数据在 Raft Groups 中的存储具有高可用性和安全复制。数据在 TiKV 节点之间冗余复制,并放置在不同的可用区中,以防止机器或数据中心故障。通过自动故障转移,TiDB 确保你的服务始终在线。 +TiDB 采用 Raft 共识算法,确保数据在 Raft Group 内高度可用并安全复制。数据会在 TiKV 节点之间冗余复制,并分布在不同的可用区,以防止机器或数据中心故障。通过自动故障转移,TiDB 能确保你的服务始终可用。 -作为软件即服务(SaaS)提供商,我们非常重视数据安全。我们已经建立了 [Service Organization Control (SOC) 2 Type 1 合规](https://www.pingcap.com/press-release/pingcap-successfully-completes-soc-2-type-1-examination-for-tidb-cloud/) 所要求的严格信息安全政策和程序。这确保了你的数据是安全、可用和保密的。 +作为 SaaS(软件即服务)提供商,我们高度重视数据安全。我们已建立了严格的信息安全政策和流程,符合 [SOC 2 Type 1 合规性](https://www.pingcap.com/press-release/pingcap-successfully-completes-soc-2-type-1-examination-for-tidb-cloud/) 的要求。这确保了你的数据安全、可用且保密。 -## 迁移问题 +## 迁移常见问题 -### 是否有从其他 RDBMS 迁移到 TiDB Cloud 的简单途径? +### 从其他关系型数据库迁移到 TiDB Cloud 是否有便捷路径? -TiDB 与 MySQL 高度兼容。你可以从任何 MySQL 兼容的数据库平滑迁移数据到 TiDB,无论数据是来自自托管的 MySQL 实例还是公共云提供的 RDS 服务。更多信息,请参见[使用数据迁移将 MySQL 兼容数据库迁移到 TiDB Cloud](/tidb-cloud/migrate-from-mysql-using-data-migration.md)。 +TiDB 高度兼容 MySQL。你可以顺利地将数据从任何 MySQL 兼容数据库迁移到 TiDB,无论数据来自自建 MySQL 实例还是公有云提供的 RDS 服务。更多信息,参见 [使用数据迁移将 MySQL 兼容数据库迁移到 TiDB Cloud](/tidb-cloud/migrate-from-mysql-using-data-migration.md)。 -## 备份和恢复问题 +## 备份与恢复常见问题 -### TiDB Cloud 是否支持增量备份? +### TiDB Cloud 支持增量备份吗? -不支持。如果你需要将数据恢复到集群备份保留期内的任意时间点,你可以使用 PITR(时间点恢复)。更多信息,请参见[在 TiDB Cloud Dedicated 集群中使用 PITR](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup) 或[在 TiDB Cloud Serverless 集群中使用 PITR](/tidb-cloud/backup-and-restore-serverless.md#restore)。 +不支持。如果你需要在集群备份保留期内恢复到任意时间点,可以使用 PITR(时间点恢复)。更多信息,参见 [在 TiDB Cloud 专属集群中使用 PITR](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup) 或 [在 TiDB Cloud Serverless 集群中使用 PITR](/tidb-cloud/backup-and-restore-serverless.md#restore)。 -## HTAP 问题 +## HTAP 常见问题 -### 如何利用 TiDB Cloud 的 HTAP 功能? +### 如何利用 TiDB Cloud 的 HTAP 能力? -传统上,有两种类型的数据库:在线事务处理(OLTP)数据库和在线分析处理(OLAP)数据库。OLTP 和 OLAP 请求通常在不同的独立数据库中处理。使用这种传统架构,将数据从 OLTP 数据库迁移到数据仓库或数据湖进行 OLAP 是一个漫长且容易出错的过程。 +传统上,数据库分为联机事务处理(OLTP)和联机分析处理(OLAP)两类,OLTP 和 OLAP 请求通常在不同且隔离的数据库中处理。在这种架构下,将数据从 OLTP 数据库迁移到数据仓库或数据湖进行 OLAP 分析是一个漫长且易出错的过程。 -作为混合事务分析处理(HTAP)数据库,TiDB Cloud 通过在 OLTP(TiKV)存储和 OLAP(TiFlash)存储之间自动可靠地复制数据,帮助你简化系统架构,降低维护复杂性,并支持对事务数据进行实时分析。典型的 HTAP 用例包括用户个性化、AI 推荐、欺诈检测、商业智能和实时报告。 +作为混合事务与分析处理(HTAP)数据库,TiDB Cloud 通过在 OLTP(TiKV)存储和 OLAP(TiFlash)存储之间自动可靠地复制数据,帮助你简化系统架构,降低运维复杂度,并支持对事务数据的实时分析。典型 HTAP 场景包括用户个性化、AI 推荐、欺诈检测、商业智能和实时报表。 -有关更多 HTAP 场景,请参考[我们如何构建一个简化数据平台的 HTAP 数据库](https://pingcap.com/blog/how-we-build-an-htap-database-that-simplifies-your-data-platform)。 +更多 HTAP 场景,参见 [我们如何构建简化数据平台的 HTAP 数据库](https://pingcap.com/blog/how-we-build-an-htap-database-that-simplifies-your-data-platform)。 -### 我可以直接将数据导入到 TiFlash 吗? +### 我可以直接将数据导入 TiFlash 吗? -不可以。当你将数据导入到 TiDB Cloud 时,数据会被导入到 TiKV。导入完成后,你可以使用 SQL 语句指定要复制到 TiFlash 的表。然后,TiDB 会相应地在 TiFlash 中创建指定表的副本。更多信息,请参见[创建 TiFlash 副本](/tiflash/create-tiflash-replicas.md)。 +不可以。当你向 TiDB Cloud 导入数据时,数据会被导入到 TiKV。导入完成后,你可以通过 SQL 语句指定哪些表需要同步到 TiFlash。随后,TiDB 会在 TiFlash 中为指定表创建副本。更多信息,参见 [创建 TiFlash 副本](/tiflash/create-tiflash-replicas.md)。 -### 我可以将 TiFlash 数据以 CSV 格式导出吗? +### 我可以将 TiFlash 数据导出为 CSV 格式吗? 不可以。TiFlash 数据无法导出。 -## 安全问题 +## 安全性常见问题 -### TiDB Cloud 是否安全? +### TiDB Cloud 安全吗? -在 TiDB Cloud 中,所有静态数据都经过加密,所有网络流量都使用传输层安全性(TLS)加密。 +在 TiDB Cloud 中,所有静态数据都经过加密,所有网络流量均通过传输层安全协议(TLS)加密。 -- 静态数据加密使用加密存储卷自动完成。 -- 客户端和集群之间传输中的数据加密使用 TiDB Cloud Web 服务器 TLS 和 TiDB 集群 TLS 自动完成。 +- 静态数据加密通过加密存储卷自动完成。 +- 客户端与集群之间的数据传输加密通过 TiDB Cloud Web 服务器 TLS 和 TiDB 集群 TLS 自动完成。 ### TiDB Cloud 如何加密我的业务数据? -TiDB Cloud 默认使用存储卷加密来保护你的静态业务数据,包括你的数据库数据和备份数据。TiDB Cloud 要求对传输中的数据使用 TLS 加密,并要求对数据库集群中 TiDB、PD、TiKV 和 TiFlash 之间的数据进行组件级 TLS 加密。 +TiDB Cloud 默认对你的静态业务数据(包括数据库数据和备份数据)使用存储卷加密。TiDB Cloud 要求传输中的数据必须使用 TLS 加密,同时也要求数据库集群内部(TiDB、PD、TiKV、TiFlash 之间)进行组件级 TLS 加密。 -要获取有关 TiDB Cloud 中业务数据加密的更多具体信息,请联系 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 +如需获取 TiDB Cloud 业务数据加密的详细信息,请联系 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 -### TiDB Cloud 支持哪些版本的 TLS? +### TiDB Cloud 支持哪些 TLS 版本? TiDB Cloud 支持 TLS 1.2 或 TLS 1.3。 -### 我可以在我的 VPC 中运行 TiDB Cloud 吗? +### 我可以在自己的 VPC 中运行 TiDB Cloud 吗? -不可以。TiDB Cloud 是数据库即服务(DBaaS),只能在 TiDB Cloud VPC 中运行。作为云计算托管服务,TiDB Cloud 提供数据库访问,无需设置物理硬件和安装软件。 +不可以。TiDB Cloud 是数据库即服务(DBaaS),仅运行在 TiDB Cloud 的 VPC 中。作为云计算托管服务,TiDB Cloud 提供数据库访问,无需你搭建物理硬件和安装软件。 -### 我的 TiDB 集群是否安全? +### 我的 TiDB 集群安全吗? -在 TiDB Cloud 中,你可以根据需要使用 TiDB Cloud Dedicated 集群或 TiDB Cloud Serverless 集群。 +在 TiDB Cloud 中,你可以根据需求选择 TiDB Cloud 专属集群或 TiDB Cloud Serverless 集群。 -对于 TiDB Cloud Dedicated 集群,TiDB Cloud 通过以下措施确保集群安全: +对于 TiDB Cloud 专属集群,TiDB Cloud 通过以下措施保障集群安全: -- 为每个集群创建独立的子账户和 VPC。 -- 设置防火墙规则以隔离外部连接。 -- 为每个集群创建服务器端 TLS 证书和组件级 TLS 证书,以加密传输中的集群数据。 -- 为每个集群提供 IP 访问规则,确保只有允许的源 IP 地址才能访问你的集群。 +- 为每个集群创建独立的子账号和 VPC。 +- 设置防火墙规则,隔离外部连接。 +- 为每个集群创建服务端 TLS 证书和组件级 TLS 证书,加密集群内传输数据。 +- 为每个集群提供 IP 访问规则,确保只有允许的源 IP 地址可以访问你的集群。 -对于 TiDB Cloud Serverless 集群,TiDB Cloud 通过以下措施确保集群安全: +对于 TiDB Cloud Serverless 集群,TiDB Cloud 通过以下措施保障集群安全: -- 为每个集群创建独立的子账户。 -- 设置防火墙规则以隔离外部连接。 -- 提供集群服务器 TLS 证书以加密传输中的集群数据。 +- 为每个集群创建独立的子账号。 +- 设置防火墙规则,隔离外部连接。 +- 提供集群服务端 TLS 证书,加密集群内传输数据。 -### 如何连接到 TiDB 集群中的数据库? +### 如何连接 TiDB 集群中的数据库?
-对于 TiDB Cloud Dedicated 集群,连接到集群的步骤简化如下: +对于 TiDB Cloud 专属集群,连接集群的步骤简化如下: 1. 授权你的网络。 -2. 设置数据库用户和登录凭据。 +2. 设置数据库用户和登录凭证。 3. 下载并配置集群服务器的 TLS。 -4. 选择一个 SQL 客户端,获取 TiDB Cloud UI 上显示的自动生成的连接字符串,然后使用该字符串通过 SQL 客户端连接到你的集群。 +4. 选择 SQL 客户端,在 TiDB Cloud UI 上获取自动生成的连接字符串,然后通过该字符串在 SQL 客户端中连接集群。 -更多信息,请参见[连接到你的 TiDB Cloud Dedicated 集群](/tidb-cloud/connect-to-tidb-cluster.md)。 +更多信息,参见 [连接到你的 TiDB Cloud 专属集群](/tidb-cloud/connect-to-tidb-cluster.md)。
-对于 TiDB Cloud Serverless 集群,连接到集群的步骤简化如下: +对于 TiDB Cloud Serverless 集群,连接集群的步骤简化如下: -1. 设置数据库用户和登录凭据。 -2. 选择一个 SQL 客户端,获取 TiDB Cloud UI 上显示的自动生成的连接字符串,然后使用该字符串通过 SQL 客户端连接到你的集群。 +1. 设置数据库用户和登录凭证。 +2. 选择 SQL 客户端,在 TiDB Cloud UI 上获取自动生成的连接字符串,然后通过该字符串在 SQL 客户端中连接集群。 -更多信息,请参见[连接到你的 TiDB Cloud Serverless 集群](/tidb-cloud/connect-to-tidb-cluster-serverless.md)。 +更多信息,参见 [连接到你的 TiDB Cloud Serverless 集群](/tidb-cloud/connect-to-tidb-cluster-serverless.md)。
-## 支持问题 +## 支持常见问题 -### 为客户提供哪些支持? +### 客户可以获得哪些支持? -TiDB Cloud 由 TiDB 背后的同一团队提供支持,该团队已经为金融服务、电子商务、企业应用和游戏等行业的 1500 多家全球企业运行关键任务用例。TiDB Cloud 为每个用户提供免费的基本支持计划,你可以升级到付费计划以获得扩展服务。更多信息,请参见 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 +TiDB Cloud 由 TiDB 背后的同一团队提供支持,该团队已为全球 1500 多家企业的关键业务场景提供服务,覆盖金融服务、电商、企业应用和游戏等行业。TiDB Cloud 为每位用户提供免费基础支持计划,你也可以升级为付费计划以获得更全面的服务。更多信息,参见 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)。 ### 如何检查 TiDB Cloud 是否宕机? -你可以在[系统状态](https://status.tidbcloud.com/)页面上检查 TiDB Cloud 的当前运行时间状态。 +你可以在 [系统状态](https://status.tidbcloud.com/) 页面查看 TiDB Cloud 当前的运行状态。 \ No newline at end of file diff --git a/tidb-cloud/tidb-cloud-glossary.md b/tidb-cloud/tidb-cloud-glossary.md index f36c1fd8fd9e2..9343d86080e06 100644 --- a/tidb-cloud/tidb-cloud-glossary.md +++ b/tidb-cloud/tidb-cloud-glossary.md @@ -11,184 +11,184 @@ aliases: ['/tidbcloud/glossary'] ### ACID -ACID 指事务的四个关键属性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。每个属性描述如下: +ACID 指的是事务的四个关键特性:原子性(atomicity)、一致性(consistency)、隔离性(isolation)和持久性(durability)。每个特性如下所述。 -- **原子性**意味着操作的所有更改要么全部执行,要么全部不执行。TiDB 通过确保存储主键的 [TiDB Region](#region) 的原子性来实现事务的原子性。 +- **原子性** 意味着一个操作的所有更改要么全部执行,要么全部不执行。TiDB 通过保证存储主键的 [TiDB Region](#region) 的原子性来实现事务的原子性。 -- **一致性**意味着事务始终将数据库从一个一致的状态转换到另一个一致的状态。在 TiDB 中,在将数据写入内存之前会确保数据一致性。 +- **一致性** 意味着事务总是将数据库从一个一致的状态带到另一个一致的状态。在 TiDB 中,数据在写入内存前会确保一致性。 -- **隔离性**意味着正在进行的事务在完成之前对其他事务是不可见的。这允许并发事务在不牺牲一致性的情况下读写数据。TiDB 目前支持 `REPEATABLE READ` 隔离级别。 +- **隔离性** 意味着正在执行的事务在完成之前对其他事务是不可见的。这允许并发事务在不牺牲一致性的情况下读写数据。TiDB 目前支持 `REPEATABLE READ` 隔离级别。 -- **持久性**意味着一旦事务提交,即使在系统故障的情况下也保持提交状态。TiKV 使用持久存储来确保持久性。 +- **持久性** 意味着一旦事务提交,即使系统发生故障也会保持提交状态。TiKV 通过持久化存储来保证持久性。 ## C ### Chat2Query -Chat2Query 是集成在 SQL Editor 中的 AI 驱动功能,可以帮助用户使用自然语言指令生成、调试或重写 SQL 查询。更多信息,请参见[使用 AI 辅助的 SQL Editor 探索数据](/tidb-cloud/explore-data-with-chat2query.md)。 +Chat2Query 是集成在 SQL 编辑器中的一项 AI 驱动功能,能够帮助用户通过自然语言指令生成、调试或重写 SQL 查询。更多信息,参见 [使用 AI 辅助 SQL 编辑器探索数据](/tidb-cloud/explore-data-with-chat2query.md)。 -此外,TiDB Cloud 为 TiDB Cloud Serverless 集群提供 Chat2Query API。启用后,TiDB Cloud 将自动创建一个名为 **Chat2Query** 的系统 Data App 和 Data Service 中的 Chat2Data 端点。你可以调用此端点,通过提供指令让 AI 生成和执行 SQL 语句。更多信息,请参见[开始使用 Chat2Query API](/tidb-cloud/use-chat2query-api.md)。 +此外,TiDB Cloud 为 Serverless 集群提供了 Chat2Query API。启用后,TiDB Cloud 会自动创建一个名为 **Chat2Query** 的系统 Data App,并在 Data Service 中创建一个 Chat2Data 端点。你可以调用该端点,通过指令让 AI 生成并执行 SQL 语句。更多信息,参见 [开始使用 Chat2Query API](/tidb-cloud/use-chat2query-api.md)。 -### Credit(积分) +### Credit -TiDB Cloud 为概念验证(PoC)用户提供一定数量的积分。一个积分等于一美元。你可以在积分过期前使用积分支付 TiDB 集群费用。 +TiDB Cloud 为概念验证(PoC)用户提供一定数量的 Credit。一个 Credit 等同于一美元。你可以在 Credit 过期前使用它们支付 TiDB 集群费用。 ## D -### Data App(数据应用) +### Data App -[Data Service (beta)](#data-service) 中的 Data App 是可用于访问特定应用程序数据的端点集合。你可以使用 API 密钥配置授权设置,以限制对 Data App 中端点的访问。 +[Data Service (beta)](#data-service) 中的 Data App 是一组端点的集合,你可以用来访问特定应用的数据。你可以通过 API 密钥配置授权设置,限制对 Data App 中端点的访问。 -更多信息,请参见[管理 Data App](/tidb-cloud/data-service-manage-data-app.md)。 +更多信息,参见 [管理 Data App](/tidb-cloud/data-service-manage-data-app.md)。 -### Data Service(数据服务) +### Data Service -Data Service (beta) 使你能够通过使用自定义 API [端点](#endpoint)通过 HTTPS 请求访问 TiDB Cloud 数据。此功能使用无服务器架构来处理计算资源和弹性扩展,因此你可以专注于端点中的查询逻辑,而无需担心基础设施或维护成本。 +Data Service(beta)允许你通过自定义 API [端点](#endpoint) 以 HTTPS 请求方式访问 TiDB Cloud 数据。该功能采用无服务器架构,自动处理计算资源和弹性扩缩容,因此你可以专注于端点中的查询逻辑,无需担心基础设施或运维成本。 -更多信息,请参见[Data Service 概述](/tidb-cloud/data-service-overview.md)。 +更多信息,参见 [Data Service 概览](/tidb-cloud/data-service-overview.md)。 -### Direct Customer(直接客户) +### Direct Customer -直接客户是直接从 PingCAP 购买 TiDB Cloud 并支付账单的最终客户。这与 [MSP 客户](#msp-customer)不同。 +Direct Customer(直客)指的是直接从 PingCAP 购买 TiDB Cloud 并直接支付账单的最终客户。与 [MSP 客户](#msp-customer) 区分。 ## E -### Endpoint(端点) +### Endpoint -Data Service 中的端点是可以自定义以执行 SQL 语句的 Web API。你可以为 SQL 语句指定参数,例如在 `WHERE` 子句中使用的值。当客户端调用端点并在请求 URL 中为参数提供值时,端点会使用提供的参数执行相应的 SQL 语句,并将结果作为 HTTP 响应的一部分返回。 +Data Service 中的端点是你可以自定义以执行 SQL 语句的 Web API。你可以为 SQL 语句指定参数,例如 `WHERE` 子句中使用的值。当客户端调用端点并在请求 URL 中提供参数值时,端点会使用这些参数执行相应的 SQL 语句,并将结果作为 HTTP 响应的一部分返回。 -更多信息,请参见[管理端点](/tidb-cloud/data-service-manage-endpoint.md)。 +更多信息,参见 [管理端点](/tidb-cloud/data-service-manage-endpoint.md)。 ## F -### Full-text search(全文搜索) +### 全文检索(Full-text search) -与专注于语义相似性的[向量搜索](/tidb-cloud/vector-search-overview.md)不同,全文搜索让你可以检索精确关键词的文档。在检索增强生成(RAG)场景中,你可以将全文搜索与向量搜索结合使用,以提高检索质量。 +与关注语义相似度的 [向量检索](/vector-search/vector-search-overview.md) 不同,全文检索允许你通过精确关键词检索文档。在 RAG(Retrieval-Augmented Generation)场景下,你可以将全文检索与向量检索结合使用,以提升检索质量。 -更多信息,请参见[使用 SQL 进行全文搜索](/tidb-cloud/vector-search-full-text-search-sql.md)和[使用 Python 进行全文搜索](/tidb-cloud/vector-search-full-text-search-python.md)。 +更多信息,参见 [使用 SQL 进行全文检索](/tidb-cloud/vector-search-full-text-search-sql.md) 和 [使用 Python 进行全文检索](/tidb-cloud/vector-search-full-text-search-python.md)。 ## M -### member(成员) +### member -已被邀请加入组织的用户,可以访问该组织及其集群。 +被邀请加入某个组织的用户,拥有访问该组织及其集群的权限。 ### MPP -从 v5.0 开始,TiDB 通过 TiFlash 节点引入了大规模并行处理(MPP)架构,在 TiFlash 节点之间共享大型连接查询的执行工作负载。当启用 MPP 模式时,TiDB 会根据成本决定是否使用 MPP 框架执行计算。在 MPP 模式下,连接键通过 Exchange 操作在计算时重新分配,这将计算压力分配到每个 TiFlash 节点并加快计算速度。更多信息,请参见[使用 TiFlash MPP 模式](/tiflash/use-tiflash-mpp-mode.md)。 +自 v5.0 起,TiDB 通过 TiFlash 节点引入了大规模并行处理(Massively Parallel Processing,MPP)架构,将大型 Join 查询的执行负载分摊到多个 TiFlash 节点。当启用 MPP 模式时,TiDB 会根据成本判断是否使用 MPP 框架进行计算。在 MPP 模式下,Join 键会在计算过程中通过 Exchange 操作重新分布,将计算压力分散到每个 TiFlash 节点,从而加速计算。更多信息,参见 [使用 TiFlash MPP 模式](/tiflash/use-tiflash-mpp-mode.md)。 -### MSP Customer(MSP 客户) +### MSP Customer -托管服务提供商(MSP)客户是通过 MSP 渠道购买 TiDB Cloud 并支付账单的最终客户。这与[直接客户](#direct-customer)不同。 +MSP 客户(Managed Service Provider Customer)指的是通过 MSP 渠道购买 TiDB Cloud 并通过 MSP 支付账单的最终客户。与 [直客](#direct-customer) 区分。 -### Managed Service Provider(托管服务提供商,MSP) +### Managed Service Provider (MSP) -托管服务提供商(MSP)是转售 TiDB Cloud 并提供增值服务的合作伙伴,包括但不限于 TiDB Cloud 组织管理、计费服务和技术支持。 +MSP(托管服务提供商)是指转售 TiDB Cloud 并提供增值服务的合作伙伴,包括但不限于 TiDB Cloud 组织管理、计费服务和技术支持。 ## N -### node(节点) +### node 指数据实例(TiKV)、计算实例(TiDB)或分析实例(TiFlash)。 ## O -### organization(组织) +### organization -用于管理 TiDB Cloud 账户的实体,包括一个管理账户和任意数量的多个成员账户。 +你创建用于管理 TiDB Cloud 账户的实体,包括一个管理账户和任意数量的成员账户。 -### organization members(组织成员) +### organization members -组织成员是由组织所有者或项目所有者邀请加入组织的用户。组织成员可以查看组织的成员,并可以被邀请加入组织内的项目。 +组织成员是由组织所有者或项目所有者邀请加入组织的用户。组织成员可以查看组织成员,并可被邀请加入组织内的项目。 ## P -### policy(策略) +### policy -定义应用于角色、用户或组织的权限的文档,例如对特定操作或资源的访问权限。 +定义适用于角色、用户或组织的权限的文档,例如对特定操作或资源的访问权限。 -### project(项目) +### project -基于组织创建的项目,可以根据项目分别管理人员、实例和网络等资源,项目之间的资源不会相互干扰。 +基于组织创建的项目,可以按项目分别管理人员、实例、网络等资源,项目之间的资源互不干扰。 -### project members(项目成员) +### project members -项目成员是被邀请加入组织的一个或多个项目的用户。项目成员可以管理集群、网络访问、备份和其他资源。 +项目成员是被邀请加入组织中一个或多个项目的用户。项目成员可以管理集群、网络访问、备份等资源。 ## R -### Recycle Bin(回收站) +### 回收站(Recycle Bin) -存储具有有效备份的已删除集群数据的位置。一旦备份的 TiDB Cloud Dedicated 集群被删除,该集群的现有备份文件将被移至回收站。对于自动备份的备份文件,回收站将保留指定时间。你可以在**备份设置**中配置备份保留时间,默认为 7 天。对于手动备份的备份文件,没有过期日期。为避免数据丢失,请及时将数据恢复到新集群。请注意,如果集群**没有备份**,已删除的集群将不会显示在此处。 +用于存放已删除且有有效备份的集群数据的地方。一旦已备份的 TiDB Cloud 专属集群被删除,该集群现有的备份文件会被移动到回收站。对于自动备份产生的备份文件,回收站会保留指定时间。你可以在 **Backup Setting** 中配置备份保留时间,默认是 7 天。对于手动备份产生的备份文件,则没有过期时间。为避免数据丢失,请及时将数据恢复到新集群。注意,如果集群 **没有备份**,则删除的集群不会显示在此处。 -### region(区域) +### region -- TiDB Cloud region(TiDB Cloud 区域) +- TiDB Cloud region - 部署 TiDB Cloud 集群的地理区域。TiDB Cloud 区域包含至少 3 个可用区,集群跨这些区域部署。 + TiDB Cloud 集群部署的地理区域。一个 TiDB Cloud region 至少包含 3 个可用区,集群会跨这些可用区部署。 - TiDB Region - TiDB 中的基本数据单位。TiKV 将键值空间划分为一系列连续的键段,每个段称为一个 Region。每个 Region 的默认大小限制为 96 MB,可以配置。 + TiDB 中数据的基本单位。TiKV 将 Key-Value 空间划分为一系列连续的 Key 段,每个段称为一个 Region。每个 Region 的默认大小上限为 96 MB,可进行配置。 -### replica(副本) +### replica -可以位于相同或不同区域并包含相同数据的单独数据库。副本通常用于灾难恢复或提高性能。 +可以位于同一区域或不同区域的独立数据库,包含相同的数据。副本通常用于灾备或提升性能。 -### Replication Capacity Unit(复制容量单位) +### Replication Capacity Unit -changefeed 的复制根据计算资源收费,即 TiCDC 复制容量单位。 +变更数据流(changefeed)的复制按计算资源计费,即 TiCDC 复制容量单位。 -### Request Unit(请求单位) +### Request Unit -请求单位(RU)是用于表示单个数据库请求消耗的资源量的度量单位。请求消耗的 RU 数量取决于各种因素,例如操作类型或检索或修改的数据量。更多信息,请参见 [TiDB Cloud Serverless 定价详情](https://www.pingcap.com/tidb-cloud-serverless-pricing-details)。 +Request Unit(RU)是用于表示单个数据库请求消耗资源量的计量单位。一个请求消耗的 RU 数量取决于多种因素,如操作类型或检索/修改的数据量。更多信息,参见 [TiDB Cloud Serverless 计费详情](https://www.pingcap.com/tidb-cloud-serverless-pricing-details)。 ## S -### Spending limit(消费限额) +### Spending limit -消费限额指你愿意在特定工作负载上每月花费的最大金额。这是一种成本控制机制,使你能够为 TiDB Cloud Serverless 集群设置预算。对于[可扩展集群](/tidb-cloud/select-cluster-tier.md#scalable-cluster-plan),消费限额必须设置为最低 0.01 美元。此外,如果符合条件,可扩展集群可以获得免费配额。具有免费配额的可扩展集群将首先使用免费配额。 +Spending limit(消费上限)指的是你每月愿意为某个工作负载支付的最大金额。它是一种成本控制机制,可以让你为 TiDB Cloud Serverless 集群设置预算。对于 [可扩展集群](/tidb-cloud/select-cluster-tier.md#scalable-cluster-plan),消费上限至少需设置为 $0.01。此外,若可扩展集群符合条件,可享有免费额度,集群会优先消耗免费额度。 ## T -### TiDB cluster(TiDB 集群) +### TiDB cluster -由 [TiDB](https://docs.pingcap.com/tidb/stable/tidb-computing)、[TiKV](https://docs.pingcap.com/tidb/stable/tidb-storage)、[Placement Driver](https://docs.pingcap.com/tidb/stable/tidb-scheduling)(PD)和 [TiFlash](https://docs.pingcap.com/tidb/stable/tiflash-overview) 节点组成的功能性工作数据库集合。 +由 [TiDB](https://docs.pingcap.com/tidb/stable/tidb-computing)、[TiKV](https://docs.pingcap.com/tidb/stable/tidb-storage)、[Placement Driver](https://docs.pingcap.com/tidb/stable/tidb-scheduling)(PD)和 [TiFlash](https://docs.pingcap.com/tidb/stable/tiflash-overview) 节点组成的功能性数据库集群。 -### TiDB node(TiDB 节点) +### TiDB node -从事务或分析存储返回的查询数据进行聚合的计算节点。增加 TiDB 节点数量将增加集群可以处理的并发查询数量。 +聚合来自事务型或分析型存储查询结果的计算节点。增加 TiDB 节点数量可以提升集群可处理的并发查询数。 -### TiFlash node(TiFlash 节点) +### TiFlash node -实时从 TiKV 复制数据并支持实时分析工作负载的分析存储节点。 +实时从 TiKV 复制数据并支持实时分析型负载的分析型存储节点。 -### TiKV node(TiKV 节点) +### TiKV node -存储在线事务处理(OLTP)数据的存储节点。为了实现高可用性,它以 3 个节点的倍数(例如 3、6、9)进行扩展,其中两个节点作为副本。增加 TiKV 节点数量将增加总吞吐量。 +存储在线事务处理(OLTP)数据的存储节点。为高可用性,按 3 的倍数(如 3、6、9)扩容,其中两个节点作为副本。增加 TiKV 节点数量可以提升总吞吐量。 -### traffic filter(流量过滤器) +### traffic filter -允许通过 SQL 客户端访问 TiDB Cloud 集群的 IP 地址和无类域间路由(CIDR)地址列表。流量过滤器默认为空。 +允许通过 SQL 客户端访问 TiDB Cloud 集群的 IP 地址和无类别域间路由(CIDR)地址列表。默认情况下,traffic filter 为空。 ## V -### Vector search(向量搜索) +### 向量检索(Vector search) -[向量搜索](/tidb-cloud/vector-search-overview.md)是一种优先考虑数据含义以提供相关结果的搜索方法。与依赖精确关键词匹配和词频的传统全文搜索不同,向量搜索将各种数据类型(如文本、图像或音频)转换为高维向量,并基于这些向量之间的相似性进行查询。这种搜索方法捕获数据的语义含义和上下文信息,从而更准确地理解用户意图。即使搜索词与数据库中的内容不完全匹配,向量搜索仍然可以通过分析数据的语义提供符合用户意图的结果。 +[向量检索](/vector-search/vector-search-overview.md) 是一种以数据语义为核心、提供相关性结果的检索方式。与依赖精确关键词匹配和词频的传统全文检索不同,向量检索会将多种数据类型(如文本、图片或音频)转换为高维向量,并基于这些向量之间的相似度进行查询。这种检索方式能够捕捉数据的语义和上下文信息,更准确地理解用户意图。即使检索词与数据库内容不完全匹配,向量检索也能通过分析数据语义,返回符合用户意图的结果。 -### Virtual Private Cloud(虚拟私有云) +### Virtual Private Cloud -为你的资源提供托管网络服务的逻辑隔离虚拟网络分区。 +逻辑隔离的虚拟网络分区,为你的资源提供托管网络服务。 ### VPC -Virtual Private Cloud(虚拟私有云)的缩写。 +Virtual Private Cloud 的缩写。 -### VPC peering(VPC 对等连接) +### VPC peering -使你能够连接虚拟私有云([VPC](#vpc))网络,以便不同 VPC 网络中的工作负载可以私密通信。 +允许你连接多个 Virtual Private Cloud([VPC](#vpc))网络,使不同 VPC 网络中的工作负载可以私有通信。 -### VPC peering connection(VPC 对等连接) +### VPC peering connection -两个虚拟私有云(VPC)之间的网络连接,使你能够使用私有 IP 地址在它们之间路由流量,并帮助你促进数据传输。 +两个 Virtual Private Cloud(VPC)之间的网络连接,使你可以通过私有 IP 地址在它们之间路由流量,便于数据传输。 \ No newline at end of file diff --git a/tidb-cloud/tidb-cloud-htap-quickstart.md b/tidb-cloud/tidb-cloud-htap-quickstart.md index 1d1ffaa2588e9..6d1bdeb759f31 100644 --- a/tidb-cloud/tidb-cloud-htap-quickstart.md +++ b/tidb-cloud/tidb-cloud-htap-quickstart.md @@ -1,26 +1,26 @@ --- -title: TiDB Cloud HTAP 快速上手指南 +title: TiDB Cloud HTAP 快速入门 summary: 了解如何在 TiDB Cloud 中开始使用 HTAP。 aliases: ['/tidbcloud/use-htap-cluster'] --- -# TiDB Cloud HTAP 快速上手指南 +# TiDB Cloud HTAP 快速入门 -[HTAP](https://en.wikipedia.org/wiki/Hybrid_transactional/analytical_processing)(混合事务和分析处理)是指 Hybrid Transactional and Analytical Processing。TiDB Cloud 中的 HTAP 集群由 [TiKV](https://tikv.org)(为事务处理设计的行存储引擎)和 [TiFlash](https://docs.pingcap.com/tidb/stable/tiflash-overview)(为分析处理设计的列存储)组成。应用程序数据首先存储在 TiKV 中,然后通过 Raft 共识算法复制到 TiFlash。这是从行存储到列存储的实时复制。 +[HTAP](https://en.wikipedia.org/wiki/Hybrid_transactional/analytical_processing) 指的是混合事务与分析处理。TiDB Cloud 中的 HTAP 集群由 [TiKV](https://tikv.org)(为事务处理设计的行存储引擎)和 [TiFlash](https://docs.pingcap.com/tidb/stable/tiflash-overview)(为分析处理设计的列存储引擎)组成。你的应用数据首先存储在 TiKV 中,然后通过 Raft 共识算法实时同步到 TiFlash。因此,这是从行存储到列存储的实时复制。 -本教程将指导你体验 TiDB Cloud 的混合事务和分析处理(HTAP)功能。内容包括如何将表复制到 TiFlash、如何使用 TiFlash 运行查询以及如何体验性能提升。 +本教程将引导你以简单的方式体验 TiDB Cloud 的混合事务与分析处理(HTAP)特性。内容包括如何将表复制到 TiFlash、如何使用 TiFlash 运行查询,以及如何体验性能提升。 ## 开始之前 -在体验 HTAP 功能之前,请按照 [TiDB Cloud 快速上手指南](/tidb-cloud/tidb-cloud-quickstart.md)创建一个 TiDB Cloud Serverless 集群,并将 **Steam Game Stats** 示例数据集导入到集群中。 +在体验 HTAP 特性之前,请按照 [TiDB Cloud 快速入门](/tidb-cloud/tidb-cloud-quickstart.md) 创建一个 TiDB Cloud Serverless 集群,并将 **Steam Game Stats** 示例数据集导入到该集群中。 -## 步骤 +## 操作步骤 ### 步骤 1. 将示例数据复制到列存储引擎 -创建带有 TiFlash 节点的集群后,TiKV 默认不会将数据复制到 TiFlash。你需要在 TiDB 的 MySQL 客户端中执行 DDL 语句来指定要复制的表。之后,TiDB 将在 TiFlash 中相应地创建指定的表副本。 +创建包含 TiFlash 节点的集群后,TiKV 默认不会将数据复制到 TiFlash。你需要在 TiDB 的 MySQL 客户端中执行 DDL 语句,指定需要复制的表。之后,TiDB 会在 TiFlash 中相应地创建指定表的副本。 -例如,要将 `games` 表(在 **Steam Game Stats** 示例数据集中)复制到 TiFlash,请执行以下语句: +例如,要将(**Steam Game Stats** 示例数据集中的)`games` 表复制到 TiFlash,可以执行以下语句: ```sql USE game; @@ -30,7 +30,7 @@ USE game; ALTER TABLE games SET TIFLASH REPLICA 2; ``` -要检查复制进度,请执行以下语句: +要检查复制进度,可以执行以下语句: ```sql SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_ID, REPLICA_COUNT, LOCATION_LABELS, AVAILABLE, PROGRESS FROM information_schema.tiflash_replica WHERE TABLE_SCHEMA = 'game' and TABLE_NAME = 'games'; @@ -47,14 +47,14 @@ SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_ID, REPLICA_COUNT, LOCATION_LABELS, AVAIL 在上述语句的结果中: -- `AVAILABLE` 表示特定表的 TiFlash 副本是否可用。`1` 表示可用,`0` 表示不可用。一旦副本变为可用,此状态将不再改变。 -- `PROGRESS` 表示复制的进度。值在 `0` 和 `1` 之间。`1` 表示至少有一个副本已复制完成。 +- `AVAILABLE` 表示指定表的 TiFlash 副本是否可用。`1` 表示可用,`0` 表示不可用。一旦副本变为可用,该状态不会再变化。 +- `PROGRESS` 表示复制的进度。取值范围为 `0` 到 `1`。`1` 表示至少有一个副本已完成复制。 ### 步骤 2. 使用 HTAP 查询数据 当复制过程完成后,你就可以开始运行一些查询了。 -例如,你可以查看每年发布的游戏数量,以及平均价格和平均游戏时长: +例如,你可以统计每年发布的游戏数量,以及平均价格和平均游玩时长: ```sql SELECT @@ -70,11 +70,11 @@ ORDER BY `release_year` DESC; ``` -### 步骤 3. 比较行存储和列存储的查询性能 +### 步骤 3. 对比行存储与列存储的查询性能 -在这一步中,你可以比较 TiKV(行存储)和 TiFlash(列存储)之间的执行统计信息。 +在此步骤中,你可以对比 TiKV(行存储)和 TiFlash(列存储)的执行统计信息。 -- 要获取使用 TiKV 的查询执行统计信息,请执行以下语句: +- 若要获取该查询在 TiKV 上的执行统计信息,执行以下语句: ```sql EXPLAIN ANALYZE SELECT /*+ READ_FROM_STORAGE(TIKV[games]) */ @@ -90,27 +90,27 @@ ORDER BY `release_year` DESC; ``` - 对于具有 TiFlash 副本的表,TiDB 优化器会根据成本估算自动决定使用 TiKV 还是 TiFlash 副本。在上述 `EXPLAIN ANALYZE` 语句中,使用 `/*+ READ_FROM_STORAGE(TIKV[games]) */` 提示来强制优化器选择 TiKV,以便你可以查看 TiKV 的执行统计信息。 + 对于拥有 TiFlash 副本的表,TiDB 优化器会根据成本估算自动决定使用 TiKV 还是 TiFlash 副本。在上述 `EXPLAIN ANALYZE` 语句中,`/*+ READ_FROM_STORAGE(TIKV[games]) */` hint 用于强制优化器选择 TiKV,这样你可以查看 TiKV 的执行统计信息。 > **注意:** > - > 5.7.7 之前版本的 MySQL 命令行客户端默认会去除优化器提示。如果你在这些早期版本中使用 `Hint` 语法,请在启动客户端时添加 `--comments` 选项。例如:`mysql -h 127.0.0.1 -P 4000 -uroot --comments`。 + > 5.7.7 之前的 MySQL 命令行客户端默认会去除优化器 hint。如果你在这些早期版本中使用 `Hint` 语法,启动客户端时请加上 `--comments` 选项。例如:`mysql -h 127.0.0.1 -P 4000 -uroot --comments`。 - 在输出中,你可以从 `execution info` 列获取执行时间。 + 在输出结果中,你可以从 `execution info` 列获取执行时间。 ```sql - id | estRows | actRows | task | access object | execution info | operator info | memory | disk + id | estRows | actRows | task | access object | execution info | operator info | memory | disk ---------------------------+----------+---------+-----------+---------------+--------------------------------------------+-----------------------------------------------+---------+--------- - Sort_5 | 4019.00 | 28 | root | | time:672.7ms, loops:2, RU:1159.679690 | Column#36:desc | 18.0 KB | 0 Bytes - └─Projection_7 | 4019.00 | 28 | root | | time:672.7ms, loops:6, Concurrency:5 | year(game.games.release_date)->Column#36, ... | 35.5 KB | N/A - └─HashAgg_15 | 4019.00 | 28 | root | | time:672.6ms, loops:6, partial_worker:... | group by:Column#38, funcs:count(Column#39)... | 56.7 KB | N/A - └─TableReader_16 | 4019.00 | 28 | root | | time:672.4ms, loops:2, cop_task: {num:... | data:HashAgg_9 | 3.60 KB | N/A - └─HashAgg_9 | 4019.00 | 28 | cop[tikv] | | tikv_task:{proc max:300ms, min:0s, avg... | group by:year(game.games.release_date), ... | N/A | N/A - └─TableFullScan_14 | 68223.00 | 68223 | cop[tikv] | table:games | tikv_task:{proc max:290ms, min:0s, avg... | keep order:false | N/A | N/A + Sort_5 | 4019.00 | 28 | root | | time:672.7ms, loops:2, RU:1159.679690 | Column#36:desc | 18.0 KB | 0 Bytes + └─Projection_7 | 4019.00 | 28 | root | | time:672.7ms, loops:6, Concurrency:5 | year(game.games.release_date)->Column#36, ... | 35.5 KB | N/A + └─HashAgg_15 | 4019.00 | 28 | root | | time:672.6ms, loops:6, partial_worker:... | group by:Column#38, funcs:count(Column#39)... | 56.7 KB | N/A + └─TableReader_16 | 4019.00 | 28 | root | | time:672.4ms, loops:2, cop_task: {num:... | data:HashAgg_9 | 3.60 KB | N/A + └─HashAgg_9 | 4019.00 | 28 | cop[tikv] | | tikv_task:{proc max:300ms, min:0s, avg... | group by:year(game.games.release_date), ... | N/A | N/A + └─TableFullScan_14 | 68223.00 | 68223 | cop[tikv] | table:games | tikv_task:{proc max:290ms, min:0s, avg... | keep order:false | N/A | N/A (6 rows) ``` -- 要获取使用 TiFlash 的查询执行统计信息,请执行以下语句: +- 若要获取该查询在 TiFlash 上的执行统计信息,执行以下语句: ```sql EXPLAIN ANALYZE SELECT @@ -126,33 +126,33 @@ ORDER BY `release_year` DESC; ``` - 在输出中,你可以从 `execution info` 列获取执行时间。 + 在输出结果中,你可以从 `execution info` 列获取执行时间。 ```sql - id | estRows | actRows | task | access object | execution info | operator info | memory | disk + id | estRows | actRows | task | access object | execution info | operator info | memory | disk -------------------------------------+----------+---------+--------------+---------------+-------------------------------------------------------+--------------------------------------------+---------+--------- - Sort_5 | 4019.00 | 28 | root | | time:222.2ms, loops:2, RU:25.609675 | Column#36:desc | 3.77 KB | 0 Bytes - └─TableReader_39 | 4019.00 | 28 | root | | time:222.1ms, loops:2, cop_task: {num: 2, max: 0s,... | MppVersion: 1, data:ExchangeSender_38 | 4.64 KB | N/A - └─ExchangeSender_38 | 4019.00 | 28 | mpp[tiflash] | | tiflash_task:{time:214.8ms, loops:1, threads:1} | ExchangeType: PassThrough | N/A | N/A - └─Projection_8 | 4019.00 | 28 | mpp[tiflash] | | tiflash_task:{time:214.8ms, loops:1, threads:1} | year(game.games.release_date)->Column#3... | N/A | N/A - └─Projection_34 | 4019.00 | 28 | mpp[tiflash] | | tiflash_task:{time:214.8ms, loops:1, threads:1} | Column#33, div(Column#34, cast(case(eq(... | N/A | N/A - └─HashAgg_35 | 4019.00 | 28 | mpp[tiflash] | | tiflash_task:{time:214.8ms, loops:1, threads:1} | group by:Column#63, funcs:sum(Column#64... | N/A | N/A - └─ExchangeReceiver_37 | 4019.00 | 28 | mpp[tiflash] | | tiflash_task:{time:214.8ms, loops:1, threads:8} | | N/A | N/A - └─ExchangeSender_36 | 4019.00 | 28 | mpp[tiflash] | | tiflash_task:{time:210.6ms, loops:1, threads:1} | ExchangeType: HashPartition, Compressio... | N/A | N/A - └─HashAgg_33 | 4019.00 | 28 | mpp[tiflash] | | tiflash_task:{time:210.6ms, loops:1, threads:1} | group by:Column#75, funcs:count(1)->Col... | N/A | N/A - └─Projection_40 | 68223.00 | 68223 | mpp[tiflash] | | tiflash_task:{time:210.6ms, loops:2, threads:8} | game.games.price, game.games.price, gam... | N/A | N/A - └─TableFullScan_23 | 68223.00 | 68223 | mpp[tiflash] | table:games | tiflash_task:{time:210.6ms, loops:2, threads:8}, ... | keep order:false | N/A | N/A + Sort_5 | 4019.00 | 28 | root | | time:222.2ms, loops:2, RU:25.609675 | Column#36:desc | 3.77 KB | 0 Bytes + └─TableReader_39 | 4019.00 | 28 | root | | time:222.1ms, loops:2, cop_task: {num: 2, max: 0s,... | MppVersion: 1, data:ExchangeSender_38 | 4.64 KB | N/A + └─ExchangeSender_38 | 4019.00 | 28 | mpp[tiflash] | | tiflash_task:{time:214.8ms, loops:1, threads:1} | ExchangeType: PassThrough | N/A | N/A + └─Projection_8 | 4019.00 | 28 | mpp[tiflash] | | tiflash_task:{time:214.8ms, loops:1, threads:1} | year(game.games.release_date)->Column#3... | N/A | N/A + └─Projection_34 | 4019.00 | 28 | mpp[tiflash] | | tiflash_task:{time:214.8ms, loops:1, threads:1} | Column#33, div(Column#34, cast(case(eq(... | N/A | N/A + └─HashAgg_35 | 4019.00 | 28 | mpp[tiflash] | | tiflash_task:{time:214.8ms, loops:1, threads:1} | group by:Column#63, funcs:sum(Column#64... | N/A | N/A + └─ExchangeReceiver_37 | 4019.00 | 28 | mpp[tiflash] | | tiflash_task:{time:214.8ms, loops:1, threads:8} | | N/A | N/A + └─ExchangeSender_36 | 4019.00 | 28 | mpp[tiflash] | | tiflash_task:{time:210.6ms, loops:1, threads:1} | ExchangeType: HashPartition, Compressio... | N/A | N/A + └─HashAgg_33 | 4019.00 | 28 | mpp[tiflash] | | tiflash_task:{time:210.6ms, loops:1, threads:1} | group by:Column#75, funcs:count(1)->Col... | N/A | N/A + └─Projection_40 | 68223.00 | 68223 | mpp[tiflash] | | tiflash_task:{time:210.6ms, loops:2, threads:8} | game.games.price, game.games.price, gam... | N/A | N/A + └─TableFullScan_23 | 68223.00 | 68223 | mpp[tiflash] | table:games | tiflash_task:{time:210.6ms, loops:2, threads:8}, ... | keep order:false | N/A | N/A (11 rows) ``` > **注意:** > -> 由于示例数据的大小较小,且本文档中的查询非常简单,如果你已经强制优化器为此查询选择了 TiKV 并再次运行相同的查询,TiKV 将重用其缓存,因此查询可能会快得多。如果数据经常更新,缓存将会失效。 +> 由于示例数据量较小,且本文档中的查询非常简单,如果你已经强制优化器选择 TiKV 并再次运行相同查询,TiKV 可能会复用其缓存,因此查询速度可能会更快。如果数据经常更新,则缓存会失效。 ## 了解更多 -- [TiFlash 简介](/tiflash/tiflash-overview.md) +- [TiFlash 概述](/tiflash/tiflash-overview.md) - [创建 TiFlash 副本](/tiflash/create-tiflash-replicas.md) -- [使用 TiFlash](/tiflash/use-tidb-to-read-tiflash.md) +- [从 TiFlash 读取数据](/tiflash/use-tidb-to-read-tiflash.md) - [使用 MPP 模式](/tiflash/use-tiflash-mpp-mode.md) -- [支持的下推计算](/tiflash/tiflash-supported-pushdown-calculations.md) +- [支持下推的计算](/tiflash/tiflash-supported-pushdown-calculations.md) diff --git a/tidb-cloud/tidb-cloud-import-local-files.md b/tidb-cloud/tidb-cloud-import-local-files.md index 4c6b12a348654..e28280c2bf40e 100644 --- a/tidb-cloud/tidb-cloud-import-local-files.md +++ b/tidb-cloud/tidb-cloud-import-local-files.md @@ -1,93 +1,91 @@ --- -title: 将本地文件导入到 TiDB Cloud Serverless -summary: 了解如何将本地文件导入到 TiDB Cloud Serverless。 +title: Import Local Files to TiDB Cloud Serverless +summary: Learn how to import local files to TiDB Cloud Serverless. --- -# 将本地文件导入到 TiDB Cloud Serverless +# 将本地文件导入 TiDB Cloud Serverless -你可以直接将本地文件导入到 TiDB Cloud Serverless。只需点击几下即可完成任务配置,然后你的本地 CSV 数据将快速导入到你的 TiDB 集群。使用此方法,你无需提供云存储和凭证。整个导入过程快速流畅。 +你可以直接将本地文件导入 TiDB Cloud Serverless。只需几次点击即可完成任务配置,你的本地 CSV 数据就会被快速导入到 TiDB 集群中。使用此方法,无需提供云存储和凭证,整个导入过程快速且流畅。 -目前,此方法支持在一个任务中将一个 CSV 文件导入到一个空的现有表或新表中。 +目前,该方法支持每个任务导入一个 CSV 文件到现有的空表或新建表中。 ## 限制 -- 目前,TiDB Cloud 仅支持在一个任务中导入大小在 250 MiB 以内的 CSV 格式本地文件。 -- 导入本地文件仅支持 TiDB Cloud Serverless 集群,不支持 TiDB Cloud Dedicated 集群。 +- 目前,TiDB Cloud 仅支持每个任务导入一个小于 250 MiB 的本地 CSV 文件。 +- 本地文件导入仅支持 TiDB Cloud Serverless 集群,不支持 TiDB Cloud Dedicated 集群。 - 你不能同时运行多个导入任务。 ## 导入本地文件 -1. 打开目标集群的**导入**页面。 +1. 打开目标集群的 **Import** 页面。 - 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面。 + 1. 登录 [TiDB Cloud 控制台](https://tidbcloud.com/),并导航到项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 - 2. 点击目标集群的名称进入其概览页面,然后在左侧导航栏中点击**数据** > **导入**。 + 2. 点击目标集群名称进入其概览页面,然后在左侧导航栏点击 **Data** > **Import**。 -2. 在**导入**页面,你可以直接将本地文件拖放到上传区域,或点击**上传本地文件**选择并上传目标本地文件。注意,一个任务只能上传一个小于 250 MiB 的 CSV 文件。如果你的本地文件大于 250 MiB,请参见[如何导入大于 250 MiB 的本地文件?](#如何导入大于-250-mib-的本地文件)。 +2. 在 **Import** 页面,你可以直接将本地文件拖拽到上传区域,或点击 **Upload a local file** 选择并上传目标本地文件。请注意,每个任务只能上传一个小于 250 MiB 的 CSV 文件。如果你的本地文件大于 250 MiB,请参见 [如何导入大于 250 MiB 的本地文件?](#how-to-import-a-local-file-larger-than-250-mib)。 -3. 在**目标**部分,选择目标数据库和目标表,或直接输入名称创建新的数据库或新表。名称只能包含 Unicode BMP(基本多语言平面)中的字符,不包括空字符 `\u0000` 和空白字符,长度最多为 64 个字符。点击**定义表**,将显示**表定义**部分。 +3. 在 **Destination** 部分,选择目标数据库和目标表,或直接输入名称以创建新数据库或新表。名称只能包含 Unicode BMP(基本多文种平面)中的字符,不能包含空字符 `\u0000` 和空白字符,且长度最多为 64 个字符。点击 **Define Table**,会显示 **Table Definition** 部分。 -4. 检查表。 +4. 检查数据表。 - 你可以看到可配置的表列列表。每行显示 TiDB Cloud 推断的表列名、推断的表列类型以及 CSV 文件中的预览数据。 + 你可以看到可配置的数据表列列表。每一行显示 TiDB Cloud 推断出的表列名、推断出的表列类型,以及来自 CSV 文件的预览数据。 - - 如果你将数据导入到 TiDB Cloud 中的现有表,列列表是从表定义中提取的,预览数据通过列名映射到相应的列。 - - - 如果你要创建新表,列列表是从 CSV 文件中提取的,列类型由 TiDB Cloud 推断。例如,如果预览数据都是整数,推断的列类型将是整数。 + - 如果你将数据导入 TiDB Cloud 中的现有表,列列表会从表定义中提取,预览数据会按列名映射到对应的列。 + - 如果你需要创建新表,列列表会从 CSV 文件中提取,列类型由 TiDB Cloud 推断。例如,如果预览数据全为整数,则推断的列类型为整数。 5. 配置列名和数据类型。 - 如果 CSV 文件中的第一行记录了列名,请确保选中**使用第一行作为列名**,该选项默认是选中的。 - - 如果 CSV 文件没有列名行,请不要选中**使用第一行作为列名**。在这种情况下: + 如果 CSV 文件的第一行记录了列名,请确保已勾选 **Use first row as column name**,该选项默认已选中。 - - 如果目标表已存在,CSV 文件中的列将按顺序导入到目标表中。多余的列将被截断,缺少的列将填充默认值。 + 如果 CSV 文件没有列名行,请不要勾选 **Use first row as column name**。此时: - - 如果你需要 TiDB Cloud 创建目标表,请为每列输入名称。列名必须满足以下要求: + - 如果目标表已存在,CSV 文件中的列会按顺序导入到目标表。多余的列会被截断,缺失的列会用默认值填充。 + - 如果需要 TiDB Cloud 创建目标表,请为每一列输入名称。列名需满足以下要求: - * 名称必须由 Unicode BMP 中的字符组成,不包括空字符 `\u0000` 和空白字符。 - * 名称长度必须小于 65 个字符。 + * 名称只能由 Unicode BMP 字符组成,不能包含空字符 `\u0000` 和空白字符。 + * 名称长度需小于 65 个字符。 - 如果需要,你也可以更改数据类型。 + 你也可以根据需要更改数据类型。 - > **注意:** + > **Note:** > - > 当你将 CSV 文件导入到 TiDB Cloud 中的现有表,且目标表的列数多于源文件时,多余的列的处理方式取决于具体情况: - > - 如果多余的列不是主键或唯一键,不会报错。相反,这些多余的列将填充其[默认值](/data-type-default-values.md)。 - > - 如果多余的列是主键或唯一键,且没有 `auto_increment` 或 `auto_random` 属性,将会报错。在这种情况下,建议你选择以下策略之一: + > 当你将 CSV 文件导入 TiDB Cloud 的现有表且目标表比源文件多出列时,额外的列会根据不同情况进行处理: + > - 如果多出的列不是主键或唯一键,不会报错,这些列会被填充为其 [默认值](/data-type-default-values.md)。 + > - 如果多出的列是主键或唯一键,且没有 `auto_increment` 或 `auto_random` 属性,则会报错。此时建议选择以下策略之一: > - 提供包含这些主键或唯一键列的源文件。 - > - 修改目标表的主键和唯一键列以匹配源文件中的现有列。 + > - 修改目标表的主键和唯一键列,使其与源文件中的现有列匹配。 > - 将主键或唯一键列的属性设置为 `auto_increment` 或 `auto_random`。 -6. 对于新的目标表,你可以设置主键。你可以选择一列作为主键,或选择多列创建复合主键。复合主键将按照你选择列名的顺序形成。 +6. 对于新建的目标表,你可以设置主键。你可以选择某一列作为主键,或选择多列创建复合主键。复合主键会按照你选择列名的顺序组成。 - > **注意:** + > **Note:** > - > 表的主键是聚簇索引,创建后不能删除。 + > 表的主键为聚簇索引,创建后无法删除。 -7. 如果需要,编辑 CSV 配置。 +7. 如有需要,可编辑 CSV 配置。 - 你还可以点击**编辑 CSV 配置**来配置反斜杠转义、分隔符和定界符,以实现更精细的控制。有关 CSV 配置的更多信息,请参见 [CSV 导入数据配置](/tidb-cloud/csv-config-for-import-data.md)。 + 你也可以点击 **Edit CSV configuration**,对反斜杠转义、分隔符和定界符进行更细粒度的配置。关于 CSV 配置的更多信息,请参见 [导入数据的 CSV 配置](/tidb-cloud/csv-config-for-import-data.md)。 -8. 点击**开始导入**。 +8. 点击 **Start Import**。 - 你可以在**导入任务详情**页面查看导入进度。如果有警告或失败的任务,你可以查看详情并解决它们。 + 你可以在 **Import Task Detail** 页面查看导入进度。如果有警告或失败的任务,可以查看详情并进行处理。 -9. 导入任务完成后,你可以点击**使用 SQL 编辑器探索数据**来查询导入的数据。有关如何使用 SQL 编辑器的更多信息,请参见[使用 AI 辅助的 SQL 编辑器探索数据](/tidb-cloud/explore-data-with-chat2query.md)。 +9. 导入任务完成后,你可以点击 **Explore your data by SQL Editor**,通过 SQL 查询已导入的数据。关于如何使用 SQL Editor 的更多信息,请参见 [使用 AI 辅助 SQL Editor 探索数据](/tidb-cloud/explore-data-with-chat2query.md)。 -10. 在**导入**页面,你可以在**操作**列中点击 **...** > **查看**来检查导入任务详情。 +10. 在 **Import** 页面,你可以点击 **...** > **View**,在 **Action** 列查看导入任务详情。 -## 常见问题 +## FAQ -### 我可以只使用 TiDB Cloud 的导入功能导入指定的列吗? +### TiDB Cloud 的 Import 功能是否支持只导入指定的部分列? -不可以。目前,使用导入功能时,你只能将 CSV 文件的所有列导入到现有表中。 +不支持。目前,使用 Import 功能时只能将 CSV 文件的所有列导入到现有表中。 -要只导入指定的列,你可以使用 MySQL 客户端连接你的 TiDB 集群,然后使用 [`LOAD DATA`](https://docs.pingcap.com/tidb/stable/sql-statement-load-data) 指定要导入的列。例如: +如需只导入指定的部分列,你可以使用 MySQL 客户端连接 TiDB 集群,然后通过 [`LOAD DATA`](https://docs.pingcap.com/tidb/stable/sql-statement-load-data) 指定要导入的列。例如: ```sql CREATE TABLE `import_test` ( @@ -99,19 +97,19 @@ CREATE TABLE `import_test` ( LOAD DATA LOCAL INFILE 'load.txt' INTO TABLE import_test FIELDS TERMINATED BY ',' (name, address); ``` -如果你使用 `mysql` 并遇到 `ERROR 2068 (HY000): LOAD DATA LOCAL INFILE file request rejected due to restrictions on access.`,你可以在连接字符串中添加 `--local-infile=true`。 +如果你使用 `mysql` 并遇到 `ERROR 2068 (HY000): LOAD DATA LOCAL INFILE file request rejected due to restrictions on access.`,可以在连接字符串中添加 `--local-infile=true`。 -### 为什么导入数据到 TiDB Cloud 后无法查询带有保留关键字的列? +### 为什么将数据导入 TiDB Cloud 后,无法查询列名为保留关键字的列? -如果列名是 TiDB 中的保留[关键字](/keywords.md),当你查询该列时,需要添加反引号 `` ` `` 来包围列名。例如,如果列名是 `order`,你需要使用 `` `order` `` 来查询该列。 +如果列名为 TiDB 的保留 [关键字](/keywords.md),查询该列时需要用反引号 `` ` `` 包裹列名。例如,列名为 `order`,则需要用 `` `order` `` 查询该列。 ### 如何导入大于 250 MiB 的本地文件? -如果文件大于 250 MiB,你可以使用 [TiDB Cloud CLI](/tidb-cloud/get-started-with-cli.md) 来导入文件。更多信息,请参见 [`ticloud serverless import start`](/tidb-cloud/ticloud-import-start.md)。 +如果文件大于 250 MiB,你可以使用 [TiDB Cloud CLI](/tidb-cloud/get-started-with-cli.md) 进行导入。更多信息请参见 [`ticloud serverless import start`](/tidb-cloud/ticloud-import-start.md)。 -或者,你可以使用 `split [-l ${line_count}]` 工具将其分割成多个较小的文件(仅适用于 Linux 或 macOS)。例如,运行 `split -l 100000 tidb-01.csv small_files` 将名为 `tidb-01.csv` 的文件按行长度 `100000` 分割,分割后的文件命名为 `small_files${suffix}`。然后,你可以将这些较小的文件逐个导入到 TiDB Cloud。 +另外,你也可以使用 `split [-l ${line_count}]` 工具将其拆分为多个小文件(仅适用于 Linux 或 macOS)。例如,运行 `split -l 100000 tidb-01.csv small_files`,即可按每 100000 行将名为 `tidb-01.csv` 的文件拆分,拆分后的文件名为 `small_files${suffix}`。然后,你可以将这些小文件逐个导入 TiDB Cloud。 -参考以下脚本: +参考如下脚本: ```bash #!/bin/bash @@ -128,7 +126,7 @@ do done ``` -你可以输入 `n` 和文件名,然后运行脚本。脚本将文件平均分成 `n` 份,同时保持原始文件扩展名。例如: +你可以输入 `n` 和文件名,然后运行该脚本。脚本会将文件平均分为 `n` 份,并保留原有文件扩展名。例如: ```bash > sh ./split.sh 3 mytest.customer.csv @@ -137,4 +135,4 @@ mytest.customer.0.csv mytest.customer.1.csv mytest.customer.2.csv mytest.customer.csv -``` +``` \ No newline at end of file diff --git a/tidb-cloud/tidb-cloud-intro.md b/tidb-cloud/tidb-cloud-intro.md index f2e06b2dba0c6..fb30f7a44a55a 100644 --- a/tidb-cloud/tidb-cloud-intro.md +++ b/tidb-cloud/tidb-cloud-intro.md @@ -6,59 +6,59 @@ category: intro # 什么是 TiDB Cloud -[TiDB Cloud](https://www.pingcap.com/tidb-cloud/) 是一个全托管的数据库即服务(DBaaS),它将开源的混合事务和分析处理(HTAP)数据库 [TiDB](https://docs.pingcap.com/tidb/stable/overview) 带入云端。TiDB Cloud 提供了一种简单的方式来部署和管理数据库,让你可以专注于应用程序开发,而不是数据库的复杂性。你可以创建 TiDB Cloud 集群,在 Amazon Web Services (AWS)、Google Cloud 和 Microsoft Azure 上快速构建关键任务应用。 +[TiDB Cloud](https://www.pingcap.com/tidb-cloud/) 是一款全托管的数据库即服务(DBaaS),将 [TiDB](https://docs.pingcap.com/tidb/stable/overview) —— 一个开源的 HTAP(混合事务与分析处理)数据库 —— 带到你的云端。TiDB Cloud 提供了一种简单的方式来部署和管理数据库,让你专注于应用程序本身,而无需关注数据库的复杂性。你可以在 Amazon Web Services (AWS)、Google Cloud 和 Microsoft Azure 上创建 TiDB Cloud 集群,快速构建关键业务应用。 -![TiDB Cloud 概览](/media/tidb-cloud/tidb-cloud-overview.png) +![TiDB Cloud Overview](/media/tidb-cloud/tidb-cloud-overview.png) ## 为什么选择 TiDB Cloud -TiDB Cloud 使你无需或仅需少量培训就能轻松处理复杂的任务,如基础设施管理和集群部署。 +TiDB Cloud 让你几乎无需培训即可轻松处理诸如基础设施管理和集群部署等复杂任务。 -- 开发人员和数据库管理员(DBA)可以轻松处理大量在线流量,并快速分析跨多个数据集的大量数据。 +- 开发者和数据库管理员(DBA)可以轻松应对大量在线流量,并快速分析跨多个数据集的大规模数据。 -- 各种规模的企业都可以轻松部署和管理 TiDB Cloud,无需预付费用即可适应业务增长。 +- 各类规模的企业都可以轻松部署和管理 TiDB Cloud,无需预付费用,灵活应对业务增长。 -观看以下视频了解更多关于 TiDB Cloud 的信息: +观看以下视频,进一步了解 TiDB Cloud: 使用 TiDB Cloud,你可以获得以下关键特性: -- **快速且可定制的扩展** +- **Fast and Customized Scaling** - 在保持 ACID 事务的同时,可以弹性且透明地扩展到数百个节点以支持关键工作负载。无需考虑分片。你可以根据业务需求分别扩展性能节点和存储节点。 + 弹性且透明地扩展至数百个节点以应对关键负载,同时保持 ACID 事务。无需进行分片操作。你还可以根据业务需求分别扩展计算节点和存储节点。 -- **MySQL 兼容性** +- **MySQL Compatibility** - 借助 TiDB 的 MySQL 兼容性,提高生产力并缩短应用程序的上市时间。无需重写代码即可轻松从现有 MySQL 实例迁移数据。 + 借助 TiDB 的 MySQL 兼容性,提高开发效率并缩短应用上线时间。可以轻松地将现有 MySQL 实例中的数据迁移过来,无需重写代码。 -- **高可用性和可靠性** +- **High Availability and Reliability** - 设计上天然具备高可用性。跨多个可用区的数据复制、每日备份和自动故障转移确保业务连续性,无论是硬件故障、网络分区还是数据中心故障。 + 天生高可用的架构设计。数据在多个可用区间进行复制,支持每日备份和自动故障转移,无论遇到硬件故障、网络分区还是数据中心丢失,都能保障业务连续性。 -- **实时分析** +- **Real-Time Analytics** - 通过内置分析引擎获得实时分析查询结果。TiDB Cloud 可以在不影响关键任务应用的情况下,对当前数据运行一致的分析查询。 + 内置分析引擎,支持实时分析查询。TiDB Cloud 能在当前数据上运行一致性的分析查询,不会影响关键业务应用。 -- **企业级安全** +- **Enterprise Grade Security** - 在专用网络和机器中保护你的数据,支持传输中和静态数据加密。TiDB Cloud 已通过 SOC 2 Type 2、ISO 27001:2013、ISO 27701 认证,并完全符合 GDPR。 + 在专用网络和专用机器上保护你的数据,支持传输加密和静态加密。TiDB Cloud 已通过 SOC 2 Type 2、ISO 27001:2013、ISO 27701 认证,并完全符合 GDPR 要求。 -- **全托管服务** +- **Fully-Managed Service** - 通过易于使用的基于 Web 的管理平台,只需点击几下即可部署、扩展、监控和管理 TiDB 集群。 + 通过易用的基于 Web 的管理平台,只需几次点击即可部署、扩展、监控和管理 TiDB 集群。 -- **多云支持** +- **Multi-Cloud Support** - 保持灵活性,避免云厂商锁定。TiDB Cloud 目前可在 AWS、Azure 和 Google Cloud 上使用。 + 保持灵活性,避免被云厂商锁定。TiDB Cloud 目前支持 AWS、Azure 和 Google Cloud。 -- **简单的定价方案** +- **Simple Pricing Plans** - 只需为你使用的部分付费,价格透明且无隐藏费用。 + 只需为实际使用的资源付费,价格透明,无隐藏费用。 -- **世界级支持** +- **World-Class Support** - 通过我们的支持门户、电子邮件、聊天或视频会议获得世界级支持。 + 通过我们的支持门户、电子邮件、聊天或视频会议,获得世界级的技术支持。 ## 部署选项 @@ -66,26 +66,26 @@ TiDB Cloud 提供以下两种部署选项: - [TiDB Cloud Serverless](https://www.pingcap.com/tidb-cloud-serverless) - TiDB Cloud Serverless 是一个全托管的多租户 TiDB 产品。它提供即时、自动扩展的 MySQL 兼容数据库,并提供慷慨的免费额度,超出免费限制后按使用量计费。 + TiDB Cloud Serverless 是一款全托管的多租户 TiDB 服务。它提供即时、自动扩缩的 MySQL 兼容数据库,并在超出免费额度后按用量计费,免费额度充足。 - [TiDB Cloud Dedicated](https://www.pingcap.com/tidb-cloud-dedicated) - TiDB Cloud Dedicated 适用于生产环境,具有跨可用区高可用性、水平扩展和 [HTAP](https://en.wikipedia.org/wiki/Hybrid_transactional/analytical_processing) 的优势。 + TiDB Cloud Dedicated 适用于生产环境,具备跨可用区高可用性、水平扩展能力和 [HTAP](https://en.wikipedia.org/wiki/Hybrid_transactional/analytical_processing) 特性。 -有关 TiDB Cloud Serverless 和 TiDB Cloud Dedicated 的功能比较,请参阅 [TiDB:先进的开源分布式 SQL 数据库](https://www.pingcap.com/get-started-tidb)。 +关于 TiDB Cloud Serverless 与 TiDB Cloud Dedicated 的功能对比,请参见 [TiDB: An advanced, open source, distributed SQL database](https://www.pingcap.com/get-started-tidb)。 ## 架构 -![TiDB Cloud 架构](/media/tidb-cloud/tidb-cloud-architecture.png) +![TiDB Cloud architecture](/media/tidb-cloud/tidb-cloud-architecture.png) - TiDB VPC(虚拟私有云) 对于每个 TiDB Cloud 集群,所有 TiDB 节点和辅助节点(包括 TiDB Operator 节点和日志节点)都部署在同一个 VPC 中。 -- TiDB Cloud 中央服务 +- TiDB Cloud Central Services - 中央服务(包括计费、告警、元数据存储、仪表板 UI)是独立部署的。你可以通过互联网访问仪表板 UI 来操作 TiDB 集群。 + 中央服务(包括计费、告警、元数据存储、Dashboard UI)独立部署。你可以通过互联网访问 Dashboard UI 来操作 TiDB 集群。 - 你的 VPC - 你可以通过私有端点连接或 VPC 对等连接来连接你的 TiDB 集群。详情请参阅[设置私有端点连接](/tidb-cloud/set-up-private-endpoint-connections.md)或[设置 VPC 对等连接](/tidb-cloud/set-up-vpc-peering-connections.md)。 + 你可以通过私有终端节点连接或 VPC Peering 连接接入你的 TiDB 集群。详细信息请参考 [Set Up Private Endpoint Connections](/tidb-cloud/set-up-private-endpoint-connections.md) 或 [Set up VPC Peering Connection](/tidb-cloud/set-up-vpc-peering-connections.md)。 \ No newline at end of file diff --git a/tidb-cloud/tidb-cloud-migration-overview.md b/tidb-cloud/tidb-cloud-migration-overview.md index 6ec575c6f4c0a..3088083502db7 100644 --- a/tidb-cloud/tidb-cloud-migration-overview.md +++ b/tidb-cloud/tidb-cloud-migration-overview.md @@ -1,66 +1,66 @@ --- -title: 数据迁移和导入概览 +title: Migration and Import Overview summary: 了解 TiDB Cloud 的数据迁移和导入场景概览。 aliases: ['/tidbcloud/export-data-from-tidb-cloud'] --- -# 数据迁移和导入概览 +# 迁移与导入概览 -你可以将数据从各种数据源迁移到 TiDB Cloud。本文档概述了数据迁移的场景。 +你可以将数据从多种数据源迁移到 TiDB Cloud。本文档将对数据迁移场景进行概述。 -## 从 MySQL 兼容的数据库迁移数据 +## 从 MySQL 兼容数据库迁移数据 -当你从 MySQL 兼容的数据库迁移数据时,你可以执行全量数据迁移和增量数据迁移。迁移场景和方法如下: +当你从 MySQL 兼容数据库迁移数据时,可以执行全量数据迁移和增量数据迁移。具体的迁移场景和方法如下: -- 使用数据迁移工具迁移 MySQL 兼容的数据库 +- 使用 Data Migration 迁移 MySQL 兼容数据库 - TiDB 与 MySQL 高度兼容。你可以使用 TiDB Cloud 控制台中的数据迁移工具从任何 MySQL 兼容的数据库顺利迁移数据到 TiDB Cloud。更多信息,请参见[使用数据迁移工具将 MySQL 兼容的数据库迁移到 TiDB Cloud](/tidb-cloud/migrate-from-mysql-using-data-migration.md)。 + TiDB 对 MySQL 具有高度兼容性。你可以在 TiDB Cloud 控制台中使用 Data Migration,将任何 MySQL 兼容数据库的数据平滑迁移到 TiDB Cloud。更多信息,参见 [Migrate MySQL-Compatible Databases to TiDB Cloud Using Data Migration](/tidb-cloud/migrate-from-mysql-using-data-migration.md)。 -- 使用 AWS DMS 迁移 +- 使用 AWS DMS 进行迁移 - 如果你想迁移异构数据库(如 PostgreSQL、Oracle 和 SQL Server)到 TiDB Cloud,建议使用 AWS Database Migration Service (AWS DMS)。 + 如果你需要将异构数据库(如 PostgreSQL、Oracle 和 SQL Server)迁移到 TiDB Cloud,推荐使用 AWS Database Migration Service(AWS DMS)。 - - [使用 AWS DMS 将 MySQL 兼容的数据库迁移到 TiDB Cloud](/tidb-cloud/migrate-from-mysql-using-aws-dms.md) - - [使用 AWS DMS 从 Amazon RDS for Oracle 迁移](/tidb-cloud/migrate-from-oracle-using-aws-dms.md) + - [Migrate from MySQL-Compatible Databases to TiDB Cloud Using AWS DMS](/tidb-cloud/migrate-from-mysql-using-aws-dms.md) + - [Migrate from Amazon RDS for Oracle Using AWS DMS](/tidb-cloud/migrate-from-oracle-using-aws-dms.md) -- 迁移和合并 MySQL 分片 +- 迁移并合并 MySQL 分片 - 如果你的应用程序使用 MySQL 分片存储数据,你可以将这些分片作为一个表迁移到 TiDB Cloud。更多信息,请参见[将大数据集的 MySQL 分片迁移和合并到 TiDB Cloud](/tidb-cloud/migrate-sql-shards.md)。 + 如果你的应用使用 MySQL 分片进行数据存储,可以将这些分片合并迁移到 TiDB Cloud 的一张表中。更多信息,参见 [Migrate and Merge MySQL Shards of Large Datasets to TiDB Cloud](/tidb-cloud/migrate-sql-shards.md)。 -- 从 TiDB 自托管迁移 +- 从 TiDB 自建集群迁移 - 你可以通过 Dumpling 和 TiCDC 将数据从 TiDB 自托管集群迁移到 TiDB Cloud (AWS)。更多信息,请参见[从 TiDB 自托管迁移到 TiDB Cloud](/tidb-cloud/migrate-from-op-tidb.md)。 + 你可以通过 Dumpling 和 TiCDC,将自建 TiDB 集群的数据迁移到 TiDB Cloud(AWS)。更多信息,参见 [Migrate from TiDB Self-Managed to TiDB Cloud](/tidb-cloud/migrate-from-op-tidb.md)。 ## 从文件导入数据到 TiDB Cloud -如果你有 SQL、CSV、Parquet 或 Aurora 快照格式的数据文件,你可以一次性将这些文件导入到 TiDB Cloud。导入场景和方法如下: +如果你有 SQL、CSV、Parquet 或 Aurora Snapshot 格式的数据文件,可以一次性将这些文件导入到 TiDB Cloud。具体的导入场景和方法如下: -- 将本地 CSV 文件导入到 TiDB Cloud +- 导入本地 CSV 文件到 TiDB Cloud - 你可以将本地 CSV 文件导入到 TiDB Cloud。更多信息,请参见[将本地文件导入到 TiDB Cloud](/tidb-cloud/tidb-cloud-import-local-files.md)。 + 你可以将本地 CSV 文件导入到 TiDB Cloud。更多信息,参见 [Import Local Files to TiDB Cloud](/tidb-cloud/tidb-cloud-import-local-files.md)。 -- 将示例数据(SQL 文件)导入到 TiDB Cloud +- 导入示例数据(SQL 文件)到 TiDB Cloud - 你可以将示例数据(SQL 文件)导入到 TiDB Cloud,以快速熟悉 TiDB Cloud 界面和导入过程。更多信息,请参见[将示例数据导入到 TiDB Cloud Serverless](/tidb-cloud/import-sample-data-serverless.md) 和[将示例数据导入到 TiDB Cloud Dedicated](/tidb-cloud/import-sample-data.md)。 + 你可以将示例数据(SQL 文件)导入到 TiDB Cloud,以便快速熟悉 TiDB Cloud 的界面和导入流程。更多信息,参见 [Import Sample Data to TiDB Cloud Serverless](/tidb-cloud/import-sample-data-serverless.md) 和 [Import Sample Data to TiDB Cloud Dedicated](/tidb-cloud/import-sample-data.md)。 -- 从 Amazon S3、Google Cloud Storage (GCS) 或 Azure Blob Storage 将 CSV 文件导入到 TiDB Cloud +- 从 Amazon S3、Google Cloud Storage(GCS)或 Azure Blob Storage 导入 CSV 文件到 TiDB Cloud - 你可以从 Amazon S3、Google Cloud Storage (GCS) 或 Azure Blob Storage 将 CSV 文件导入到 TiDB Cloud。更多信息,请参见[从云存储将 CSV 文件导入到 TiDB Cloud Serverless](/tidb-cloud/import-csv-files-serverless.md) 和[从云存储将 CSV 文件导入到 TiDB Cloud Dedicated](/tidb-cloud/import-csv-files.md)。 + 你可以从 Amazon S3、Google Cloud Storage(GCS)或 Azure Blob Storage 导入 CSV 文件到 TiDB Cloud。更多信息,参见 [Import CSV Files from Cloud Storage into TiDB Cloud Serverless](/tidb-cloud/import-csv-files-serverless.md) 和 [Import CSV Files from Cloud Storage into TiDB Cloud Dedicated](/tidb-cloud/import-csv-files.md)。 -- 从 Amazon S3、Google Cloud Storage (GCS) 或 Azure Blob Storage 将 Apache Parquet 文件导入到 TiDB Cloud +- 从 Amazon S3、Google Cloud Storage(GCS)或 Azure Blob Storage 导入 Apache Parquet 文件到 TiDB Cloud - 你可以从 Amazon S3、Google Cloud Storage (GCS) 或 Azure Blob Storage 将 Parquet 文件导入到 TiDB Cloud。更多信息,请参见[从云存储将 Apache Parquet 文件导入到 TiDB Cloud Serverless](/tidb-cloud/import-parquet-files-serverless.md) 和[从云存储将 Apache Parquet 文件导入到 TiDB Cloud Dedicated](/tidb-cloud/import-parquet-files.md)。 + 你可以从 Amazon S3、Google Cloud Storage(GCS)或 Azure Blob Storage 导入 Parquet 文件到 TiDB Cloud。更多信息,参见 [Import Apache Parquet Files from Cloud Storage into TiDB Cloud Serverless](/tidb-cloud/import-parquet-files-serverless.md) 和 [Import Apache Parquet Files from Cloud Storage into TiDB Cloud Dedicated](/tidb-cloud/import-parquet-files.md)。 ## 参考 ### 配置云存储访问 -如果你的源数据存储在 Amazon S3、Google Cloud Storage (GCS) 存储桶或 Azure Blob Storage 容器中,在将数据导入或迁移到 TiDB Cloud 之前,你需要配置对存储的访问。更多信息,请参见[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md) 和[为 TiDB Cloud Dedicated 配置外部存储访问](/tidb-cloud/dedicated-external-storage.md)。 +如果你的源数据存储在 Amazon S3、Google Cloud Storage(GCS)桶或 Azure Blob Storage 容器中,在将数据导入或迁移到 TiDB Cloud 之前,需要先配置存储访问。更多信息,参见 [Configure External Storage Access for TiDB Cloud Serverless](/tidb-cloud/serverless-external-storage.md) 和 [Configure External Storage Access for TiDB Cloud Dedicated](/tidb-cloud/dedicated-external-storage.md)。 -### 数据导入的命名规范 +### 数据导入命名规范 -为确保你的数据能够成功导入,你需要准备符合命名规范的架构文件和数据文件。更多信息,请参见[数据导入的命名规范](/tidb-cloud/naming-conventions-for-data-import.md)。 +为确保数据能够成功导入,你需要准备符合命名规范的 schema 文件和数据文件。更多信息,参见 [Naming Conventions for Data Import](/tidb-cloud/naming-conventions-for-data-import.md)。 ### 排查从 Amazon S3 导入数据时的访问被拒绝错误 -你可以排查从 Amazon S3 导入数据到 TiDB Cloud 时可能出现的访问被拒绝错误。更多信息,请参见[排查从 Amazon S3 导入数据时的访问被拒绝错误](/tidb-cloud/troubleshoot-import-access-denied-error.md)。 +你可以排查在从 Amazon S3 导入数据到 TiDB Cloud 时可能出现的访问被拒绝错误。更多信息,参见 [Troubleshoot Access Denied Errors during Data Import from Amazon S3](/tidb-cloud/troubleshoot-import-access-denied-error.md)。 \ No newline at end of file diff --git a/tidb-cloud/tidb-cloud-poc.md b/tidb-cloud/tidb-cloud-poc.md index 79acb9200c1b5..3c67ec1152741 100644 --- a/tidb-cloud/tidb-cloud-poc.md +++ b/tidb-cloud/tidb-cloud-poc.md @@ -5,227 +5,227 @@ summary: 了解如何使用 TiDB Cloud 进行概念验证(PoC)。 # 使用 TiDB Cloud 进行概念验证(PoC) -TiDB Cloud 是一个数据库即服务(DBaaS)产品,它以完全托管的云数据库形式提供 TiDB 的所有优秀特性。它让你能够专注于应用程序开发,而不必关心数据库的复杂性。TiDB Cloud 目前可在 Amazon Web Services (AWS)、Google Cloud 和 Microsoft Azure 上使用。 +TiDB Cloud 是一款数据库即服务(DBaaS)产品,将 TiDB 的所有优势以全托管云数据库的形式交付。它帮助你专注于应用程序开发,而无需关注数据库的复杂性。TiDB Cloud 目前支持 Amazon Web Services(AWS)、Google Cloud 和 Microsoft Azure。 -启动概念验证(PoC)是确定 TiDB Cloud 是否最适合你业务需求的最佳方式。它还能帮助你在短时间内熟悉 TiDB Cloud 的主要功能。通过运行性能测试,你可以了解你的工作负载是否能在 TiDB Cloud 上高效运行。你还可以评估数据迁移和配置调整所需的工作量。 +发起概念验证(PoC)是判断 TiDB Cloud 是否满足你业务需求的最佳方式,同时也能让你在短时间内熟悉 TiDB Cloud 的关键特性。通过运行性能测试,你可以评估你的业务负载在 TiDB Cloud 上的运行效率,并评估数据迁移和配置适配所需的工作量。 -本文档描述了典型的 PoC 流程,旨在帮助你快速完成 TiDB Cloud PoC。这是经过 TiDB 专家和大量客户验证的最佳实践。 +本文档介绍了典型的 PoC 流程,旨在帮助你快速完成 TiDB Cloud 的 PoC。这是经过 TiDB 专家和大量客户验证的最佳实践。 -如果你有兴趣进行 PoC,欢迎在开始之前联系 PingCAP。支持团队可以帮助你制定测试计划,并指导你顺利完成 PoC 流程。 +如果你有意进行 PoC,欢迎在开始前联系 PingCAP。支持团队可以帮助你制定测试计划,并顺利引导你完成 PoC 流程。 -另外,你也可以[创建 TiDB Cloud Serverless 集群](/tidb-cloud/tidb-cloud-quickstart.md#step-1-create-a-tidb-cluster)来快速评估和熟悉 TiDB Cloud。请注意,TiDB Cloud Serverless 有一些[特殊条款和条件](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless-special-terms-and-conditions)。 +你也可以[创建 TiDB Cloud Serverless](/tidb-cloud/tidb-cloud-quickstart.md#step-1-create-a-tidb-cluster) 集群,快速体验 TiDB Cloud 以进行初步评估。请注意,TiDB Cloud Serverless 有一些[特殊条款和限制](/tidb-cloud/serverless-limitations.md)。 -## PoC 流程概述 +## PoC 流程概览 -PoC 的目的是测试 TiDB Cloud 是否满足你的业务需求。典型的 PoC 通常持续 14 天,在此期间你需要专注于完成 PoC。 +PoC 的目的是测试 TiDB Cloud 是否满足你的业务需求。一个典型的 PoC 通常持续 14 天,在此期间你需要专注于完成 PoC。 -典型的 TiDB Cloud PoC 包含以下步骤: +一个典型的 TiDB Cloud PoC 包含以下步骤: -1. 定义成功标准并制定测试计划 -2. 识别工作负载特征 -3. 注册并创建用于 PoC 的 TiDB Cloud Dedicated 集群 -4. 调整数据库模式和 SQL +1. 明确成功标准并制定测试计划 +2. 识别你的业务负载特性 +3. 注册并为 PoC 创建 TiDB Cloud Dedicated 集群 +4. 适配你的数据库结构和 SQL 5. 导入数据 -6. 运行工作负载并评估结果 +6. 运行业务负载并评估结果 7. 探索更多功能 8. 清理环境并完成 PoC -## 步骤 1. 定义成功标准并制定测试计划 +## 第 1 步:明确成功标准并制定测试计划 -在通过 PoC 评估 TiDB Cloud 时,建议根据你的业务需求确定关注点和相应的技术评估标准,然后明确你对 PoC 的期望和目标。清晰且可衡量的技术标准和详细的测试计划可以帮助你专注于关键方面,覆盖业务层面的需求,并最终通过 PoC 流程获得答案。 +在通过 PoC 评估 TiDB Cloud 时,建议根据你的业务需求确定关注点及相应的技术评估标准,并明确你对 PoC 的期望和目标。清晰且可量化的技术标准配合详细的测试计划,有助于你聚焦关键点,覆盖业务层面的需求,并最终通过 PoC 流程获得答案。 -使用以下问题帮助确定你的 PoC 目标: +你可以通过以下问题帮助确定 PoC 的目标: -- 你的工作负载场景是什么? -- 你的业务数据集大小或工作负载是多少?增长率如何? -- 性能要求是什么,包括业务关键的吞吐量或延迟要求? -- 可用性和稳定性要求是什么,包括可接受的最小计划内或计划外停机时间? -- 运营效率的必要指标是什么?如何衡量它们? -- 你的工作负载的安全性和合规性要求是什么? +- 你的业务负载场景是什么? +- 你的业务数据集规模或负载是多少?增长速度如何? +- 性能要求有哪些,包括关键业务的吞吐量或延迟要求? +- 可用性和稳定性要求有哪些,包括可接受的计划内或计划外停机时间? +- 运营效率需要关注哪些指标?你如何衡量这些指标? +- 你的业务负载有哪些安全和合规性要求? -有关成功标准和如何制定测试计划的更多信息,请随时联系 PingCAP。 +如需了解更多关于成功标准和如何制定测试计划的信息,欢迎联系 PingCAP。 -## 步骤 2. 识别工作负载特征 +## 第 2 步:识别你的业务负载特性 -TiDB Cloud 适用于需要高可用性和强一致性且数据量大的各种使用场景。[TiDB 简介](https://docs.pingcap.com/tidb/stable/overview)列出了主要特性和场景。你可以检查它们是否适用于你的业务场景: +TiDB Cloud 适用于需要高可用性、强一致性和大数据量的多种场景。[TiDB 简介](https://docs.pingcap.com/tidb/stable/overview) 列出了关键特性和应用场景。你可以检查这些特性是否适用于你的业务场景: -- 水平扩展或收缩 -- 金融级高可用 +- 水平扩展和缩容 +- 金融级高可用性 - 实时 HTAP -- 兼容 MySQL 协议和 MySQL 生态系统 +- 兼容 MySQL 协议和 MySQL 生态 -你可能还对使用 [TiFlash](https://docs.pingcap.com/tidb/stable/tiflash-overview) 感兴趣,这是一个可以加速分析处理的列式存储引擎。在 PoC 期间,你可以随时使用 TiFlash 功能。 +你可能还会对 [TiFlash](https://docs.pingcap.com/tidb/stable/tiflash-overview) 感兴趣,它是一款加速分析型处理的列存储引擎。在 PoC 过程中,你可以随时使用 TiFlash 功能。 -## 步骤 3. 注册并创建用于 PoC 的 TiDB Cloud Dedicated 集群 +## 第 3 步:注册并为 PoC 创建 TiDB Cloud Dedicated 集群 -要创建用于 PoC 的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群,请执行以下步骤: +要为 PoC 创建 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群,请按照以下步骤操作: -1. 通过以下方式之一填写 PoC 申请表: +1. 通过以下任一方式填写 PoC 申请表: - - 在 PingCAP 网站上,访问 [Apply for PoC](https://pingcap.com/apply-for-poc/) 页面填写申请表。 - - 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,点击右下角的 **?**,点击 **Contact Sales**,然后选择 **Apply for PoC** 填写申请表。 + - 在 PingCAP 官网,访问 [申请 PoC](https://pingcap.com/apply-for-poc/) 页面填写申请表。 + - 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,点击右下角的 **?**,选择 **Contact Sales**,再选择 **Apply for PoC** 填写申请表。 - 提交表单后,TiDB Cloud 支持团队将审核你的申请,与你联系,并在申请获批后将积分转入你的账户。你还可以联系 PingCAP 支持工程师协助你的 PoC 流程,以确保 PoC 顺利进行。 + 提交申请后,TiDB Cloud 支持团队会审核你的申请,与你联系,并在申请通过后将额度发放到你的账户。你也可以联系 PingCAP 支持工程师协助你的 PoC 流程,确保 PoC 顺利进行。 2. 参考[创建 TiDB Cloud Dedicated 集群](/tidb-cloud/create-tidb-cluster.md)为 PoC 创建 TiDB Cloud Dedicated 集群。 -在创建集群之前,建议进行容量规划。你可以从估算的 TiDB、TiKV 或 TiFlash 节点数量开始,之后根据性能需求进行扩展。你可以在以下文档中找到更多详细信息,或咨询我们的支持团队。 +在创建集群前,建议进行容量规划。你可以根据预估的 TiDB、TiKV 或 TiFlash 节点数量起步,后续根据性能需求扩容。你可以参考以下文档获取更多细节,或咨询我们的支持团队。 -- 有关估算实践的更多信息,请参见[规划 TiDB 集群规模](/tidb-cloud/size-your-cluster.md)。 -- 有关 TiDB Cloud Dedicated 集群的配置,请参见[创建 TiDB Cloud Dedicated 集群](/tidb-cloud/create-tidb-cluster.md)。分别为 TiDB、TiKV 和 TiFlash(可选)配置集群大小。 -- 有关如何有效规划和优化 PoC 积分消耗,请参见本文档中的 [FAQ](#faq)。 -- 有关扩展的更多信息,请参见[扩展 TiDB 集群](/tidb-cloud/scale-tidb-cluster.md)。 +- 有关容量预估的最佳实践,参见 [Size Your TiDB](/tidb-cloud/size-your-cluster.md)。 +- 有关 TiDB Cloud Dedicated 集群的配置,参见 [创建 TiDB Cloud Dedicated 集群](/tidb-cloud/create-tidb-cluster.md)。分别配置 TiDB、TiKV 和(可选)TiFlash 的集群规模。 +- 有关如何有效规划和优化 PoC 额度消耗,参见本文档的 [FAQ](#faq)。 +- 有关扩容的更多信息,参见 [扩容 TiDB 集群](/tidb-cloud/scale-tidb-cluster.md)。 -创建专用 PoC 集群后,你就可以加载数据并执行一系列测试了。有关如何连接 TiDB 集群,请参见[连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/connect-to-tidb-cluster.md)。 +专用 PoC 集群创建完成后,你就可以加载数据并进行一系列测试。关于如何连接 TiDB 集群,参见 [连接 TiDB Cloud Dedicated 集群](/tidb-cloud/connect-to-tidb-cluster.md)。 -对于新创建的集群,请注意以下配置: +对于新建集群,请注意以下配置: -- 默认时区(仪表板上的 **Create Time** 列)是 UTC。你可以按照[设置本地时区](/tidb-cloud/manage-user-access.md#set-the-time-zone-for-your-organization)将其更改为你的本地时区。 -- 新集群的默认备份设置是每日全量数据库备份。你可以指定首选备份时间或手动备份数据。有关默认备份时间和更多详细信息,请参见[备份和恢复 TiDB 集群数据](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup)。 +- 默认时区(Dashboard 上的 **Create Time** 列)为 UTC。你可以按照 [设置本地时区](/tidb-cloud/manage-user-access.md#set-the-time-zone-for-your-organization) 将其更改为本地时区。 +- 新集群的默认备份设置为每日全库备份。你可以指定首选备份时间或手动备份数据。关于默认备份时间及更多细节,参见 [备份与恢复 TiDB 集群数据](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup)。 -## 步骤 4. 调整数据库模式和 SQL +## 第 4 步:适配你的数据库结构和 SQL -接下来,你可以将数据库模式加载到 TiDB 集群中,包括表和索引。 +接下来,你可以将数据库结构(包括表和索引)加载到 TiDB 集群。 -由于 PoC 积分有限,为了最大化积分价值,建议你创建 [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless)进行兼容性测试和 TiDB Cloud 的初步分析。 +由于 PoC 额度有限,为了最大化额度价值,建议你创建一个 [TiDB Cloud Serverless 集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 用于兼容性测试和初步分析。 -TiDB Cloud 与 MySQL 8.0 高度兼容。如果你的数据与 MySQL 兼容或可以调整为与 MySQL 兼容,你可以直接将数据导入 TiDB。 +TiDB Cloud 高度兼容 MySQL 8.0。如果你的数据源兼容 MySQL,或可以适配为兼容 MySQL,可以直接导入数据到 TiDB。 -有关兼容性的更多信息,请参见以下文档: +关于兼容性,参见以下文档: - [TiDB 与 MySQL 的兼容性](https://docs.pingcap.com/tidb/stable/mysql-compatibility)。 -- [TiDB 与 MySQL 的不同特性](https://docs.pingcap.com/tidb/stable/mysql-compatibility#features-that-are-different-from-mysql)。 +- [TiDB 与 MySQL 不同的特性](https://docs.pingcap.com/tidb/stable/mysql-compatibility#features-that-are-different-from-mysql)。 - [TiDB 的关键字和保留字](https://docs.pingcap.com/tidb/stable/keywords)。 - [TiDB 限制](https://docs.pingcap.com/tidb/stable/tidb-limitations)。 以下是一些最佳实践: -- 检查模式设置中是否存在效率低下的问题。 -- 删除不必要的索引。 -- 规划有效的分区策略。 -- 避免由右手索引增长导致的[热点问题](https://docs.pingcap.com/tidb/stable/troubleshoot-hot-spot-issues#identify-hotspot-issues),例如时间戳上的索引。 +- 检查数据库结构设计是否存在低效问题。 +- 移除不必要的索引。 +- 规划分区策略,实现有效分区。 +- 避免因右侧索引增长(如时间戳索引)导致的[热点问题](https://docs.pingcap.com/tidb/stable/troubleshoot-hot-spot-issues#identify-hotspot-issues)。 - 通过使用 [SHARD_ROW_ID_BITS](https://docs.pingcap.com/tidb/stable/shard-row-id-bits) 和 [AUTO_RANDOM](https://docs.pingcap.com/tidb/stable/auto-random) 避免[热点问题](https://docs.pingcap.com/tidb/stable/troubleshoot-hot-spot-issues#identify-hotspot-issues)。 -对于 SQL 语句,根据你的数据源与 TiDB 的兼容性级别,你可能需要进行调整。 +对于 SQL 语句,你可能需要根据数据源与 TiDB 的兼容性程度进行适配。 -如果你有任何问题,请联系 [PingCAP](/tidb-cloud/tidb-cloud-support.md) 进行咨询。 +如有疑问,请联系 [PingCAP](/tidb-cloud/tidb-cloud-support.md) 咨询。 -## 步骤 5. 导入数据 +## 第 5 步:导入数据 -你可以导入小型数据集来快速测试可行性,或导入大型数据集来测试 TiDB 数据迁移工具的吞吐量。虽然 TiDB 提供示例数据,但强烈建议使用来自你业务的真实工作负载进行测试。 +你可以导入小规模数据集以快速测试可行性,或导入大规模数据集以测试 TiDB 数据迁移工具的吞吐能力。虽然 TiDB 提供了示例数据,但强烈建议你使用真实业务负载进行测试。 -你可以将各种格式的数据导入 TiDB Cloud: +你可以将多种格式的数据导入 TiDB Cloud: - [使用数据迁移将 MySQL 兼容数据库迁移到 TiDB Cloud](/tidb-cloud/migrate-from-mysql-using-data-migration.md) -- [将本地文件导入 TiDB Cloud](/tidb-cloud/tidb-cloud-import-local-files.md) +- [导入本地文件到 TiDB Cloud](/tidb-cloud/tidb-cloud-import-local-files.md) - [导入 SQL 文件格式的示例数据](/tidb-cloud/import-sample-data.md) - [从云存储导入 CSV 文件](/tidb-cloud/import-csv-files.md) - [导入 Apache Parquet 文件](/tidb-cloud/import-parquet-files.md) > **注意:** > -> **导入**页面上的数据导入不会产生额外的计费费用。 +> 在 **Import** 页面进行数据导入不会产生额外的计费费用。 -## 步骤 6. 运行工作负载并评估结果 +## 第 6 步:运行业务负载并评估结果 -现在你已经创建了环境、调整了模式并导入了数据。是时候测试你的工作负载了。 +现在你已经创建了环境、适配了数据库结构并导入了数据,是时候测试你的业务负载了。 -在测试工作负载之前,考虑执行手动备份,这样在需要时可以将数据库恢复到原始状态。有关更多信息,请参见[备份和恢复 TiDB 集群数据](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup)。 +在测试业务负载前,建议先进行一次手动备份,以便在需要时可以将数据库恢复到初始状态。更多信息参见 [备份与恢复 TiDB 集群数据](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup)。 -启动工作负载后,你可以使用以下方法观察系统: +启动业务负载后,你可以通过以下方式观察系统: -- 在集群概览页面上可以找到集群的常用指标,包括总 QPS、延迟、连接数、TiFlash 请求 QPS、TiFlash 请求持续时间、TiFlash 存储大小、TiKV 存储大小、TiDB CPU、TiKV CPU、TiKV IO 读取和 TiKV IO 写入。请参见[监控 TiDB 集群](/tidb-cloud/monitor-tidb-cluster.md)。 -- 导航到集群的[**诊断**](/tidb-cloud/tune-performance.md#view-the-diagnosis-page)页面,然后查看 **SQL Statement** 标签页,你可以在此观察 SQL 执行情况,无需查询系统表即可轻松定位性能问题。请参见[语句分析](/tidb-cloud/tune-performance.md#statement-analysis)。 -- 导航到集群的[**诊断**](/tidb-cloud/tune-performance.md#view-the-diagnosis-page)页面,然后查看 **Key Visualizer** 标签页,你可以在此查看 TiDB 数据访问模式和数据热点。请参见[Key Visualizer](/tidb-cloud/tune-performance.md#key-visualizer)。 -- 你还可以将这些指标集成到你自己的 Datadog 和 Prometheus 中。请参见[第三方监控集成](/tidb-cloud/third-party-monitoring-integrations.md)。 +- 集群常用指标可在集群概览页面查看,包括 Total QPS、Latency、Connections、TiFlash Request QPS、TiFlash Request Duration、TiFlash Storage Size、TiKV Storage Size、TiDB CPU、TiKV CPU、TiKV IO Read 和 TiKV IO Write。参见 [监控 TiDB 集群](/tidb-cloud/monitor-tidb-cluster.md)。 +- 进入集群的 [**Diagnosis**](/tidb-cloud/tune-performance.md#view-the-diagnosis-page) 页面,查看 **SQL Statement** 标签页,可以观察 SQL 执行情况,无需查询系统表即可轻松定位性能问题。参见 [Statement Analysis](/tidb-cloud/tune-performance.md#statement-analysis)。 +- 进入集群的 [**Diagnosis**](/tidb-cloud/tune-performance.md#view-the-diagnosis-page) 页面,查看 **Key Visualizer** 标签页,可以查看 TiDB 的数据访问模式和数据热点。参见 [Key Visualizer](/tidb-cloud/tune-performance.md#key-visualizer)。 +- 你还可以将这些指标集成到自己的 Datadog 和 Prometheus。参见 [第三方监控集成](/tidb-cloud/third-party-monitoring-integrations.md)。 -现在是评估测试结果的时候了。 +现在可以评估测试结果了。 -为了获得更准确的评估,在测试之前确定指标基线,并适当记录每次运行的测试结果。通过分析结果,你可以决定 TiDB Cloud 是否适合你的应用。同时,这些结果表明了系统的运行状态,你可以根据指标调整系统。例如: +为了获得更准确的评估,建议在测试前确定指标基线,并为每次测试妥善记录结果。通过分析结果,你可以判断 TiDB Cloud 是否适合你的应用。同时,这些结果也反映了系统的运行状态,你可以根据指标调整系统。例如: -- 评估系统性能是否满足你的要求。检查总 QPS 和延迟。如果系统性能不令人满意,你可以通过以下方式调优性能: +- 评估系统性能是否满足需求。检查总 QPS 和延迟。如果系统性能不理想,可以通过以下方式进行性能调优: - - 监控和优化网络延迟。 - - 调查和调优 SQL 性能。 - - 监控和[解决热点问题](https://docs.pingcap.com/tidb/dev/troubleshoot-hot-spot-issues#troubleshoot-hotspot-issues)。 + - 监控并优化网络延迟。 + - 排查并优化 SQL 性能。 + - 监控并[解决热点问题](https://docs.pingcap.com/tidb/dev/troubleshoot-hot-spot-issues#troubleshoot-hotspot-issues)。 -- 评估存储大小和 CPU 使用率,相应地扩展或收缩 TiDB 集群。有关扩展的详细信息,请参见 [FAQ](#faq) 部分。 +- 评估存储容量和 CPU 使用率,并据此扩容或缩容 TiDB 集群。扩容细节可参考 [FAQ](#faq) 部分。 -以下是性能调优的提示: +以下是性能调优建议: -- 提高写入性能 +- 提升写入性能 - - 通过扩展 TiDB 集群增加写入吞吐量(请参见[扩展 TiDB 集群](/tidb-cloud/scale-tidb-cluster.md))。 + - 通过扩容 TiDB 集群提升写入吞吐量(参见 [扩容 TiDB 集群](/tidb-cloud/scale-tidb-cluster.md))。 - 通过使用[乐观事务模型](https://docs.pingcap.com/tidb/stable/optimistic-transaction#tidb-optimistic-transaction-model)减少锁冲突。 -- 提高查询性能 +- 提升查询性能 - - 在[**诊断**](/tidb-cloud/tune-performance.md#view-the-diagnosis-page)页面的 [**SQL Statement**](/tidb-cloud/tune-performance.md#statement-analysis) 标签页上检查 SQL 执行计划。 - - 在[**诊断**](/tidb-cloud/tune-performance.md#view-the-diagnosis-page)页面的 [**Key Visualizer**](/tidb-cloud/tune-performance.md#key-visualizer) 标签页上检查热点问题。 - - 在[**指标**](/tidb-cloud/built-in-monitoring.md#view-the-metrics-page)页面上监控 TiDB 集群是否容量不足。 - - 使用 TiFlash 功能优化分析处理。请参见[使用 HTAP 集群](/tiflash/tiflash-overview.md)。 + - 在 [**Diagnosis**](/tidb-cloud/tune-performance.md#view-the-diagnosis-page) 页的 [**SQL Statement**](/tidb-cloud/tune-performance.md#statement-analysis) 标签下检查 SQL 执行计划。 + - 在 [**Diagnosis**](/tidb-cloud/tune-performance.md#view-the-diagnosis-page) 页的 [**Key Visualizer**](/tidb-cloud/tune-performance.md#key-visualizer) 标签下检查热点问题。 + - 在 [**Metrics**](/tidb-cloud/built-in-monitoring.md#view-the-metrics-page) 页面监控 TiDB 集群是否容量不足。 + - 使用 TiFlash 功能优化分析型处理。参见 [使用 HTAP 集群](/tiflash/tiflash-overview.md)。 -## 步骤 7. 探索更多功能 +## 第 7 步:探索更多功能 -现在工作负载测试已完成,你可以探索更多功能,例如升级和备份。 +业务负载测试完成后,你可以探索更多功能,例如升级和备份。 - 升级 - TiDB Cloud 定期升级 TiDB 集群,你也可以提交支持工单请求升级集群。请参见[升级 TiDB 集群](/tidb-cloud/upgrade-tidb-cluster.md)。 + TiDB Cloud 会定期升级 TiDB 集群,你也可以提交支持工单请求集群升级。参见 [升级 TiDB 集群](/tidb-cloud/upgrade-tidb-cluster.md)。 - 备份 - 为避免供应商锁定,你可以使用每日全量备份将数据迁移到新集群,并使用 [Dumpling](https://docs.pingcap.com/tidb/stable/dumpling-overview) 导出数据。有关更多信息,请参见[备份和恢复 TiDB Cloud Dedicated 数据](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup)和[备份和恢复 TiDB Cloud Serverless 数据](/tidb-cloud/backup-and-restore-serverless.md)。 + 为避免厂商锁定,你可以使用每日全量备份将数据迁移到新集群,并使用 [Dumpling](https://docs.pingcap.com/tidb/stable/dumpling-overview) 导出数据。更多信息参见 [备份与恢复 TiDB Cloud Dedicated 数据](/tidb-cloud/backup-and-restore.md#turn-on-auto-backup) 和 [备份与恢复 TiDB Cloud Serverless 数据](/tidb-cloud/backup-and-restore-serverless.md)。 -## 步骤 8. 清理环境并完成 PoC +## 第 8 步:清理环境并完成 PoC -在使用真实工作负载测试 TiDB Cloud 并获得测试结果后,你已完成了 PoC 的完整周期。这些结果帮助你确定 TiDB Cloud 是否满足你的期望。同时,你也积累了使用 TiDB Cloud 的最佳实践。 +当你使用真实业务负载测试 TiDB Cloud 并获得测试结果后,PoC 的完整流程就已完成。这些结果有助于你判断 TiDB Cloud 是否符合预期,同时你也积累了 TiDB Cloud 的最佳实践。 -如果你想在更大规模上尝试 TiDB Cloud,进行新一轮的部署和测试,例如使用 TiDB Cloud 提供的其他节点存储大小进行部署,可以通过创建 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群来获得 TiDB Cloud 的完整访问权限。 +如果你希望在更大规模上体验 TiDB Cloud,进行新一轮部署和测试(如使用 TiDB Cloud 提供的不同节点存储规格),可以创建 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群,获得完整访问权限。 -如果你的积分即将用完,想继续进行 PoC,请联系 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)进行咨询。 +如果你的额度即将用尽且希望继续 PoC,请联系 [TiDB Cloud Support](/tidb-cloud/tidb-cloud-support.md) 咨询。 -你可以随时结束 PoC 并删除测试环境。有关更多信息,请参见[删除 TiDB 集群](/tidb-cloud/delete-tidb-cluster.md)。 +你可以随时结束 PoC 并移除测试环境。更多信息参见 [删除 TiDB 集群](/tidb-cloud/delete-tidb-cluster.md)。 -我们非常感谢你通过填写 [TiDB Cloud 反馈表](https://www.surveymonkey.com/r/L3VVW8R)向我们的支持团队提供任何反馈,例如 PoC 流程、功能请求以及我们如何改进产品。 +欢迎通过填写 [TiDB Cloud 反馈表](https://www.surveymonkey.com/r/L3VVW8R) 向我们的支持团队反馈 PoC 流程、功能需求及产品改进建议。 ## FAQ -### 1. 备份和恢复我的数据需要多长时间? +### 1. 备份和恢复数据需要多长时间? -TiDB Cloud 提供两种类型的数据库备份:自动备份和手动备份。这两种方法都会备份完整的数据库。 +TiDB Cloud 提供两种数据库备份方式:自动备份和手动备份。两种方式均为全库备份。 -备份和恢复数据所需的时间可能会有所不同,这取决于表的数量、镜像副本的数量以及 CPU 密集程度。单个 TiKV 节点的备份和恢复速率约为 50 MB/s。 +备份和恢复所需时间会因表数量、镜像副本数量和 CPU 密集程度而异。单个 TiKV 节点的备份和恢复速率约为 50 MB/s。 -数据库备份和恢复操作通常是 CPU 密集型的,始终需要额外的 CPU 资源。它们可能会对 QPS 和事务延迟产生影响(10% 到 50%),具体取决于环境的 CPU 密集程度。 +数据库备份和恢复操作通常是 CPU 密集型的,并且总是需要额外的 CPU 资源。根据环境的 CPU 密集程度,可能会对 QPS 和事务延迟产生 10% 到 50% 的影响。 -### 2. 什么时候需要扩展和收缩? +### 2. 什么时候需要扩容和缩容? -以下是关于扩展的一些考虑因素: +关于扩容,有以下几点建议: -- 在高峰时段或数据导入期间,如果你观察到仪表板上的容量指标已达到上限(请参见[监控 TiDB 集群](/tidb-cloud/monitor-tidb-cluster.md)),你可能需要扩展集群。 -- 如果你观察到资源使用率持续较低,例如,CPU 使用率仅为 10%-20%,你可以收缩集群以节省资源。 +- 在业务高峰期或数据导入时,如果你观察到 Dashboard 上的容量指标已达到上限(参见 [监控 TiDB 集群](/tidb-cloud/monitor-tidb-cluster.md)),你可能需要扩容集群。 +- 如果你发现资源使用率持续较低,例如 CPU 使用率仅为 10%-20%,可以缩容集群以节省资源。 -你可以在控制台上自行扩展集群。如果你需要收缩集群,需要联系 [TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)寻求帮助。有关扩展的更多信息,请参见[扩展 TiDB 集群](/tidb-cloud/scale-tidb-cluster.md)。你可以与支持团队保持联系,跟踪具体进度。由于数据重新平衡可能会影响性能,你必须等待扩展操作完成后再开始测试。 +你可以在控制台自行扩容集群。如果需要缩容集群,则需要联系 [TiDB Cloud Support](/tidb-cloud/tidb-cloud-support.md) 协助。更多扩容信息参见 [扩容 TiDB 集群](/tidb-cloud/scale-tidb-cluster.md)。你可以与支持团队保持沟通,跟踪具体进度。扩容操作会涉及数据重平衡,需等待扩容完成后再开始测试,以免影响性能。 -### 3. 如何最有效地使用我的 PoC 积分? +### 3. 如何最大化利用 PoC 额度? -一旦你的 PoC 申请获得批准,你将在账户中收到积分。通常,这些积分足够进行为期 14 天的 PoC。积分按节点类型和节点数量按小时计费。有关更多信息,请参见 [TiDB Cloud 计费](/tidb-cloud/tidb-cloud-billing.md#credits)。 +PoC 申请通过后,你的账户会获得额度。一般来说,这些额度足以支持 14 天的 PoC。额度按节点类型和节点数量按小时计费。更多信息参见 [TiDB Cloud 计费](/tidb-cloud/tidb-cloud-billing.md#credits)。 -要查看 PoC 剩余积分,请转到目标项目的[**集群**](https://tidbcloud.com/project/clusters)页面,如下图所示。 +要查看 PoC 剩余额度,请进入目标项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,如下图所示。 -![TiDB Cloud PoC 积分](/media/tidb-cloud/poc-points.png) +![TiDB Cloud PoC Credits](/media/tidb-cloud/poc-points.png) -或者,你也可以使用 TiDB Cloud 控制台左上角的组合框切换到目标组织,点击左侧导航栏中的**计费**,然后点击**积分**标签页查看积分信息。 +你也可以在 TiDB Cloud 控制台左上角通过下拉框切换到目标组织,点击左侧导航栏的 **Billing**,再点击 **Credits** 标签页查看额度信息。 -要节省积分,请删除你不使用的集群。目前,你无法停止集群。在删除集群之前,你需要确保备份是最新的,这样当你想要恢复 PoC 时可以恢复集群。 +为节省额度,请移除不再使用的集群。目前无法停止集群。移除集群前请确保备份已更新,这样在需要恢复 PoC 时可以还原集群。 -如果在 PoC 流程完成后你仍有未使用的积分,只要这些积分未过期,你可以继续使用它们支付 TiDB 集群费用。 +如果 PoC 结束后还有剩余额度,只要额度未过期,你可以继续用这些额度支付 TiDB 集群费用。 -### 4. 我可以花超过 2 周的时间完成 PoC 吗? +### 4. PoC 可以超过 2 周吗? -如果你想延长 PoC 试用期或积分即将用完,请[联系 PingCAP](https://www.pingcap.com/contact-us/) 寻求帮助。 +如果你希望延长 PoC 试用期或额度即将用尽,[请联系 PingCAP](https://www.pingcap.com/contact-us/) 获取帮助。 -### 5. 我遇到了技术问题。如何获取 PoC 帮助? +### 5. 如果遇到技术问题,如何获得 PoC 支持? -你随时可以[联系 TiDB Cloud 支持](/tidb-cloud/tidb-cloud-support.md)寻求帮助。 +你可以随时 [联系 TiDB Cloud Support](/tidb-cloud/tidb-cloud-support.md) 获取帮助。 \ No newline at end of file diff --git a/tidb-cloud/tidb-cloud-quickstart.md b/tidb-cloud/tidb-cloud-quickstart.md index 41fad7fc4dcf2..f10a0624581f9 100644 --- a/tidb-cloud/tidb-cloud-quickstart.md +++ b/tidb-cloud/tidb-cloud-quickstart.md @@ -1,54 +1,54 @@ --- -title: TiDB Cloud 快速上手 -summary: 快速注册并试用 TiDB Cloud,创建你的 TiDB 集群。 +title: TiDB Cloud 快速入门 +summary: 快速注册体验 TiDB Cloud 并创建你的 TiDB 集群。 category: quick start --- -# TiDB Cloud 快速上手 +# TiDB Cloud 快速入门 *预计完成时间:20 分钟* -本教程将指导你快速开始使用 TiDB Cloud。你也可以在 TiDB Cloud 控制台的[**快速开始**](https://tidbcloud.com/getting-started)页面按照分步教程进行操作。 +本教程将引导你以简单的方式快速上手 TiDB Cloud。 -此外,你还可以在 [TiDB Playground](https://play.tidbcloud.com/?utm_source=docs&utm_medium=tidb_cloud_quick_start) 上试用 TiDB 的功能。 +此外,你还可以在 [TiDB Playground](https://play.tidbcloud.com/?utm_source=docs&utm_medium=tidb_cloud_quick_start) 上体验 TiDB 的相关功能。 ## 第 1 步:创建 TiDB 集群 -[TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 是开始使用 TiDB Cloud 的最佳方式。要创建 TiDB Cloud Serverless 集群,请按照以下步骤操作: +[TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 是体验 TiDB Cloud 的最佳方式。要创建 TiDB Cloud Serverless 集群,请按照以下步骤操作: -1. 如果你还没有 TiDB Cloud 账号,请点击[这里](https://tidbcloud.com/free-trial)注册。 +1. 如果你还没有 TiDB Cloud 账号,请点击 [这里](https://tidbcloud.com/free-trial) 注册。 - 你可以使用电子邮件和密码注册,通过 TiDB Cloud 管理你的密码,或者选择使用 Google、GitHub 或 Microsoft 账号进行单点登录 (SSO)。 + 你可以使用邮箱和密码注册并通过 TiDB Cloud 管理密码,或者选择使用 Google、GitHub 或 Microsoft 账号进行单点登录(SSO)到 TiDB Cloud。 -2. [登录](https://tidbcloud.com/)你的 TiDB Cloud 账号。 +2. [登录](https://tidbcloud.com/) 你的 TiDB Cloud 账号。 - 默认显示[**集群**](https://tidbcloud.com/project/clusters)页面。 + 默认会显示 [**Clusters**](https://tidbcloud.com/project/clusters) 页面。 3. 对于新注册用户,TiDB Cloud 会自动为你创建一个名为 `Cluster0` 的默认 TiDB Cloud Serverless 集群。 - - 要立即使用此默认集群试用 TiDB Cloud 功能,请继续[第 2 步:试用 AI 辅助 SQL 编辑器](#第-2-步试用-ai-辅助-sql-编辑器)。 - - 要自行创建新的 TiDB Cloud Serverless 集群,请按照以下步骤操作: + - 如果你想立即使用该默认集群体验 TiDB Cloud 的功能,请继续阅读 [第 2 步:体验 AI 辅助 SQL 编辑器](#step-2-try-ai-assisted-sql-editor)。 + - 如果你想自行创建新的 TiDB Cloud Serverless 集群,请按照以下步骤操作: - 1. 点击**创建集群**。 - 2. 在**创建集群**页面,默认选择 **Serverless**。选择集群的目标区域,根据需要更新默认集群名称,选择你的[集群方案](/tidb-cloud/select-cluster-tier.md#cluster-plans),然后点击**创建**。你的 TiDB Cloud Serverless 集群将在大约 30 秒内创建完成。 + 1. 点击 **Create Cluster**。 + 2. 在 **Create Cluster** 页面,**Serverless** 会被默认选中。选择你的集群目标区域,如有需要可修改默认集群名称,选择你的 [集群方案](/tidb-cloud/select-cluster-tier.md#cluster-plans),然后点击 **Create**。你的 TiDB Cloud Serverless 集群将在大约 30 秒内创建完成。 -## 第 2 步:试用 AI 辅助 SQL 编辑器 +## 第 2 步:体验 AI 辅助 SQL 编辑器 -你可以使用 TiDB Cloud 控制台中内置的 AI 辅助 SQL 编辑器来最大化数据价值。这使你无需本地 SQL 客户端即可对数据库运行 SQL 查询。你可以直观地以表格或图表形式查看查询结果,并轻松查看查询日志。 +你可以在 TiDB Cloud 控制台中使用内置的 AI 辅助 SQL 编辑器,最大化数据价值。这样你无需本地 SQL 客户端即可对数据库运行 SQL 查询,并可直观地以表格或图表形式查看查询结果,轻松查看查询日志。 -1. 在[**集群**](https://tidbcloud.com/project/clusters)页面,点击集群名称进入其概览页面,然后在左侧导航栏中点击 **SQL 编辑器**。 +1. 在 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击某个集群名称进入其概览页面,然后在左侧导航栏点击 **SQL Editor**。 -2. 要试用 TiDB Cloud 的 AI 功能,请按照屏幕上的说明允许 PingCAP 和 AWS Bedrock 使用你的代码片段进行研究和服务改进,然后点击**保存并开始**。 +2. 若要体验 TiDB Cloud 的 AI 能力,请按照屏幕提示允许 PingCAP 和 AWS Bedrock 使用你的代码片段进行研究和服务改进,然后点击 **Save and Get Started**。 -3. 在 SQL 编辑器中,在 macOS 上按 + I(或在 Windows 或 Linux 上按 Control + I)来指示 [Chat2Query (beta)](/tidb-cloud/tidb-cloud-glossary.md#chat2query) 自动生成 SQL 查询。 +3. 在 SQL Editor 中,按下 macOS 的 + I(或 Windows/Linux 的 Control + I),即可指示 [Chat2Query (beta)](/tidb-cloud/tidb-cloud-glossary.md#chat2query) 自动生成 SQL 查询语句。 - 例如,要创建一个包含两列(列 `id` 和列 `name`)的新表 `test.t`,你可以输入 `use test;` 来指定数据库,按 + I,输入 `create a new table t with id and name` 作为指令,然后按 **Enter** 让 AI 相应地生成 SQL 语句。 - - 对于生成的语句,你可以点击**接受**来接受它,然后根据需要进一步编辑,或者点击**放弃**来拒绝它。 + 例如,若要创建一个包含两列(`id` 和 `name`)的新表 `test.t`,你可以输入 `use test;` 指定数据库,按下 + I,输入 `create a new table t with id and name` 作为指令,然后按 **Enter**,让 AI 自动生成相应的 SQL 语句。 + + 对于生成的语句,你可以点击 **Accept** 接受并根据需要进一步编辑,或点击 **Discard** 拒绝。 > **注意:** > - > AI 生成的 SQL 查询并非 100% 准确,可能仍需要进一步调整。 + > AI 生成的 SQL 查询并非 100% 准确,可能仍需进一步调整。 4. 运行 SQL 查询。 @@ -57,11 +57,11 @@ category: quick start 对于 macOS: - - 如果编辑器中只有一个查询,按 **⌘ + Enter** 或点击 **运行**来执行它。 + - 如果编辑器中只有一个查询,按下 **⌘ + Enter** 或点击 **Run** 执行。 - - 如果编辑器中有多个查询,用光标选择目标查询的行,然后按 **⌘ + Enter** 或点击**运行**来按顺序执行它们。 + - 如果编辑器中有多个查询,使用光标选中目标查询的行,然后按 **⌘ + Enter** 或点击 **Run** 顺序执行。 - - 要按顺序运行编辑器中的所有查询,按 **⇧ + ⌘ + Enter**,或用光标选择所有查询的行并点击**运行**。 + - 若要顺序执行编辑器中的所有查询,按 **⇧ + ⌘ + Enter**,或用光标选中所有查询的行后点击 **Run**。
@@ -69,18 +69,18 @@ category: quick start 对于 Windows 或 Linux: - - 如果编辑器中只有一个查询,按 **Ctrl + Enter** 或点击 **运行**来执行它。 + - 如果编辑器中只有一个查询,按下 **Ctrl + Enter** 或点击 **Run** 执行。 - - 如果编辑器中有多个查询,用光标选择目标查询的行,然后按 **Ctrl + Enter** 或点击**运行**来按顺序执行它们。 + - 如果编辑器中有多个查询,使用光标选中目标查询的行,然后按 **Ctrl + Enter** 或点击 **Run** 顺序执行。 - - 要按顺序运行编辑器中的所有查询,按 **Shift + Ctrl + Enter**,或用光标选择所有查询的行并点击**运行**。 + - 若要顺序执行编辑器中的所有查询,按 **Shift + Ctrl + Enter**,或用光标选中所有查询的行后点击 **Run**。
-运行查询后,你可以立即在页面底部看到查询日志和结果。 +运行查询后,你可以在页面底部立即看到查询日志和结果。 -要让 AI 生成更多 SQL 语句,你可以按照以下示例输入更多指令: +如果想让 AI 生成更多 SQL 语句,可以像下面的示例一样输入更多指令: ```sql use test; @@ -105,18 +105,18 @@ FROM `t`; ``` -## 第 3 步:试用交互式教程 +## 第 3 步:体验交互式教程 -TiDB Cloud 提供了带有精心设计的示例数据集的交互式教程,帮助你快速开始使用 TiDB Cloud。你可以尝试这些教程,学习如何使用 TiDB Cloud 进行高性能数据分析。 +TiDB Cloud 提供了配套示例数据集的交互式教程,帮助你快速上手 TiDB Cloud。你可以通过这些教程学习如何使用 TiDB Cloud 进行高性能数据分析。 -1. 点击控制台右下角的 **?** 图标,选择**交互式教程**。 -2. 在教程列表中,选择一个教程卡片开始,例如 **Steam 游戏统计**。 -3. 选择你想要用于教程的 TiDB Cloud Serverless 集群,然后点击**导入数据集**。导入过程可能需要大约一分钟。 -4. 数据导入完成后,按照屏幕上的说明完成教程。 +1. 点击控制台右下角的 **?** 图标,选择 **Interactive Tutorials**。 +2. 在教程列表中,选择一个教程卡片开始,例如 **Steam Game Stats**。 +3. 选择你想用于本教程的 TiDB Cloud Serverless 集群,点击 **Import Dataset**。导入过程大约需要 1 分钟。 +4. 示例数据导入完成后,按照屏幕提示完成教程。 -## 下一步 +## 后续操作 -- 要了解如何使用不同方法连接到集群,请参阅[连接到 TiDB Cloud Serverless 集群](/tidb-cloud/connect-to-tidb-cluster-serverless.md)。 -- 要了解更多关于如何使用 SQL 编辑器和 Chat2Query 探索数据的信息,请参阅[使用 AI 辅助 SQL 编辑器探索数据](/tidb-cloud/explore-data-with-chat2query.md)。 -- 关于 TiDB SQL 的使用,请参阅[使用 TiDB 探索 SQL](/basic-sql-operations.md)。 -- 对于需要跨可用区高可用性、水平扩展和 [HTAP](https://en.wikipedia.org/wiki/Hybrid_transactional/analytical_processing) 优势的生产环境使用,请参阅[创建 TiDB Cloud Dedicated 集群](/tidb-cloud/create-tidb-cluster.md)。 +- 了解如何通过不同方式连接你的集群,请参见 [连接到 TiDB Cloud Serverless 集群](/tidb-cloud/connect-to-tidb-cluster-serverless.md)。 +- 获取更多关于如何使用 SQL Editor 和 Chat2Query 探索数据的信息,请参见 [使用 AI 辅助 SQL 编辑器探索数据](/tidb-cloud/explore-data-with-chat2query.md)。 +- 了解 TiDB SQL 的用法,请参见 [使用 TiDB 探索 SQL](/basic-sql-operations.md)。 +- 若需生产环境下具备跨可用区高可用、水平扩展和 [HTAP](https://en.wikipedia.org/wiki/Hybrid_transactional/analytical_processing) 优势的集群,请参见 [创建 TiDB Cloud 专属集群](/tidb-cloud/create-tidb-cluster.md)。 \ No newline at end of file diff --git a/tidb-cloud/tidb-cloud-release-notes.md b/tidb-cloud/tidb-cloud-release-notes.md index 839bcdd05e1ee..1ed0ca0d98e0c 100644 --- a/tidb-cloud/tidb-cloud-release-notes.md +++ b/tidb-cloud/tidb-cloud-release-notes.md @@ -1,276 +1,367 @@ --- -title: TiDB Cloud 2025 年发布说明 -summary: 了解 TiDB Cloud 2025 年的发布说明。 +title: 2025 年 TiDB Cloud 发布说明 +summary: 了解 2025 年 TiDB Cloud 的发布说明。 aliases: ['/tidbcloud/supported-tidb-versions','/tidbcloud/release-notes'] --- -# TiDB Cloud 2025 年发布说明 +# 2025 年 TiDB Cloud 发布说明 -本页列出了 [TiDB Cloud](https://www.pingcap.com/tidb-cloud/) 在 2025 年的发布说明。 +本页面列出了 [TiDB Cloud](https://www.pingcap.com/tidb-cloud/) 在 2025 年的发布说明。 + +## 2025 年 7 月 31 日 + +**通用变更** + +- 增强版 Datadog 和 New Relic 集成现已开放预览。 + + 主要增强内容: + + - 采用优化的隔离架构重构集成后端,最大程度减少监控指标丢失。 + - 根据用户需求增加更多监控指标。 + - 优化指标规则,提升一致性。 + + 这些增强带来了更准确的监控,并提升了 Datadog 和 New Relic 集成的可靠性。 + + 发布计划: + + 该预览版本现已对尚未集成 Datadog 或 New Relic 的组织开放。对于已集成 Datadog 或 New Relic 的组织,我们将在下月主动联系你,协商合适的迁移方案和时间表。 + + 了解更多信息,请参见 [Integrate TiDB Cloud with Datadog (Preview)](/tidb-cloud/monitor-datadog-integration.md) 和 [Integrate TiDB Cloud with New Relic (Preview)](/tidb-cloud/monitor-new-relic-integration.md)。 + +## 2025 年 7 月 22 日 + +**通用变更** + +- 为托管在 Google Cloud 上的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群提供新的节点规格:`32 vCPU, 128 GiB`。 + + 该新规格适用于 TiDB、TiKV 和 TiFlash 节点。 + +- 优化 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 中 TiKV 的扩缩容流程,提升集群稳定性。 + + 当你 [更改 TiKV 节点的 vCPU 和内存规格](/tidb-cloud/scale-tidb-cluster.md#change-vcpu-and-ram) 时,TiDB Cloud 会自动检查集群内部服务是否需要扩容以支持新配置。 + + - 如果需要扩容,TiDB Cloud 会在操作前提示你确认。 + - 如果扩容后内部服务的容量已大于所需规格,TiDB Cloud 会保留现有内部服务配置,避免不必要的变更影响集群稳定性。 + +**控制台变更** + +- 优化 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的云存储数据导入体验。 + + 导入流程现已简化为 3 步向导,并具备智能预检查功能。新向导将引导你完成连接设置、文件映射和存储桶扫描。通过扫描,TiDB Cloud 会在导入前准确展示将被导入的文件及其目标位置,大幅降低配置复杂度并防止导入失败。 + + 了解更多信息,请参见以下文档: + + - [Import Sample Data into TiDB Cloud Serverless](/tidb-cloud/import-sample-data-serverless.md) + - [Import CSV Files from Cloud Storage into TiDB Cloud Serverless](/tidb-cloud/import-csv-files-serverless.md) + - [Import Apache Parquet Files from Cloud Storage into TiDB Cloud Serverless](/tidb-cloud/import-parquet-files-serverless.md) + +## 2025 年 7 月 15 日 + +**通用变更** + +- 新建 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本由 [v8.1.2](https://docs.pingcap.com/tidb/stable/release-8.1.2/) 升级至 [v8.5.2](https://docs.pingcap.com/tidb/stable/release-8.5.2/)。 + + 与 v8.1.2 相比,v8.5.2 包含了 [v8.2.0-DMR](https://docs.pingcap.com/tidb/stable/release-8.2.0/)、[v8.3.0-DMR](https://docs.pingcap.com/tidb/stable/release-8.3.0/)、[v8.4.0-DMR](https://docs.pingcap.com/tidb/stable/release-8.4.0/)、[v8.5.0](https://docs.pingcap.com/tidb/stable/release-8.5.0/)、[v8.5.1](https://docs.pingcap.com/tidb/stable/release-8.5.1/) 和 [v8.5.2](https://docs.pingcap.com/tidb/stable/release-8.5.2/) 中的新特性、改进和 bug 修复。 + +- 支持审计 `BackupCompleted` 事件,增强备份操作的控制台审计日志。 + + 该增强允许你记录备份完成操作,以满足安全和合规要求。 + + 了解更多信息,请参见 [Console Audit Logging](/tidb-cloud/tidb-cloud-console-auditing.md)。 + +- 支持在 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) changefeed 中按列值过滤。 + + 你现在可以使用表达式在 changefeed 中过滤特定列值,从源头排除无关数据。该功能支持对 DML 事件进行细粒度过滤,帮助你降低资源消耗并提升性能。 + + 了解更多信息,请参见 [Changefeed](/tidb-cloud/changefeed-overview.md)。 + +## 2025 年 6 月 24 日 + +**通用变更** + +- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 数据库审计日志(beta)现可按需开通。该功能允许你在日志中记录用户访问历史(如执行的 SQL 语句等)。 + + 如需申请该功能,请点击 [TiDB Cloud 控制台](https://tidbcloud.com) 右下角的 **?**,再点击 **Request Support**,在 Description 字段填写“Apply for TiDB Cloud Serverless database audit logging”,然后点击 **Submit**。 + + 了解更多信息,请参见 [TiDB Cloud Serverless Database Audit Logging](/tidb-cloud/serverless-audit-logging.md)。 + +- [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 支持用户自主控制日志脱敏。 + + 你现在可以为 TiDB Cloud Dedicated 集群开启或关闭日志脱敏,自主管理集群日志的脱敏状态。 + + 了解更多信息,请参见 [User-Controlled Log Redaction](/tidb-cloud/tidb-cloud-log-redaction.md)。 + +- 托管在 AWS 上的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群现已全面支持(GA)客户自管加密密钥(CMEK)静态加密。 + + 该功能允许你通过密钥管理服务(KMS)管理的对称加密密钥,保护静态数据安全。 + + 了解更多信息,请参见 [Encryption at Rest Using Customer-Managed Encryption Keys](/tidb-cloud/tidb-cloud-encrypt-cmek.md)。 ## 2025 年 6 月 17 日 -**一般变更** +**通用变更** -- 对于 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群,16 vCPU 和 32 vCPU 的 TiKV 节点的最大存储大小从 **6144 GiB** 改为 **4096 GiB**。 +- 对于 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群,16 vCPU 和 32 vCPU 的 TiKV 节点最大存储容量由 **6144 GiB** 调整为 **4096 GiB**。 - 更多信息,请参见 [TiKV 节点存储大小](/tidb-cloud/size-your-cluster.md#tikv-node-storage-size)。 + 了解更多信息,请参见 [TiKV node storage size](/tidb-cloud/size-your-cluster.md#tikv-node-storage-size)。 **控制台变更** -- 重新设计左侧导航栏以改善整体导航体验。 +- 全面升级左侧导航栏,提升整体导航体验。 - - 在左上角新增了一个 图标,让你可以根据需要轻松隐藏或显示左侧导航栏。 - - 在左上角新增了一个组合框,让你可以从一个中心位置快速切换组织、项目和集群。 + - 左上角新增 图标,便于你随时隐藏或显示左侧导航栏。 + - 左上角新增组合框,支持你在同一位置快速切换组织、项目和集群。 - - 左侧导航栏显示的条目现在会根据你在组合框中的当前选择动态调整,帮助你专注于最相关的功能。 - - 为了方便快速访问,**支持**、**通知**和你的账户条目现在会始终显示在所有控制台页面的左侧导航栏底部。 + - 左侧导航栏的入口会根据你在组合框中的当前选择动态调整,帮助你聚焦最相关的功能。 + - 为便于快速访问,**Support**、**Notification** 和你的账号入口现始终显示在所有控制台页面左侧导航栏底部。 ## 2025 年 6 月 4 日 -**一般变更** +**通用变更** -- [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 在 Microsoft Azure 上现已公开预览。 - - 随着此次发布,TiDB Cloud 现在支持所有三大公有云平台 — AWS、Google Cloud 和 Azure,使你能够在最适合你的业务需求和云战略的地方部署 TiDB Cloud Dedicated 集群。 - - - AWS 和 Google Cloud 上可用的所有核心功能在 Azure 上都完全支持。 - - Azure 支持目前在三个区域可用:East US 2、Japan East 和 Southeast Asia,更多区域即将推出。 - - Azure 上的 TiDB Cloud Dedicated 集群需要 TiDB v7.5.3 或更高版本。 - - 要快速开始使用 Azure 上的 TiDB Cloud Dedicated,请参见以下文档: - - - [在 Azure 上创建 TiDB Cloud Dedicated 集群](/tidb-cloud/create-tidb-cluster.md) - - [通过 Azure 私有端点连接 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections-on-azure.md) - - [将数据导入 Azure 上的 TiDB Cloud Dedicated 集群](/tidb-cloud/import-csv-files.md) +- [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) on Microsoft Azure 现已开放公测。 -- Prometheus 集成提供更多指标以增强 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的监控能力。 - - 现在你可以将更多指标(如 `tidbcloud_disk_read_latency` 和 `tidbcloud_kv_request_duration`)集成到 Prometheus 中,以跟踪 TiDB Cloud Dedicated 性能的更多方面。 - - 有关可用指标以及如何为现有和新用户启用这些指标的更多信息,请参见[将 TiDB Cloud 与 Prometheus 和 Grafana 集成(Beta)](/tidb-cloud/monitor-prometheus-and-grafana-integration.md#metrics-available-to-prometheus)。 + 随着本次发布,TiDB Cloud 现已支持三大主流公有云平台 —— AWS、Google Cloud 和 Azure,助你根据业务需求和云战略灵活部署 TiDB Cloud Dedicated 集群。 -- TiKV [标准](/tidb-cloud/size-your-cluster.md#standard-storage)和[性能](/tidb-cloud/size-your-cluster.md#performance-and-plus-storage)存储定价正式发布。 + - 在 Azure 上,AWS 和 Google Cloud 上的所有核心功能均已全面支持。 + - Azure 目前支持 East US 2、日本东部和东南亚三个区域,更多区域即将开放。 + - Azure 上的 TiDB Cloud Dedicated 集群需使用 TiDB v7.5.3 或更高版本。 - 折扣期将于 **2025 年 6 月 5 日 00:00 UTC** 结束。之后,价格将恢复到标准价格。有关 TiDB Cloud Dedicated 价格的更多信息,请参见 [TiDB Cloud Dedicated 价格详情](https://www.pingcap.com/tidb-dedicated-pricing-details/#node-cost)。 + 快速上手 Azure 上的 TiDB Cloud Dedicated,请参见以下文档: + + - [Create a TiDB Cloud Dedicated Cluster on Azure](/tidb-cloud/create-tidb-cluster.md) + - [Connect a TiDB Cloud Dedicated Cluster via Azure Private Endpoint](/tidb-cloud/set-up-private-endpoint-connections-on-azure.md) + - [Import Data into TiDB Cloud Dedicated Cluster on Azure](/tidb-cloud/import-csv-files.md) + +- Prometheus 集成为 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群提供了更多监控指标,增强监控能力。 + + 你现在可以将 `tidbcloud_disk_read_latency`、`tidbcloud_kv_request_duration` 等更多指标集成到 Prometheus,追踪 TiDB Cloud Dedicated 的更多性能维度。 + + 了解可用指标及如何为新老用户启用,请参见 [Integrate TiDB Cloud with Prometheus and Grafana (Beta)](/tidb-cloud/monitor-prometheus-and-grafana-integration.md#metrics-available-to-prometheus)。 + +- TiKV [Standard](/tidb-cloud/size-your-cluster.md#standard-storage) 和 [Performance](/tidb-cloud/size-your-cluster.md#performance-and-plus-storage) 存储类型定价正式发布。 + + 优惠期将于 **2025 年 6 月 5 日 00:00 UTC** 结束,届时价格恢复为标准价。更多 TiDB Cloud Dedicated 价格信息,请参见 [TiDB Cloud Dedicated Pricing Details](https://www.pingcap.com/tidb-dedicated-pricing-details/#node-cost)。 **控制台变更** -- 增强配置 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的 TiFlash 节点大小时的交互体验。 +- 优化 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群 TiFlash 节点规格配置的交互体验。 - 现在你可以在创建 TiDB Cloud Dedicated 集群时使用切换开关来控制 TiFlash 配置,使配置体验更加直观和流畅。 + 你现在可以在创建 TiDB Cloud Dedicated 集群时,通过开关按钮控制 TiFlash 配置,使配置过程更加直观流畅。 ## 2025 年 5 月 27 日 -**一般变更** +**通用变更** -- 支持通过 changefeed 将 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的数据流式传输到 [Apache Pulsar](https://pulsar.apache.org)。 +- [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的 changefeed 现已支持将数据流式同步到 [Apache Pulsar](https://pulsar.apache.org)。 - 此功能使你能够将 TiDB Cloud Dedicated 集群与更多下游系统集成,并满足额外的数据集成需求。要使用此功能,请确保你的 TiDB Cloud Dedicated 集群版本为 v7.5.1 或更高版本。 + 该功能使你可以将 TiDB Cloud Dedicated 集群与更多下游系统集成,满足更多数据集成需求。使用该功能需确保集群版本为 v7.5.1 或更高。 - 更多信息,请参见[导出到 Apache Pulsar](/tidb-cloud/changefeed-sink-to-apache-pulsar.md)。 + 了解更多信息,请参见 [Sink to Apache Pulsar](/tidb-cloud/changefeed-sink-to-apache-pulsar.md)。 ## 2025 年 5 月 13 日 -**一般变更** +**通用变更** -- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 现在为 AI 应用提供全文搜索功能(beta)。 +- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 现已支持 AI 应用的全文检索(beta)。 - TiDB Cloud Serverless 现在支持全文搜索(beta),使 AI 和检索增强生成(RAG)应用能够通过精确关键词检索内容。这补充了通过语义相似性检索内容的向量搜索。结合这两种方法可以显著提高 RAG 工作流中的检索准确性和答案质量。主要功能包括: + TiDB Cloud Serverless 现已支持全文检索(beta),使 AI 和 RAG(检索增强生成)应用能够通过精确关键词检索内容。该功能补充了向量检索(按语义相似度检索内容),两者结合可显著提升 RAG 工作流的检索准确性和答案质量。主要特性包括: - - 直接文本搜索:无需嵌入即可直接查询字符串列。 - - 多语言支持:自动检测和分析多种语言的文本,即使在同一个表中也无需指定语言。 - - 基于相关性的排名:使用行业标准的 BM25 算法对结果进行排名,以获得最佳相关性。 - - 原生 SQL 兼容性:与全文搜索无缝使用 SQL 功能,如过滤、分组和连接。 + - 直接文本检索:可直接查询字符串列,无需嵌入向量。 + - 多语言支持:自动检测并分析多语言文本,即使在同一张表中也无需指定语言。 + - 相关性排序:结果采用业界标准 BM25 算法进行相关性排序。 + - 原生 SQL 兼容:可与 SQL 过滤、分组、关联等功能无缝结合。 - 要开始使用,请参见[使用 SQL 进行全文搜索](/tidb-cloud/vector-search-full-text-search-sql.md)或[使用 Python 进行全文搜索](/tidb-cloud/vector-search-full-text-search-python.md)。 + 快速上手,请参见 [Full Text Search with SQL](/tidb-cloud/vector-search-full-text-search-sql.md) 或 [Full Text Search with Python](/tidb-cloud/vector-search-full-text-search-python.md)。 -- 增加 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的最大 TiFlash 节点存储: +- 提升 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群 TiFlash 节点最大存储容量: - - 8 vCPU TiFlash,从 2048 GiB 增加到 4096 GiB - - 32 vCPU TiFlash,从 4096 GiB 增加到 8192 GiB + - 8 vCPU TiFlash:由 2048 GiB 提升至 4096 GiB + - 32 vCPU TiFlash:由 4096 GiB 提升至 8192 GiB - 此增强提高了 TiDB Cloud Dedicated 集群的分析数据存储容量,提升了工作负载扩展效率,并适应不断增长的数据需求。 + 该增强提升了 TiDB Cloud Dedicated 集群的分析型数据存储能力,提高了工作负载扩展效率,满足不断增长的数据需求。 - 更多信息,请参见 [TiFlash 节点存储](/tidb-cloud/size-your-cluster.md#tiflash-node-storage)。 + 了解更多信息,请参见 [TiFlash node storage](/tidb-cloud/size-your-cluster.md#tiflash-node-storage)。 -- 通过提供直观的选项来配置和重新安排维护任务,增强维护窗口配置体验。 +- 优化维护窗口配置体验,提供更直观的选项以配置和重新安排维护任务。 - 更多信息,请参见[配置维护窗口](/tidb-cloud/configure-maintenance-window.md)。 + 了解更多信息,请参见 [Configure maintenance window](/tidb-cloud/configure-maintenance-window.md)。 -- 延长 TiKV [标准](/tidb-cloud/size-your-cluster.md#standard-storage)和[性能](/tidb-cloud/size-your-cluster.md#performance-and-plus-storage)存储类型的折扣期。促销现在将于 2025 年 6 月 5 日结束。在此日期之后,价格将恢复到标准费率。 +- 延长 TiKV [Standard](/tidb-cloud/size-your-cluster.md#standard-storage) 和 [Performance](/tidb-cloud/size-your-cluster.md#performance-and-plus-storage) 存储类型的优惠期,促销截止日期延长至 2025 年 6 月 5 日。届时价格将恢复为标准价。 **控制台变更** -- 优化**备份设置**页面布局,改善 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的备份配置体验。 +- 优化 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群 **Backup Setting** 页面布局,提升备份配置体验。 - 更多信息,请参见[备份和恢复 TiDB Cloud Dedicated 数据](/tidb-cloud/backup-and-restore.md)。 + 了解更多信息,请参见 [Back Up and Restore TiDB Cloud Dedicated Data](/tidb-cloud/backup-and-restore.md)。 ## 2025 年 4 月 22 日 -**一般变更** +**通用变更** + +- 现已支持导出数据到阿里云 OSS。 -- 现在支持将数据导出到阿里云 OSS。 + [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群现支持使用 [AccessKey pair](https://www.alibabacloud.com/help/en/ram/user-guide/create-an-accesskey-pair) 将数据导出到 [阿里云对象存储服务(OSS)](https://www.alibabacloud.com/en/product/object-storage-service)。 - [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群现在支持使用 [AccessKey 对](https://www.alibabacloud.com/help/en/ram/user-guide/create-an-accesskey-pair)将数据导出到[阿里云对象存储服务(OSS)](https://www.alibabacloud.com/en/product/object-storage-service)。 + 了解更多信息,请参见 [Export Data from TiDB Cloud Serverless](/tidb-cloud/serverless-export.md#alibaba-cloud-oss)。 - 更多信息,请参见[从 TiDB Cloud Serverless 导出数据](/tidb-cloud/serverless-export.md#alibaba-cloud-oss)。 +- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的 TiDB 版本由 [v7.1.3](https://docs.pingcap.com/tidb/v7.1/release-7.1.3) 升级至 [v7.5.2](https://docs.pingcap.com/tidb/v7.5/release-7.5.2)。 ## 2025 年 4 月 15 日 -**一般变更** +**通用变更** -- 支持从[阿里云对象存储服务(OSS)](https://www.alibabacloud.com/en/product/object-storage-service)将数据导入到 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。 +- 支持从 [阿里云对象存储服务(OSS)](https://www.alibabacloud.com/en/product/object-storage-service) 导入数据到 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。 - 此功能简化了向 TiDB Cloud Serverless 的数据迁移。你可以使用 AccessKey 对进行身份验证。 + 该功能简化了向 TiDB Cloud Serverless 的数据迁移。你可以使用 AccessKey pair 进行认证。 - 更多信息,请参见以下文档: + 了解更多信息,请参见以下文档: - - [从 Amazon S3、GCS、Azure Blob Storage 或阿里云 OSS 导入 CSV 文件到 TiDB Cloud Serverless](/tidb-cloud/import-csv-files-serverless.md) - - [从 Amazon S3、GCS、Azure Blob Storage 或阿里云 OSS 导入 Apache Parquet 文件到 TiDB Cloud Serverless](/tidb-cloud/import-parquet-files-serverless.md) + - [Import CSV Files from Amazon S3, GCS, Azure Blob Storage, or Alibaba Cloud OSS into TiDB Cloud Serverless](/tidb-cloud/import-csv-files-serverless.md) + - [Import Apache Parquet Files from Amazon S3, GCS, Azure Blob Storage, or Alibaba Cloud OSS into TiDB Cloud Serverless](/tidb-cloud/import-parquet-files-serverless.md) ## 2025 年 4 月 1 日 -**一般变更** +**通用变更** -- [TiDB 节点组](/tidb-cloud/tidb-node-group-overview.md)功能现在在 AWS 和 Google Cloud 上托管的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群中正式发布(GA)。 +- [TiDB Node Groups](/tidb-cloud/tidb-node-group-overview.md) 功能现已在托管于 AWS 和 Google Cloud 的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群上全面可用(GA)。 - 此功能实现了单个集群内的**细粒度计算资源隔离**,帮助你优化多租户或多工作负载场景下的性能和资源分配。 + 该功能支持在单个集群内实现**细粒度计算资源隔离**,帮助你在多租户或多工作负载场景下优化性能和资源分配。 **主要优势:** - **资源隔离**: - - 将 TiDB 节点分组为逻辑隔离的单元,确保一个组中的工作负载不会影响其他组。 - - 防止应用程序或业务单位之间的资源争用。 + - 将 TiDB 节点分组为逻辑隔离单元,确保一个组内的工作负载不会影响其他组。 + - 防止应用或业务单元间的资源争用。 - **简化管理**: - - 在单个集群内管理所有节点组,减少运维开销。 - - 根据需求独立扩展各个组。 + - 在单个集群内统一管理所有节点组,降低运维负担。 + - 可按需独立扩缩各节点组。 - 有关优势的更多信息,请参见[技术博客](https://www.pingcap.com/blog/tidb-cloud-node-groups-scaling-workloads-predictable-performance/)。要开始使用,请参见[管理 TiDB 节点组](/tidb-cloud/tidb-node-group-management.md)。 + 了解更多优势,请参见 [技术博客](https://www.pingcap.com/blog/tidb-cloud-node-groups-scaling-workloads-predictable-performance/)。快速上手,请参见 [Manage TiDB Node Groups](/tidb-cloud/tidb-node-group-management.md)。 -- 为 AWS 上托管的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的 TiKV 节点引入[标准存储](/tidb-cloud/size-your-cluster.md#standard-storage)类型。 +- 在托管于 AWS 的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群中引入 [Standard storage](/tidb-cloud/size-your-cluster.md#standard-storage) 类型的 TiKV 节点。 - 标准存储类型适用于大多数工作负载,在性能和成本效益之间提供平衡。 + Standard 存储类型适用于大多数工作负载,在性能和成本之间实现平衡。 **主要优势:** - - **性能提升**:为 Raft 日志保留足够的磁盘资源,减少 Raft 和数据存储之间的 I/O 争用,从而提高 TiKV 的读写性能。 - - **稳定性增强**:将关键的 Raft 操作与数据工作负载隔离,确保更可预测的性能。 - - **成本效益**:与之前的存储类型相比,以具有竞争力的价格提供更高的性能。 + - **性能提升**:为 Raft 日志预留充足磁盘资源,减少 Raft 与数据存储间的 I/O 争用,提升 TiKV 读写性能。 + - **稳定性增强**:将关键 Raft 操作与数据工作负载隔离,确保更可预测的性能。 + - **成本效益**:相比之前的存储类型,以更具竞争力的价格提供更高性能。 **可用性:** - 标准存储类型自动应用于 2025 年 4 月 1 日或之后在 AWS 上创建的新 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群,支持的版本为(版本 >= 7.5.5、8.1.2 或 8.5.0)。现有集群仍使用之前的[基础存储](/tidb-cloud/size-your-cluster.md#basic-storage)类型,无需迁移。 + Standard 存储类型会自动应用于 2025 年 4 月 1 日及以后在 AWS 上新建的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群,且需支持的版本(>= 7.5.5、8.1.2 或 8.5.0)。现有集群仍使用之前的 [Basic storage](/tidb-cloud/size-your-cluster.md#basic-storage) 类型,无需迁移。 - 标准存储的价格与基础存储不同。更多信息,请参见[定价](https://www.pingcap.com/tidb-dedicated-pricing-details/)。 + Standard 存储类型的价格与 Basic 存储类型不同。更多信息请参见 [Pricing](https://www.pingcap.com/tidb-dedicated-pricing-details/)。 ## 2025 年 3 月 25 日 **控制台变更** -- 支持 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的公共端点防火墙规则。 +- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群现已支持为公网访问端点配置防火墙规则。 - 你现在可以为 TiDB Cloud Serverless 集群配置防火墙规则,以控制通过公共端点的访问。直接在 [TiDB Cloud 控制台](https://tidbcloud.com/)中指定允许的 IP 地址或范围以增强安全性。 + 你现在可以为 TiDB Cloud Serverless 集群配置防火墙规则,控制公网端点的访问。可在 [TiDB Cloud 控制台](https://tidbcloud.com/) 中直接指定允许的 IP 地址或范围,提升安全性。 - 更多信息,请参见[为公共端点配置 TiDB Cloud Serverless 防火墙规则](/tidb-cloud/configure-serverless-firewall-rules-for-public-endpoints.md)。 + 了解更多信息,请参见 [Configure TiDB Cloud Serverless Firewall Rules for Public Endpoints](/tidb-cloud/configure-serverless-firewall-rules-for-public-endpoints.md)。 ## 2025 年 3 月 18 日 -**一般变更** +**通用变更** -- 支持为部署在 Google Cloud 上的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群创建 TiDB 节点组,以增强资源管理灵活性。 +- 支持为部署在 Google Cloud 的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群创建 TiDB 节点组,提升资源管理灵活性。 - 更多信息,请参见 [TiDB 节点组概述](/tidb-cloud/tidb-node-group-overview.md)。 + 了解更多信息,请参见 [Overview of TiDB Node Group](/tidb-cloud/tidb-node-group-overview.md)。 -- 支持在 TiDB Cloud 中存储部署在 AWS 上的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的数据库审计日志文件。 +- 支持将数据库审计日志文件存储在 TiDB Cloud,用于部署在 AWS 的 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群。 - 你可以直接从 TiDB Cloud 下载这些审计日志文件。请注意,此功能仅在申请后可用。 + 你可以直接从 TiDB Cloud 下载这些审计日志文件。注意,该功能仅支持按需开通。 - 更多信息,请参见[数据库审计日志](/tidb-cloud/tidb-cloud-auditing.md)。 + 了解更多信息,请参见 [Database Audit Logging](/tidb-cloud/tidb-cloud-auditing.md)。 -- 通过改进多因素认证(MFA)的管理来增强 TiDB Cloud 账户安全性。此功能适用于 TiDB Cloud 的基于密码的登录。 +- 通过优化多因素认证(MFA)管理,增强 TiDB Cloud 账号安全。该功能适用于 TiDB Cloud 的密码登录方式。 - 更多信息,请参见[密码认证](/tidb-cloud/tidb-cloud-password-authentication.md)。 + 了解更多信息,请参见 [Password Authentication](/tidb-cloud/tidb-cloud-password-authentication.md)。 ## 2025 年 2 月 18 日 **控制台变更** -- 推出 Connected Care,TiDB Cloud 的新支持服务。 +- 推出 Connected Care,全新 TiDB Cloud 支持服务。 - Connected Care 服务旨在通过现代通信工具、主动支持和先进的 AI 功能加强你与 TiDB Cloud 的连接,提供无缝和以客户为中心的体验。 + Connected Care 服务通过现代通信工具、主动支持和先进的 AI 能力,增强你与 TiDB Cloud 的连接,带来无缝且以客户为中心的体验。 - Connected Care 服务引入了以下功能: + Connected Care 服务包含以下功能: - - **诊所服务**:先进的监控和诊断,优化性能。 - - **即时通讯中的 AI 聊天**:通过即时通讯(IM)工具获得即时 AI 帮助。 - - **告警和工单更新的即时通讯订阅**:通过即时通讯及时了解告警和工单进展。 - - **支持工单的即时通讯交互**:通过即时通讯工具创建和处理支持工单。 + - **Clinic service**:高级监控与诊断,优化性能。 + - **AI chat in IM**:通过即时通讯工具获得 AI 实时协助。 + - **IM subscription for alerts and ticket updates**:通过 IM 实时获取告警和工单进展。 + - **IM interaction for support tickets**:可通过 IM 工具创建和跟进支持工单。 - 更多信息,请参见 [Connected Care 概述](/tidb-cloud/connected-care-overview.md)。 + 了解更多信息,请参见 [Connected Care Overview](/tidb-cloud/connected-care-overview.md)。 -- 支持从 GCS 和 Azure Blob Storage 将数据导入到 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。 +- 支持从 GCS 和 Azure Blob Storage 导入数据到 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。 - TiDB Cloud Serverless 现在支持从 Google Cloud Storage (GCS) 和 Azure Blob Storage 导入数据。你可以使用 Google Cloud 服务账号密钥或 Azure 共享访问签名(SAS)令牌进行身份验证。此功能简化了向 TiDB Cloud Serverless 的数据迁移。 + TiDB Cloud Serverless 现已支持从 Google Cloud Storage(GCS)和 Azure Blob Storage 导入数据。你可以使用 Google Cloud 服务账号密钥或 Azure 共享访问签名(SAS)令牌进行认证。该功能简化了向 TiDB Cloud Serverless 的数据迁移。 - 更多信息,请参见[从 Amazon S3、GCS 或 Azure Blob Storage 导入 CSV 文件到 TiDB Cloud Serverless](/tidb-cloud/import-csv-files-serverless.md)和[从 Amazon S3、GCS 或 Azure Blob Storage 导入 Apache Parquet 文件到 TiDB Cloud Serverless](/tidb-cloud/import-parquet-files-serverless.md)。 + 了解更多信息,请参见 [Import CSV Files from Amazon S3, GCS, or Azure Blob Storage into TiDB Cloud Serverless](/tidb-cloud/import-csv-files-serverless.md) 和 [Import Apache Parquet Files from Amazon S3, GCS, or Azure Blob Storage into TiDB Cloud Serverless](/tidb-cloud/import-parquet-files-serverless.md)。 ## 2025 年 1 月 21 日 **控制台变更** -- 支持每个任务将单个本地 CSV 文件(最大 250 MiB)导入到 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群,从之前的 50 MiB 限制提高。 +- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群现已支持单次任务导入本地 CSV 文件最大 250 MiB(此前为 50 MiB)。 - 更多信息,请参见[将本地文件导入到 TiDB Cloud](/tidb-cloud/tidb-cloud-import-local-files.md)。 + 了解更多信息,请参见 [Import Local Files to TiDB Cloud](/tidb-cloud/tidb-cloud-import-local-files.md)。 ## 2025 年 1 月 14 日 -**一般变更** +**通用变更** -- 支持 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的新 AWS 区域:`雅加达 (ap-southeast-3)`。 +- [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群新增支持 AWS 区域:`Jakarta (ap-southeast-3)`。 -- 引入通知功能,使你能够通过 [TiDB Cloud 控制台](https://tidbcloud.com/)即时了解 TiDB Cloud 更新和告警。 +- 推出 Notification 功能,使你可通过 [TiDB Cloud 控制台](https://tidbcloud.com/) 实时获取 TiDB Cloud 更新和告警。 - 更多信息,请参见[通知](/tidb-cloud/notifications.md)。 + 了解更多信息,请参见 [Notifications](/tidb-cloud/notifications.md)。 ## 2025 年 1 月 2 日 -**一般变更** +**通用变更** -- 支持为 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群创建 TiDB 节点组,以增强资源管理灵活性。 +- 支持为 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群创建 TiDB 节点组,提升资源管理灵活性。 - 更多信息,请参见 [TiDB 节点组概述](/tidb-cloud/tidb-node-group-overview.md)。 + 了解更多信息,请参见 [Overview of TiDB Node Group](/tidb-cloud/tidb-node-group-overview.md)。 -- 支持通过私有连接(beta)将 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群连接到 AWS 和 Google Cloud 中的通用 Kafka。 +- 支持通过 Private Connect(beta)将 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群连接到 AWS 和 Google Cloud 上的通用 Kafka。 - 私有连接利用云提供商的 Private Link 或 Private Service Connect 技术,使 TiDB Cloud VPC 中的 changefeed 能够使用私有 IP 地址连接到客户 VPC 中的 Kafka,就像这些 Kafka 直接托管在 TiDB Cloud VPC 中一样。此功能有助于防止 VPC CIDR 冲突并满足安全合规要求。 + Private Connect 利用云厂商的 Private Link 或 Private Service Connect 技术,使 TiDB Cloud VPC 内的 changefeed 能通过私有 IP 连接到客户 VPC 内的 Kafka,就像这些 Kafka 直接托管在 TiDB Cloud VPC 内一样。该功能有助于避免 VPC CIDR 冲突并满足安全合规要求。 - - 对于 AWS 中的 Apache Kafka,请按照[在 AWS 中设置自托管 Kafka Private Link 服务](/tidb-cloud/setup-aws-self-hosted-kafka-private-link-service.md)中的说明配置网络连接。 + - 对于 AWS 上的 Apache Kafka,请参见 [Set Up Self-Hosted Kafka Private Link Service in AWS](/tidb-cloud/setup-aws-self-hosted-kafka-private-link-service.md) 配置网络连接。 - - 对于 Google Cloud 中的 Apache Kafka,请按照[在 Google Cloud 中设置自托管 Kafka Private Service Connect](/tidb-cloud/setup-self-hosted-kafka-private-service-connect.md)中的说明配置网络连接。 + - 对于 Google Cloud 上的 Apache Kafka,请参见 [Set Up Self-Hosted Kafka Private Service Connect in Google Cloud](/tidb-cloud/setup-self-hosted-kafka-private-service-connect.md) 配置网络连接。 - 请注意,使用此功能会产生额外的[私有数据链路成本](/tidb-cloud/tidb-cloud-billing-ticdc-rcu.md#private-data-link-cost)。 + 注意,使用该功能会产生额外的 [Private Data Link costs](/tidb-cloud/tidb-cloud-billing-ticdc-rcu.md#private-data-link-cost)。 - 更多信息,请参见[导出到 Apache Kafka](/tidb-cloud/changefeed-sink-to-apache-kafka.md#network)。 + 了解更多信息,请参见 [Changefeed Sink to Apache Kafka](/tidb-cloud/changefeed-sink-to-apache-kafka.md#network)。 -- 为 Kafka changefeed 引入额外的可配置选项: +- Kafka changefeed 新增可配置选项: - - 支持使用 Debezium 协议。Debezium 是一个用于捕获数据库变更的工具。它将每个捕获的数据库变更转换为称为事件的消息,并将这些事件发送到 Kafka。更多信息,请参见 [TiCDC Debezium 协议](https://docs.pingcap.com/tidb/v8.1/ticdc-debezium)。 + - 支持使用 Debezium 协议。Debezium 是一种数据库变更捕获工具,会将每次捕获的数据库变更转换为事件消息并发送到 Kafka。更多信息请参见 [TiCDC Debezium Protocol](https://docs.pingcap.com/tidb/v8.1/ticdc-debezium)。 - - 支持为所有表定义单个分区调度器,或为不同表定义不同的分区调度器。 + - 支持为所有表定义单一分区分发器,或为不同表定义不同分区分发器。 - - 为 Kafka 消息的分区分配引入两种新的调度器类型:时间戳和列值。 + - 新增两种分区分发类型:按时间戳和按列值分发。 - 更多信息,请参见[导出到 Apache Kafka](/tidb-cloud/changefeed-sink-to-apache-kafka.md)。 + 了解更多信息,请参见 [Sink to Apache Kafka](/tidb-cloud/changefeed-sink-to-apache-kafka.md)。 -- 增强 TiDB Cloud 中的角色: +- TiDB Cloud 角色增强: - - 引入 `Project Viewer` 和 `Organization Billing Viewer` 角色,以增强 TiDB Cloud 上的细粒度访问控制。 + - 新增 `Project Viewer` 和 `Organization Billing Viewer` 角色,提升 TiDB Cloud 的细粒度访问控制。 - 重命名以下角色: @@ -278,28 +369,28 @@ aliases: ['/tidbcloud/supported-tidb-versions','/tidbcloud/release-notes'] - `Organization Billing Admin` 改为 `Organization Billing Manager` - `Organization Console Audit Admin` 改为 `Organization Console Audit Manager` - 更多信息,请参见[身份访问管理](/tidb-cloud/manage-user-access.md#organization-roles)。 + 了解更多信息,请参见 [Identity Access Management](/tidb-cloud/manage-user-access.md#organization-roles)。 -- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群的区域高可用性(beta)。 +- [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群支持区域高可用(beta)。 - 此功能专为需要最大基础设施冗余和业务连续性的工作负载而设计。主要功能包括: + 该功能适用于对基础设施冗余和业务连续性有极高要求的工作负载。主要功能包括: - - 节点分布在多个可用区,以确保在区域故障时的高可用性。 - - 关键的 OLTP(在线事务处理)组件,如 PD 和 TiKV,在可用区之间复制以实现冗余。 - - 自动故障转移最大限度地减少主要区域故障期间的服务中断。 + - 节点分布在多个可用区,确保单区故障时的高可用性。 + - 关键 OLTP 组件(如 PD 和 TiKV)在可用区间冗余复制。 + - 主可用区故障时自动故障转移,最小化服务中断。 - 此功能目前仅在 AWS 东京(ap-northeast-1)区域可用,且只能在集群创建时启用。 + 该功能目前仅在 AWS 东京(ap-northeast-1)区域开放,并且只能在集群创建时启用。 - 更多信息,请参见 [TiDB Cloud Serverless 中的高可用性](/tidb-cloud/serverless-high-availability.md)。 + 了解更多信息,请参见 [High Availability in TiDB Cloud Serverless](/tidb-cloud/serverless-high-availability.md)。 -- 将新 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本从 [v8.1.1](https://docs.pingcap.com/tidb/v8.1/release-8.1.1) 升级到 [v8.1.2](https://docs.pingcap.com/tidb/v8.1/release-8.1.2)。 +- 新建 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群的默认 TiDB 版本由 [v8.1.1](https://docs.pingcap.com/tidb/v8.1/release-8.1.1) 升级至 [v8.1.2](https://docs.pingcap.com/tidb/v8.1/release-8.1.2)。 **控制台变更** -- 加强数据导出服务: +- 数据导出服务增强: - - 支持通过 [TiDB Cloud 控制台](https://tidbcloud.com/)将数据从 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 导出到 Google Cloud Storage 和 Azure Blob Storage。 + - 支持通过 [TiDB Cloud 控制台](https://tidbcloud.com/) 将 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 数据导出到 Google Cloud Storage 和 Azure Blob Storage。 - - 支持通过 [TiDB Cloud 控制台](https://tidbcloud.com/)以 Parquet 文件格式导出数据。 + - 支持通过 [TiDB Cloud 控制台](https://tidbcloud.com/) 导出 Parquet 格式文件。 - 更多信息,请参见[从 TiDB Cloud Serverless 导出数据](/tidb-cloud/serverless-export.md)和[为 TiDB Cloud Serverless 配置外部存储访问](/tidb-cloud/serverless-external-storage.md)。 + 了解更多信息,请参见 [Export Data from TiDB Cloud Serverless](/tidb-cloud/serverless-export.md) 和 [Configure External Storage Access for TiDB Cloud Serverless](/tidb-cloud/serverless-external-storage.md)。 diff --git a/tidb-cloud/tidb-node-group-management.md b/tidb-cloud/tidb-node-group-management.md index 11f0ad326f19b..9babb6d2573e2 100644 --- a/tidb-cloud/tidb-node-group-management.md +++ b/tidb-cloud/tidb-node-group-management.md @@ -1,160 +1,160 @@ --- title: 管理 TiDB 节点组 -summary: 了解如何管理 TiDB 节点组及其端点以隔离业务工作负载。 +summary: 了解如何管理 TiDB 节点组及其端点,以实现业务负载隔离。 --- # 管理 TiDB 节点组 -本文介绍如何使用 [TiDB Cloud 控制台](https://tidbcloud.com/)管理 TiDB 节点组及其端点,以隔离业务工作负载。 +本文档介绍如何通过 [TiDB Cloud 控制台](https://tidbcloud.com/) 管理 TiDB 节点组及其端点,以实现业务负载隔离。 -> **注意**: +> **Note**: > -> TiDB 节点组功能**不适用于** TiDB Cloud Serverless 集群。 +> TiDB 节点组功能 **不适用于** TiDB Cloud Serverless 集群。 ## 术语 -- TiDB 节点组:TiDB 节点组管理 TiDB 节点的分组,并维护端点和 TiDB 节点之间的映射关系。 +- TiDB 节点组:TiDB 节点组用于管理 TiDB 节点的分组,并维护端点与 TiDB 节点之间的映射关系。 - 每个 TiDB 节点组都有一个唯一的端点。 - - 当你删除 TiDB 节点组时,相关的网络设置(如私有链接和 IP 访问列表)也会被删除。 + - 当你删除一个 TiDB 节点组时,相关的网络设置(如私有链路和 IP 访问列表)也会被删除。 -- 默认组:创建集群时会创建一个默认的 TiDB 节点组。因此,每个集群都有一个默认组。默认组不能被删除。 +- 默认组:当集群创建时,会自动创建一个默认的 TiDB 节点组。因此,每个集群都有一个默认组。默认组无法被删除。 ## 前提条件 -- 你已经在 AWS 或 Google Cloud 上部署了一个 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群。 -- 你在组织中担任**组织所有者**或**项目所有者**角色。更多信息,请参见[用户角色](/tidb-cloud/manage-user-access.md#user-roles)。 +- 你已经在 AWS 或 Google Cloud 上部署了 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群。 +- 你拥有组织的 **Organization Owner** 或 **Project Owner** 角色。更多信息,参见 [用户角色](/tidb-cloud/manage-user-access.md#user-roles)。 -> **注意**: +> **Note**: > -> 在创建集群时无法创建 TiDB 节点组。你需要在集群创建完成并处于**可用**状态后添加节点组。 +> TiDB 节点组无法在集群创建时直接创建。你需要在集群创建完成并处于 **Available** 状态后,再添加节点组。 ## 创建 TiDB 节点组 要创建 TiDB 节点组,请执行以下步骤: -1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,导航到项目的[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 -2. 在左侧导航栏中,点击**节点**。 -3. 点击右上角的**修改**。此时会显示**修改集群**页面。 -4. 在**修改集群**页面上,点击 **+** 添加新的 TiDB 节点组,如下所示。你也可以直接使用默认组。 +1. 在 [TiDB Cloud 控制台](https://tidbcloud.com/)中,进入你项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群名称进入其概览页面。 +2. 在左侧导航栏点击 **Nodes**。 +3. 点击右上角的 **Modify**。此时会显示 **Modify Cluster** 页面。 +4. 在 **Modify Cluster** 页面,点击 **+** 以添加新的 TiDB 节点组。你也可以直接使用默认组。 - TiDB - - **vCPU + RAM**:选择你需要的 [TiDB 规格](/tidb-cloud/size-your-cluster.md#size-tidb)。仅支持 8 vCPU 和 16 GiB 内存或更高规格的 TiDB 节点。 - - **节点组**:点击 **+** 创建新的 TiDB 节点组。你也可以使用默认组,并在 **DefaultGroup** 字段中输入 TiDB 节点数量。 + - **vCPU + RAM**:选择你需要的 [TiDB 规格](/tidb-cloud/size-your-cluster.md#size-tidb)。仅支持 8 vCPU 16 GiB 内存及以上规格的 TiDB 节点。 + - **Node Groups**:点击 **+** 创建新的 TiDB 节点组。你也可以直接使用默认组,并在 **DefaultGroup** 字段中填写 TiDB 节点数量。 - TiKV - **vCPU + RAM**:选择你需要的 [TiKV 规格](/tidb-cloud/size-your-cluster.md#size-tikv)。 - - **存储 x 节点**:选择存储大小和 TiKV 节点数量。 + - **Storage x Nodes**:选择存储容量和 TiKV 节点数量。 - TiFlash(可选) - **vCPU + RAM**:选择你需要的 [TiFlash 规格](/tidb-cloud/size-your-cluster.md#size-tiflash)。 - - **存储 x 节点**:选择存储大小和 TiFlash 节点数量。 + - **Storage x Nodes**:选择存储容量和 TiFlash 节点数量。 - ![创建 TiDB 节点组](/media/tidb-cloud/tidb-node-group-create.png) + ![Create TiDB Node Group](/media/tidb-cloud/tidb-node-group-create.png) -5. 新的 TiDB 节点会随新的 TiDB 节点组一起添加,这会影响集群的计费。在右侧窗格中查看集群大小,然后点击**确认**。 +5. 新的 TiDB 节点会随着新的 TiDB 节点组一起添加,这会影响集群的计费。请在右侧面板确认集群规模后,点击 **Confirm**。 -默认情况下,你最多可以为 TiDB Cloud Dedicated 集群创建五个 TiDB 节点组。如果你需要更多节点组,请联系 [TiDB Cloud 支持团队](/tidb-cloud/tidb-cloud-support.md)。 +默认情况下,你最多可以为一个 TiDB Cloud Dedicated 集群创建 5 个 TiDB 节点组。如果需要更多节点组,请联系 [TiDB Cloud Support](/tidb-cloud/tidb-cloud-support.md)。 -如果你创建了 TiDB 节点组但仍使用默认组的端点连接集群,TiDB 节点组中的 TiDB 节点将不会承担任何工作负载,这会浪费资源。你需要创建新的连接来连接新 TiDB 节点组中的 TiDB 节点。请参见[连接到 TiDB 节点组](#连接到-tidb-节点组)。 +如果你创建了 TiDB 节点组,但仍然使用默认组的端点连接集群,则该 TiDB 节点组中的节点不会承担任何负载,造成资源浪费。你需要为新建的 TiDB 节点组创建新的连接。参见 [连接到 TiDB 节点组](#connect-to-a-tidb-node-group)。 ## 连接到 TiDB 节点组 -### 通过公共连接连接 +### 通过公网连接 -新 TiDB 节点组的公共连接默认是禁用的。你需要先启用它。 +新建的 TiDB 节点组默认关闭公网连接。你需要先启用它。 -要启用公共连接,请执行以下操作: +启用公网连接,请执行以下操作: -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 -2. 在右上角点击**连接**。此时会显示连接对话框。 -3. 从 **TiDB 节点组**列表中选择你的 TiDB 节点组,从**连接类型**列表中选择**公共**。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群名称进入其概览页面。 +2. 在右上角点击 **Connect**,弹出连接对话框。 +3. 在 **TiDB Node Group** 列表中选择你的 TiDB 节点组,在 **Connection Type** 列表中选择 **Public**。 - 如果你尚未配置 IP 访问列表,请点击**配置 IP 访问列表**或按照[配置 IP 访问列表](https://docs.pingcap.com/tidbcloud/configure-ip-access-list)中的步骤进行配置,然后再进行首次连接。 + 如果你尚未配置 IP 访问列表,请点击 **Configure IP Access List**,或按照 [配置 IP 访问列表](https://docs.pingcap.com/tidbcloud/configure-ip-access-list) 的步骤进行首次连接前的配置。 -4. 在左侧导航栏中,点击**设置** > **网络**。 -5. 在**网络**页面上,从右上角的 **TiDB 节点组**列表中选择你的 TiDB 节点组。 -6. 在**公共端点**部分点击**启用**,然后在 **IP 访问列表**部分点击**添加 IP 地址**。 -7. 在**网络**页面的右上角点击**连接**以获取连接字符串。 +4. 在左侧导航栏点击 **Settings** > **Networking**。 +5. 在 **Networking** 页面右上角的 **TiDB Node Group** 列表中选择你的 TiDB 节点组。 +6. 在 **Public Endpoint** 区域点击 **Enable**,然后在 **IP Access List** 区域点击 **Add IP Address**。 +7. 在 **Networking** 页面右上角点击 **Connect** 获取连接串。 -![通过公共端点连接到新的 TiDB 节点组](/media/tidb-cloud/tidb-node-group-connect-public-endpoint.png) +![Connect to the new TiDB node group via Public Endpoint](/media/tidb-cloud/tidb-node-group-connect-public-endpoint.png) -更多信息,请参见[通过公共连接连接到 TiDB Cloud Dedicated](/tidb-cloud/connect-via-standard-connection.md)。 +更多信息,参见 [通过公网连接到 TiDB Cloud Dedicated](/tidb-cloud/connect-via-standard-connection.md)。 ### 通过私有端点连接 -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 -2. 在右上角点击**连接**。此时会显示连接对话框。 -3. 从 **TiDB 节点组**列表中选择你的 TiDB 节点组,从**连接类型**列表中选择**私有端点**。 -4. 在左侧导航栏中,点击**设置** > **网络**。 -5. 在**网络**页面上,从右上角的 **TiDB 节点组**列表中选择你的 TiDB 节点组。 -6. 点击**创建私有端点连接**为此节点组创建新连接。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群名称进入其概览页面。 +2. 在右上角点击 **Connect**,弹出连接对话框。 +3. 在 **TiDB Node Group** 列表中选择你的 TiDB 节点组,在 **Connection Type** 列表中选择 **Private Endpoint**。 +4. 在左侧导航栏点击 **Settings** > **Networking**。 +5. 在 **Networking** 页面右上角的 **TiDB Node Group** 列表中选择你的 TiDB 节点组。 +6. 点击 **Create Private Endpoint Connection**,为该节点组创建新的私有端点连接。 - - 对于部署在 AWS 上的集群,请参考[通过 AWS PrivateLink 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections.md)。 - - 对于部署在 Google Cloud 上的集群,请参考[通过 Google Cloud Private Service Connect 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md)。 + - 如果集群部署在 AWS,请参考 [通过 AWS PrivateLink 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections.md)。 + - 如果集群部署在 Google Cloud,请参考 [通过 Google Cloud Private Service Connect 连接到 TiDB Cloud Dedicated 集群](/tidb-cloud/set-up-private-endpoint-connections-on-google-cloud.md)。 - > **注意**: + > **Note**: > - > 如果你使用 Private Link 连接不同的节点组,你需要为每个节点组创建单独的私有端点连接。 + > 如果你使用 Private Link 连接不同的节点组,需要为每个节点组分别创建私有端点连接。 -7. 创建私有端点连接后,点击页面右上角的**连接**以获取连接字符串。 +7. 创建私有端点连接后,点击页面右上角的 **Connect** 获取连接串。 -### 通过 VPC 对等连接连接 +### 通过 VPC Peering 连接 -由于所有 TiDB 节点组共享集群的同一个 VPC,你只需创建一个 VPC 对等连接即可启用所有组的访问。 +由于所有 TiDB 节点组与集群共享同一个 VPC,你只需为该集群创建一个 VPC Peering 连接,即可为所有节点组开启访问。 -1. 按照[通过 VPC 对等连接连接到 TiDB Cloud Dedicated](/tidb-cloud/set-up-vpc-peering-connections.md)中的说明为此集群创建 VPC 对等连接。 -2. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 -3. 在左侧导航栏中,点击**设置** > **网络**。 -4. 在**网络**页面的右上角点击**连接**以获取连接字符串。 +1. 按照 [通过 VPC Peering 连接到 TiDB Cloud Dedicated](/tidb-cloud/set-up-vpc-peering-connections.md) 的说明为该集群创建 VPC Peering。 +2. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群名称进入其概览页面。 +3. 在左侧导航栏点击 **Settings** > **Networking**。 +4. 在 **Networking** 页面右上角点击 **Connect** 获取连接串。 ## 查看 TiDB 节点组 要查看 TiDB 节点组的详细信息,请执行以下步骤: -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 -2. 在左侧导航栏中,点击**节点**以查看 TiDB 节点组列表。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群名称进入其概览页面。 +2. 在左侧导航栏点击 **Nodes**,即可查看 TiDB 节点组列表。 - 要切换到表格视图,请点击 。 + 若需切换为表格视图,请点击 。 ## 修改 TiDB 节点组 -你可以修改组名和组中的节点配置。 +你可以修改组名以及组内节点的配置。 -### 更改组名 +### 修改组名 -要更改组名,请执行以下步骤: +要修改组名,请执行以下步骤: -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 -2. 在左侧导航栏中,点击**节点**。 -3. 点击 并为 TiDB 节点组输入新名称。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群名称进入其概览页面。 +2. 在左侧导航栏点击 **Nodes**。 +3. 点击 ,并为 TiDB 节点组输入新名称。 ### 更新节点配置 -要更新组中的 TiDB、TiKV 或 TiFlash 节点配置,请执行以下步骤: +要更新组内 TiDB、TiKV 或 TiFlash 节点的配置,请执行以下步骤: -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 -2. 在左侧导航栏中,点击**节点**。 -3. 在**节点地图**页面上,点击右上角的**修改**。此时会显示**修改集群**页面。 -4. 在**修改集群**页面上,你可以: +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群名称进入其概览页面。 +2. 在左侧导航栏点击 **Nodes**。 +3. 在 **Node Map** 页面,点击右上角的 **Modify**,进入 **Modify Cluster** 页面。 +4. 在 **Modify Cluster** 页面,你可以: - - 更改 TiDB 节点数量。 + - 修改 TiDB 节点数量。 - 添加新的节点组。 - - 更新 TiKV 和 TiFlash 节点的规格和**存储 x 节点**配置。 + - 更新 TiKV 和 TiFlash 节点的规格及 **Storage x Nodes** 配置。 -![更改 TiDB 节点组节点数量](/media/tidb-cloud/tidb-node-group-change-node-count.png) +![Change TiDB node group node count](/media/tidb-cloud/tidb-node-group-change-node-count.png) ## 删除 TiDB 节点组 -> **注意**: +> **Note**: > -> 当你删除 TiDB 节点组时,其节点和网络配置也会被删除,包括私有端点连接和用于公共访问的 IP 列表。 +> 当你删除 TiDB 节点组时,其节点和网络配置也会被一并移除,包括私有端点连接和公网访问的 IP 列表。 要删除 TiDB 节点组,请执行以下步骤: -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 -2. 在左侧导航栏中,点击**节点**。 -3. 在**节点地图**页面上,点击右上角的**修改**。此时会显示**修改集群**页面。 -4. 在**修改集群**页面上,点击 删除 TiDB 节点组。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,然后点击目标集群名称进入其概览页面。 +2. 在左侧导航栏点击 **Nodes**。 +3. 在 **Node Map** 页面,点击右上角的 **Modify**,进入 **Modify Cluster** 页面。 +4. 在 **Modify Cluster** 页面,点击 删除 TiDB 节点组。 -![删除 TiDB 节点组](/media/tidb-cloud/tidb-node-group-delete.png) +![Delete the TiDB node group](/media/tidb-cloud/tidb-node-group-delete.png) \ No newline at end of file diff --git a/tidb-cloud/tidb-node-group-overview.md b/tidb-cloud/tidb-node-group-overview.md index c4ef789e69167..ea9429e980f72 100644 --- a/tidb-cloud/tidb-node-group-overview.md +++ b/tidb-cloud/tidb-node-group-overview.md @@ -1,61 +1,61 @@ --- -title: TiDB 节点组概览 -summary: 了解 TiDB 节点组功能的实现和使用场景。 +title: TiDB 节点组概述 +summary: 了解 TiDB 节点组功能的实现方式及使用场景。 --- -# TiDB 节点组概览 +# TiDB 节点组概述 -你可以为 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群创建 TiDB 节点组。TiDB 节点组在物理上对集群的计算节点(TiDB 层)进行分组,每个组包含特定数量的 TiDB 节点。这种配置提供了组之间计算资源的物理隔离,使多业务场景下的资源分配更加高效。 +你可以为 [TiDB Cloud 专属集群](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated)创建 TiDB 节点组。TiDB 节点组会在物理层面将集群的计算节点(TiDB 层)进行分组,每个组包含特定数量的 TiDB 节点。该配置为各组之间的计算资源提供物理隔离,从而在多业务场景下实现高效的资源分配。 -通过 TiDB 节点组,你可以根据业务需求将计算节点划分为多个 TiDB 节点组,并为每个 TiDB 节点组配置唯一的连接端点。你的应用程序通过各自的端点连接到集群,请求会路由到相应的节点组进行处理。这确保了一个组中的资源过度使用不会影响其他组。 +通过 TiDB 节点组,你可以根据业务需求将计算节点划分为多个 TiDB 节点组,并为每个 TiDB 节点组配置独立的连接端点。你的应用程序通过各自的端点连接到集群,请求会被路由到对应的节点组进行处理。这样可以确保某一组资源过度使用时不会影响其他组。 -> **注意**: +> **Note**: > -> TiDB 节点组功能**不适用于** TiDB Cloud Serverless 集群。 +> TiDB 节点组功能 **不** 支持 TiDB Cloud Serverless 集群。 -## 实现原理 +## 实现方式 -TiDB 节点组管理 TiDB 节点的分组,并维护端点与其对应 TiDB 节点之间的映射关系。 +TiDB 节点组负责管理 TiDB 节点的分组,并维护端点与其对应 TiDB 节点之间的映射关系。 -每个 TiDB 节点组都关联一个专用的负载均衡器。当用户向 TiDB 节点组的端点发送 SQL 请求时,请求首先通过该组的负载均衡器,然后仅路由到该组内的 TiDB 节点。 +每个 TiDB 节点组都关联有一个专用的负载均衡器。当用户将 SQL 请求发送到某个 TiDB 节点组的端点时,请求会首先经过该组的负载均衡器,然后被专门路由到该组内的 TiDB 节点。 -下图说明了 TiDB 节点组功能的实现原理。 +下图展示了 TiDB 节点组功能的实现方式。 -![TiDB 节点组功能的实现原理](/media/tidb-cloud/implementation-of-tidb-node-group.png) +![The implementation of the TiDB Node Group feature](/media/tidb-cloud/implementation-of-tidb-node-group.png) -TiDB 节点组中的所有节点都响应来自相应端点的请求。你可以执行以下任务: +TiDB 节点组中的所有节点都会响应来自对应端点的请求。你可以执行以下操作: - 创建 TiDB 节点组并为其分配 TiDB 节点。 -- 为每个组设置连接端点。支持的连接类型包括[公共连接](/tidb-cloud/tidb-node-group-management.md#connect-via-public-connection)、[私有端点](/tidb-cloud/tidb-node-group-management.md#connect-via-private-endpoint)和 [VPC 对等连接](/tidb-cloud/tidb-node-group-management.md#connect-via-vpc-peering)。 -- 通过使用不同的端点将应用程序路由到特定组,实现资源隔离。 +- 为每个组设置连接端点。支持的连接类型包括 [公网连接](/tidb-cloud/tidb-node-group-management.md#connect-via-public-connection)、[私有端点](/tidb-cloud/tidb-node-group-management.md#connect-via-private-endpoint) 和 [VPC Peering](/tidb-cloud/tidb-node-group-management.md#connect-via-vpc-peering)。 +- 通过不同的端点将应用程序路由到指定的节点组,实现资源隔离。 ## 使用场景 -TiDB 节点组功能显著增强了 TiDB Cloud Dedicated 集群的资源分配能力。TiDB 节点专门用于计算,不存储数据。通过将节点组织成多个物理组,该功能确保一个组中的资源过度使用不会影响其他组。 +TiDB 节点组功能大幅提升了 TiDB Cloud 专属集群的资源分配能力。TiDB 节点专注于计算,不存储数据。通过将节点划分为多个物理组,该功能确保某一组资源过度使用时不会影响其他组。 -使用此功能,你可以: +借助该功能,你可以: -- 将来自不同系统的多个应用程序整合到一个 TiDB Cloud Dedicated 集群中。随着应用程序工作负载的增长,它不会影响其他应用程序的正常运行。TiDB 节点组功能确保事务应用程序的响应时间不会受到数据分析或批处理应用程序的影响。 +- 将来自不同系统的多个应用整合到同一个 TiDB Cloud 专属集群中。即使某个应用的负载增加,也不会影响其他应用的正常运行。TiDB 节点组功能确保事务型应用的响应时间不会受到数据分析或批量应用的影响。 -- 在 TiDB Cloud Dedicated 集群上执行导入或 DDL 任务,而不影响现有生产工作负载的性能。你可以为导入或 DDL 任务创建一个单独的 TiDB 节点组。即使这些任务消耗大量 CPU 或内存资源,它们也只使用自己 TiDB 节点组中的资源,确保其他 TiDB 节点组中的工作负载不受影响。 +- 在 TiDB Cloud 专属集群上执行导入或 DDL 任务,而不会影响现有生产业务的性能。你可以为导入或 DDL 任务单独创建一个 TiDB 节点组。即使这些任务消耗大量 CPU 或内存资源,也只会占用其所属 TiDB 节点组的资源,确保其他 TiDB 节点组的业务不受影响。 -- 将所有测试环境合并到一个 TiDB 集群中,或将资源密集型批处理任务组合到一个专用的 TiDB 节点组中。这种方法提高了硬件利用率,降低了运营成本,并确保关键应用程序始终能够访问必要的资源。 +- 将所有测试环境整合到一个 TiDB 集群中,或将资源消耗较大的批量任务分配到专用的 TiDB 节点组。这样可以提升硬件利用率,降低运维成本,并确保关键应用始终能够获得所需资源。 -此外,TiDB 节点组易于扩容或缩容。对于具有高性能要求的关键应用程序,你可以根据需要为该组分配 TiDB 节点。对于要求较低的应用程序,你可以从少量 TiDB 节点开始,并根据需要进行扩容。高效使用 TiDB 节点组功能可以减少集群数量,简化运维,并降低管理成本。 +此外,TiDB 节点组易于扩缩容。对于高性能需求的关键应用,你可以按需为其分配 TiDB 节点。对于资源需求较低的应用,可以从较少的 TiDB 节点起步,按需扩容。高效利用 TiDB 节点组功能可以减少集群数量,简化运维,降低管理成本。 -## 限制和配额 +## 限制与配额 -目前,TiDB 节点组功能是免费的。以下是限制和配额: +目前,TiDB 节点组功能免费。具体限制与配额如下: -- 你只能为 AWS 或 Google Cloud 上的 TiDB Cloud Dedicated 集群创建 TiDB 节点组。对其他云提供商的支持计划在不久的将来推出。 -- 具有 4 个 vCPU 和 16 GiB 内存的 TiDB 集群不支持 TiDB 节点组功能。 -- 默认情况下,你最多可以为一个 TiDB Cloud Dedicated 集群创建五个 TiDB 节点组。如果你需要更多组,请联系 [TiDB Cloud 支持团队](/tidb-cloud/tidb-cloud-support.md)。 -- 每个 TiDB 节点组必须至少包含一个 TiDB 节点。虽然一个组中的节点数量没有限制,但 TiDB Cloud Dedicated 集群中的 TiDB 节点总数不得超过 150 个。 -- TiDB Cloud 在 TiDB owner 节点上运行自动统计信息收集任务,不考虑节点组边界。这些任务无法在单个 TiDB 节点组内隔离。 -- 对于早于 v8.1.2 版本的 TiDB 集群,`ADD INDEX` 任务无法在单个 TiDB 节点组内隔离。 +- 你只能为部署在 AWS 或 Google Cloud 上的 TiDB Cloud 专属集群创建 TiDB 节点组。对其他云服务商的支持将在近期推出。 +- 配置为 4 vCPU 和 16 GiB 内存的 TiDB 集群不支持 TiDB 节点组功能。 +- 默认情况下,你最多可以为一个 TiDB Cloud 专属集群创建 5 个 TiDB 节点组。如需更多节点组,请联系 [TiDB Cloud Support](/tidb-cloud/tidb-cloud-support.md)。 +- 每个 TiDB 节点组至少包含 1 个 TiDB 节点。虽然单个组内的节点数量没有限制,但整个 TiDB Cloud 专属集群中的 TiDB 节点总数不得超过 150。 +- TiDB Cloud 会在 TiDB owner 节点上自动运行统计信息收集任务,该任务不受节点组边界影响,无法在单独的 TiDB 节点组内隔离。 +- 对于 v8.1.2 之前版本的 TiDB 集群,`ADD INDEX` 任务无法在单独的 TiDB 节点组内隔离。 ## SLA 影响 -根据 TiDB Cloud [服务级别协议 (SLA)](https://www.pingcap.com/legal/service-level-agreement-for-tidb-cloud-services/),具有多个 TiDB 节点部署的 TiDB Cloud Dedicated 集群的每月正常运行时间百分比可达到 99.99%。但是,在引入 TiDB 节点组后,如果你创建多个 TiDB 节点组,每个组只有 1 个 TiDB 节点,你将失去这些组的高可用性,你的集群的每月正常运行时间百分比将降级为单个 TiDB 节点部署模式(即最高 99.9%)。 +根据 TiDB Cloud [服务等级协议 (SLA)](https://www.pingcap.com/legal/service-level-agreement-for-tidb-cloud-services/),多 TiDB 节点部署的 TiDB Cloud 专属集群的月度可用性最高可达 99.99%。但在引入 TiDB 节点组后,如果你为每个 TiDB 节点组仅分配 1 个 TiDB 节点,则会失去各组的高可用性,集群的月度可用性将降级为单 TiDB 节点部署模式(即最高 99.9%)。 -为了实现高可用性,建议为每个 TiDB 节点组配置至少两个 TiDB 节点。 +为保证高可用性,建议你为每个 TiDB 节点组至少配置 2 个 TiDB 节点。 \ No newline at end of file diff --git a/tidb-cloud/tune-performance.md b/tidb-cloud/tune-performance.md index 697786dd04b01..19cf91f34382a 100644 --- a/tidb-cloud/tune-performance.md +++ b/tidb-cloud/tune-performance.md @@ -1,90 +1,90 @@ --- -title: 分析和调优性能 -summary: 了解如何分析和调优 TiDB Cloud 集群的性能。 +title: 分析与调优性能 +summary: 了解如何分析和调优你的 TiDB Cloud 集群的性能。 --- -# 分析和调优性能 +# 分析与调优性能 -TiDB Cloud 提供[慢查询](#slow-query)、[SQL 语句分析](#statement-analysis)、[Key Visualizer](#key-visualizer) 和 [Index Insight (beta)](#index-insight-beta) 来分析性能。 +TiDB Cloud 提供了 [慢查询](#slow-query)、[语句分析](#statement-analysis)、[Key Visualizer](#key-visualizer) 和 [Index Insight (beta)](#index-insight-beta) 等功能用于性能分析。 -- 慢查询让你可以搜索和查看 TiDB 集群中的所有慢查询,并通过查看其执行计划、SQL 执行信息和其他详细信息来探索每个慢查询的瓶颈。 +- 慢查询允许你搜索和查看 TiDB 集群中的所有慢查询,并通过查看其执行计划、SQL 执行信息及其他细节,深入分析每条慢查询的瓶颈。 -- SQL 语句分析使你能够直接在页面上观察 SQL 执行情况,无需查询系统表即可轻松定位性能问题。 +- 语句分析使你可以直接在页面上观察 SQL 的执行情况,无需查询系统表即可轻松定位性能问题。 - Key Visualizer 帮助你观察 TiDB 的数据访问模式和数据热点。 -- Index Insight 为你提供有意义且可操作的索引建议。 +- Index Insight 为你提供有意义且可操作的索引推荐。 -> **注意:** +> **Note:** > -> 目前,[TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群不支持 **Key Visualizer** 和 **Index Insight (beta)**。 +> 目前,**Key Visualizer** 和 **Index Insight (beta)** 不支持 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群。 -## 查看诊断页面 +## 查看 Diagnosis 页面 -1. 在项目的 [**集群**](https://tidbcloud.com/project/clusters) 页面上,点击目标集群的名称以进入其概览页面。 +1. 在你的项目的 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群的名称,进入其概览页面。 - > **提示:** + > **Tip:** > - > 你可以使用左上角的组合框在组织、项目和集群之间切换。 + > 你可以使用左上角的下拉框在组织、项目和集群之间切换。 -2. 在左侧导航栏中,点击 **监控** > **诊断**。 +2. 在左侧导航栏,点击 **Monitoring** > **Diagnosis**。 ## 慢查询 -默认情况下,执行时间超过 300 毫秒的 SQL 查询被视为慢查询。 +默认情况下,执行时间超过 300 毫秒的 SQL 查询会被视为慢查询。 -要查看集群中的慢查询,请执行以下步骤: +要在集群中查看慢查询,请执行以下步骤: -1. 导航到集群的[**诊断**](#view-the-diagnosis-page)页面。 +1. 进入集群的 [**Diagnosis**](#view-the-diagnosis-page) 页面。 -2. 点击**慢查询**标签页。 +2. 点击 **Slow Query** 标签页。 -3. 点击列表中的任何慢查询以显示其详细执行信息。 +3. 点击列表中的任意慢查询,可以显示其详细的执行信息。 -4. (可选)你可以根据目标时间范围、相关数据库和 SQL 关键字过滤慢查询。你还可以限制要显示的慢查询数量。 +4. (可选)你可以根据目标时间范围、相关数据库和 SQL 关键字筛选慢查询。你还可以限制显示的慢查询数量。 -结果以表格形式显示,你可以按不同列对结果进行排序。 +结果以表格形式展示,你可以根据不同的列对结果进行排序。 -更多信息,请参阅 [TiDB Dashboard 中的慢查询](https://docs.pingcap.com/tidb/stable/dashboard-slow-query)。 +更多信息,参见 [TiDB Dashboard 中的慢查询](https://docs.pingcap.com/tidb/stable/dashboard-slow-query)。 -## SQL 语句分析 +## 语句分析 -要使用 SQL 语句分析,请执行以下步骤: +要使用语句分析功能,请执行以下步骤: -1. 导航到集群的[**诊断**](#view-the-diagnosis-page)页面。 +1. 进入集群的 [**Diagnosis**](#view-the-diagnosis-page) 页面。 -2. 点击 **SQL 语句**标签页。 +2. 点击 **SQL Statement** 标签页。 -3. 在时间间隔框中选择要分析的时间段。然后你可以获取该时间段内所有数据库的 SQL 语句执行统计信息。 +3. 在时间区间选择框中选择需要分析的时间段。此时你可以获得该时间段内所有数据库的 SQL 语句执行统计信息。 -4. (可选)如果你只关心某些数据库,可以在下一个框中选择相应的 schema 来过滤结果。 +4. (可选)如果你只关注某些数据库,可以在下一个选择框中选择对应的 schema 进行结果筛选。 -结果以表格形式显示,你可以按不同列对结果进行排序。 +结果以表格形式展示,你可以根据不同的列对结果进行排序。 -更多信息,请参阅 [TiDB Dashboard 中的 SQL 语句执行详情](https://docs.pingcap.com/tidb/stable/dashboard-statement-details)。 +更多信息,参见 [TiDB Dashboard 中的语句执行详情](https://docs.pingcap.com/tidb/stable/dashboard-statement-details)。 ## Key Visualizer -> **注意:** +> **Note:** > -> Key Visualizer 仅适用于 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群。 +> Key Visualizer 仅支持 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群。 -要查看键分析,请执行以下步骤: +要查看关键分析,请执行以下步骤: -1. 导航到集群的[**诊断**](#view-the-diagnosis-page)页面。 +1. 进入集群的 [**Diagnosis**](#view-the-diagnosis-page) 页面。 2. 点击 **Key Visualizer** 标签页。 -在 **Key Visualizer** 页面上,一个大型热力图显示了访问流量随时间的变化。热力图每个轴的平均值显示在下方和右侧。左侧是表名、索引名和其他信息。 +在 **Key Visualizer** 页面上,会显示一个大型热力图,展示访问流量随时间的变化。热力图每个轴的平均值分别显示在下方和右侧。左侧显示表名、索引名等信息。 -更多信息,请参阅 [Key Visualizer](https://docs.pingcap.com/tidb/stable/dashboard-key-visualizer)。 +更多信息,参见 [Key Visualizer](https://docs.pingcap.com/tidb/stable/dashboard-key-visualizer)。 ## Index Insight (beta) -TiDB Cloud 中的 Index Insight 功能通过为未有效利用索引的慢查询提供推荐索引,提供了强大的查询性能优化能力。 +TiDB Cloud 的 Index Insight 功能通过为未有效利用索引的慢查询提供推荐索引,帮助你优化查询性能。 -> **注意:** +> **Note:** > -> Index Insight 目前处于 beta 阶段,仅适用于 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群。 +> Index Insight 目前处于 beta 阶段,仅支持 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群。 -更多信息,请参阅 [Index Insight](/tidb-cloud/index-insight.md)。 +更多信息,参见 [Index Insight](/tidb-cloud/index-insight.md)。 \ No newline at end of file diff --git a/tidb-cloud/use-chat2query-knowledge.md b/tidb-cloud/use-chat2query-knowledge.md index 29130b17962d5..a12ec29d84edb 100644 --- a/tidb-cloud/use-chat2query-knowledge.md +++ b/tidb-cloud/use-chat2query-knowledge.md @@ -1,46 +1,46 @@ --- title: 使用知识库 -summary: 了解如何通过使用 Chat2Query 知识库 API 来改进 Chat2Query 的查询结果。 +summary: 了解如何通过使用 Chat2Query 知识库 API 提升 Chat2Query 的结果质量。 --- # 使用知识库 -知识库是一组结构化数据的集合,可用于增强 Chat2Query 的 SQL 生成能力。 +知识库是一组结构化数据,可用于增强 Chat2Query 的 SQL 生成能力。 -从 v3 版本开始,Chat2Query API 允许你通过调用 Chat2Query Data App 的知识库相关端点来添加或修改知识库。 +从 v3 版本开始,Chat2Query API 支持你通过调用 Chat2Query Data App 的知识库相关接口来添加或修改知识库。 -> **注意:** +> **Note:** > -> 知识库相关端点默认在 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群上可用。如需在 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群上使用知识库相关端点,请联系 [TiDB Cloud 支持团队](/tidb-cloud/tidb-cloud-support.md)。 +> 知识库相关接口在 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) 集群中默认可用。若要在 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) 集群中使用知识库相关接口,请联系 [TiDB Cloud support](/tidb-cloud/tidb-cloud-support.md)。 -## 开始之前 +## 开始前的准备 -在为数据库创建知识库之前,请确保你已经具备以下条件: +在为你的数据库创建知识库之前,请确保你已具备以下条件: - 一个 [Chat2Query Data App](/tidb-cloud/use-chat2query-api.md#create-a-chat2query-data-app) -- 一个 [Chat2Query Data App 的 API 密钥](/tidb-cloud/use-chat2query-api.md#create-an-api-key) +- 一个 [Chat2Query Data App 的 API key](/tidb-cloud/use-chat2query-api.md#create-an-api-key) -## 步骤 1. 为关联数据库创建知识库 +## 第 1 步:为已关联的数据库创建知识库 -> **注意:** +> **Note:** > -> Chat2Query 使用的知识是**按数据库维度进行组织的**。你可以将多个 Chat2Query Data App 连接到同一个数据库,但每个 Chat2Query Data App 只能使用其关联数据库的知识。 +> Chat2Query 使用的知识是**按照数据库维度进行结构化**的。你可以将多个 Chat2Query Data App 连接到同一个数据库,但每个 Chat2Query Data App 只能使用其所关联数据库的知识。 -在你的 Chat2Query Data App 中,你可以通过调用 `/v3/knowledgeBases` 端点为特定数据库创建知识库。创建完成后,你将获得一个用于后续知识管理的 `knowledge_base_id`。 +在你的 Chat2Query Data App 中,可以通过调用 `/v3/knowledgeBases` 接口为某个特定数据库创建知识库。创建完成后,你将获得一个 `knowledge_base_id`,用于后续的知识管理。 -以下是调用此端点的通用代码示例。 +以下是调用该接口的一般代码示例。 -> **提示:** +> **Tip:** > -> 要获取特定端点的代码示例,请在 Data App 左侧窗格中点击端点名称,然后点击 **Show Code Example**。更多信息,请参见[获取端点的示例代码](/tidb-cloud/use-chat2query-api.md#get-the-code-example-of-an-endpoint)。 +> 若要获取该接口的具体代码示例,请在 Data App 左侧面板点击接口名称,然后点击 **Show Code Example**。更多信息参见 [Get the example code of an endpoint](/tidb-cloud/use-chat2query-api.md#get-the-code-example-of-an-endpoint)。 ```bash curl --digest --user ${PUBLIC_KEY}:${PRIVATE_KEY} --request POST 'https://.data.tidbcloud.com/api/v1beta/app/chat2query-/endpoint/v3/knowledgeBases'\ --header 'content-type: application/json'\ --data-raw '{ - "cluster_id": "<数据库所属集群的 ID>", - "database": "<目标数据库的名称>", - "description": "<你的知识库描述>" + "cluster_id": "", + "database": "", + "description": "" }' ``` @@ -59,25 +59,25 @@ curl --digest --user ${PUBLIC_KEY}:${PRIVATE_KEY} --request POST 'https:// **注意:** +> **Note:** > -> 请确保新添加示例的准确性,因为示例质量会影响 Chat2Query 的学习效果。不良示例(如问题和答案不匹配)可能会降低 Chat2Query 在新任务上的表现。 +> 请确保新添加示例的准确性,因为示例的质量会影响 Chat2Query 的学习效果。低质量的示例(如问题与答案不匹配)会降低 Chat2Query 在新任务上的表现。 #### 知识结构 @@ -92,78 +92,78 @@ curl --digest --user ${PUBLIC_KEY}:${PRIVATE_KEY} --request POST 'https:// **注意:** +> **Note:** > -> 请确保新添加术语解释的准确性,因为解释质量会影响 Chat2Query 的学习效果。错误的解释不仅不会改善 Chat2Query 的结果,还可能导致负面影响。 +> 请确保新添加术语解释的准确性,因为解释的质量会影响 Chat2Query 的学习效果。错误的解释不仅无法提升 Chat2Query 的结果,还可能带来负面影响。 #### 知识结构 -每个解释包括单个术语或一组相似术语及其详细描述。 +每条解释包含一个术语或一组相似术语及其详细描述。 例如: ```json { "term": ["OSS"], - "description": "OSS Insight 是一个强大的工具,基于近 60 亿行 GitHub 事件数据为用户提供在线数据分析。" + "description": "OSS Insight is a powerful tool that provides online data analysis for users based on nearly 6 billion rows of GitHub event data." } ``` -#### 使用场景 +#### 适用场景 -术语表解释主要用于提高 Chat2Query 对用户查询的理解,特别是在以下情况下: +Term-sheet explanation 主要用于提升 Chat2Query 对用户查询的理解能力,尤其适用于以下情况: -- **处理行业特定术语或缩写**:当你的查询包含可能不被普遍认知的行业特定术语或缩写时,使用术语表解释可以帮助 Chat2Query 理解这些术语的含义和用法。 -- **处理用户查询中的歧义**:当你的查询包含令人困惑的模糊概念时,使用术语表解释可以帮助 Chat2Query 澄清这些歧义。 -- **处理具有多种含义的术语**:当你的查询包含在不同上下文中具有不同含义的术语时,使用术语表解释可以帮助 Chat2Query 辨别正确的解释。 +- **处理行业专有术语或缩写时**:当你的查询包含行业专有术语或缩写,且这些术语并非通用时,使用 term-sheet explanation 可以帮助 Chat2Query 理解其含义和用法。 +- **处理用户查询中的歧义时**:当你的查询包含容易引起混淆的概念时,使用 term-sheet explanation 可以帮助 Chat2Query 澄清这些歧义。 +- **处理多义词时**:当你的查询包含在不同语境下有不同含义的术语时,使用 term-sheet explanation 可以帮助 Chat2Query 判断正确的解释。 -### 指令 +### Instruction -指令是一段文本命令。它用于指导或控制 Chat2Query 的行为,特别是指导它如何根据特定要求或条件生成 SQL。 +Instruction 是一段文本指令,用于引导或控制 Chat2Query 的行为,明确告知其在特定需求或条件下如何生成 SQL。 -> **注意:** +> **Note:** > -> - 指令的长度限制为 512 个字符。 -> - 请确保提供尽可能清晰和具体的指令,以确保 Chat2Query 能够有效理解和执行指令。 +> - Instruction 的长度限制为 512 个字符。 +> - 请尽量提供清晰、具体的指令,以确保 Chat2Query 能够准确理解并执行。 #### 知识结构 -指令仅包含一段文本命令。 +Instruction 仅包含一段文本指令。 例如: ```json { - "instruction": "如果任务需要计算环比增长率,请在 SQL 中使用带有 OVER 子句的 LAG 函数" + "instruction": "If the task requires calculating the sequential growth rate, use the LAG function with the OVER clause in SQL" } ``` -#### 使用场景 +#### 适用场景 -指令可以在许多场景中用于指导 Chat2Query 按照你的要求输出,包括但不限于以下情况: +Instruction 可用于多种场景,引导 Chat2Query 按你的需求输出结果,包括但不限于以下情况: -- **限制查询范围**:如果你希望 SQL 只考虑某些表或列,可以使用指令来指定这一点。 -- **指导 SQL 结构**:如果你对 SQL 结构有特定要求,可以使用指令来指导 Chat2Query。 +- **限定查询范围**:如果你希望 SQL 只考虑某些表或列,可以通过 instruction 进行指定。 +- **引导 SQL 结构**:如果你对 SQL 结构有特定要求,可以通过 instruction 指导 Chat2Query。 -## 步骤 3. 向新创建的知识库添加知识 +## 第 3 步:向新建的知识库添加知识 -要添加新知识,你可以调用 `/v3/knowledgeBases/{knowledge_base_id}/data` 端点。 +要添加新知识,可以调用 `/v3/knowledgeBases/{knowledge_base_id}/data` 接口。 -### 添加少样本示例类型的知识 +### 添加 few-shot example 类型的知识 -例如,如果你希望 Chat2Query 以特定结构生成计算表中行数的 SQL 语句,你可以通过调用 `/v3/knowledgeBases/{knowledge_base_id}/data` 添加少样本示例类型的知识,如下所示: +例如,如果你希望 Chat2Query 以特定结构生成统计表中行数的 SQL 语句,可以通过如下方式调用 `/v3/knowledgeBases/{knowledge_base_id}/data` 添加 few-shot example 类型的知识: ```bash curl --digest --user ${PUBLIC_KEY}:${PRIVATE_KEY} --request POST 'https://.data.tidbcloud.com/api/v1beta/app/chat2query-/endpoint/v3/knowledgeBases//data'\ @@ -178,11 +178,11 @@ curl --digest --user ${PUBLIC_KEY}:${PRIVATE_KEY} --request POST 'https://.data.tidbcloud.com/api/v1beta/app/chat2query-/endpoint/v3/knowledgeBases//data'\ @@ -192,16 +192,16 @@ curl --digest --user ${PUBLIC_KEY}:${PRIVATE_KEY} --request POST 'https://.data.tidbcloud.com/api/v1beta/app/chat2query-/endpoint/v3/knowledgeBases//data'\ @@ -210,9 +210,9 @@ curl --digest --user ${PUBLIC_KEY}:${PRIVATE_KEY} --request POST 'https://= v8.4)集群。 ## 2024 年 6 月 25 日 -- TiDB 向量搜索(测试版)现已在所有地区对所有 TiDB Cloud Serverless 集群用户开放。 +- TiDB Vector Search(测试版)现已在所有区域的 TiDB Cloud Serverless 集群对所有用户开放。 ## 2024 年 4 月 1 日 -- TiDB 向量搜索(测试版)现已在欧盟地区对受邀的 TiDB Cloud Serverless 集群用户开放。 +- TiDB Vector Search(测试版)现已在欧盟区域的 TiDB Cloud Serverless 集群对受邀用户开放。 \ No newline at end of file diff --git a/tidb-cloud/vector-search-full-text-search-python.md b/tidb-cloud/vector-search-full-text-search-python.md index 7ac4a83f16b6b..a3c871c757eec 100644 --- a/tidb-cloud/vector-search-full-text-search-python.md +++ b/tidb-cloud/vector-search-full-text-search-python.md @@ -1,55 +1,56 @@ --- -title: 使用 Python 进行全文搜索 -summary: 全文搜索允许你检索精确关键词的文档。在检索增强生成(RAG)场景中,你可以将全文搜索与向量搜索结合使用,以提高检索质量。 +title: 使用 Python 进行全文检索 +summary: 全文检索允许你通过精确关键词检索文档。在 RAG(Retrieval-Augmented Generation,检索增强生成)场景中,你可以将全文检索与向量检索结合使用,以提升检索质量。 +aliases: ['/tidb/stable/vector-search-full-text-search-python'] --- -# 使用 Python 进行全文搜索 +# 使用 Python 进行全文检索 -与专注于语义相似性的[向量搜索](/tidb-cloud/vector-search-overview.md)不同,全文搜索允许你检索精确关键词的文档。在检索增强生成(RAG)场景中,你可以将全文搜索与向量搜索结合使用,以提高检索质量。 +与关注语义相似度的 [向量检索](/vector-search/vector-search-overview.md) 不同,全文检索允许你通过精确关键词检索文档。在 RAG(检索增强生成)场景中,你可以将全文检索与向量检索结合使用,以提升检索质量。 -TiDB 的全文搜索功能提供以下能力: +TiDB 的全文检索功能提供以下能力: -- **直接查询文本数据**:你可以直接搜索任何字符串列,无需进行嵌入处理。 +- **直接查询文本数据**:你可以直接检索任意字符串类型的列,无需进行嵌入处理。 -- **支持多种语言**:无需指定语言即可进行高质量搜索。TiDB 支持在同一个表中存储多种语言的文档,并自动为每个文档选择最佳的文本分析器。 +- **多语言支持**:无需指定语言即可获得高质量检索。TiDB 支持在同一张表中存储多种语言的文档,并会为每个文档自动选择最佳的文本分析器。 -- **按相关性排序**:搜索结果可以使用广泛采用的 [BM25 排序](https://en.wikipedia.org/wiki/Okapi_BM25)算法按相关性排序。 +- **按相关性排序**:检索结果可以通过广泛采用的 [BM25 排序](https://en.wikipedia.org/wiki/Okapi_BM25) 算法按相关性排序。 -- **完全兼容 SQL**:所有 SQL 功能,如预过滤、后过滤、分组和连接,都可以与全文搜索一起使用。 +- **完全兼容 SQL**:所有 SQL 功能,如预过滤、后过滤、分组和关联查询等,都可以与全文检索结合使用。 > **提示:** > -> 关于 SQL 用法,请参见[使用 SQL 进行全文搜索](/tidb-cloud/vector-search-full-text-search-sql.md)。 +> 有关 SQL 用法,参见 [使用 SQL 进行全文检索](/tidb-cloud/vector-search-full-text-search-sql.md)。 > -> 要在 AI 应用中同时使用全文搜索和向量搜索,请参见[混合搜索](/tidb-cloud/vector-search-hybrid-search.md)。 +> 如需在 AI 应用中同时使用全文检索和向量检索,参见 [混合检索](/tidb-cloud/vector-search-hybrid-search.md)。 ## 前提条件 -全文搜索仍处于早期阶段,我们正在持续向更多客户推出。目前,全文搜索仅适用于以下产品选项和地区: +全文检索目前仍处于早期阶段,我们正在持续向更多用户开放。目前,全文检索仅在以下产品选项和区域可用: - TiDB Cloud Serverless:`法兰克福 (eu-central-1)` 和 `新加坡 (ap-southeast-1)` -要完成本教程,请确保你在支持的地区有一个 TiDB Cloud Serverless 集群。如果你还没有,请按照[创建 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md)的说明创建一个。 +要完成本教程,请确保你拥有位于支持区域的 TiDB Cloud Serverless 集群。如果还没有,请按照 [创建 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md) 进行创建。 -## 开始使用 +## 快速开始 ### 步骤 1. 安装 [pytidb](https://github.com/pingcap/pytidb) Python SDK -[pytidb](https://github.com/pingcap/pytidb) 是 TiDB 的官方 Python SDK,旨在帮助开发者高效构建 AI 应用。它内置支持向量搜索和全文搜索。 +[pytidb](https://github.com/pingcap/pytidb) 是 TiDB 官方的 Python SDK,旨在帮助开发者高效构建 AI 应用。该 SDK 内置了对向量检索和全文检索的支持。 -要安装 SDK,请运行以下命令: +安装 SDK,请运行以下命令: ```shell pip install pytidb -# (替代方案)要使用内置的嵌入函数和重排序器: +# (可选)如需使用内置的 embedding 函数和 reranker: # pip install "pytidb[models]" -# (可选)要将查询结果转换为 pandas DataFrame: +# (可选)如需将查询结果转换为 pandas DataFrame: # pip install pandas ``` -### 步骤 2. 连接到 TiDB +### 步骤 2. 连接 TiDB ```python from pytidb import TiDBClient @@ -63,13 +64,13 @@ db = TiDBClient.connect( ) ``` -你可以从 [TiDB Cloud 控制台](https://tidbcloud.com)获取这些连接参数: +你可以在 [TiDB Cloud 控制台](https://tidbcloud.com) 获取这些连接参数: -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群名称进入集群概览页。 -2. 点击右上角的**连接**。将显示一个连接对话框,列出连接参数。 +2. 点击右上角的 **Connect**,会弹出连接对话框,显示连接参数。 - 例如,如果连接参数显示如下: + 例如,连接参数如下所示: ```text HOST: gateway01.us-east-1.prod.shared.aws.tidbcloud.com @@ -80,7 +81,7 @@ db = TiDBClient.connect( CA: /etc/ssl/cert.pem ``` - 连接到 TiDB Cloud Serverless 集群的相应 Python 代码如下: + 则连接 TiDB Cloud Serverless 集群的 Python 代码如下: ```python db = TiDBClient.connect( @@ -92,15 +93,15 @@ db = TiDBClient.connect( ) ``` - 请注意,上述示例仅用于演示目的。你需要使用自己的值填充参数并确保它们的安全性。 + 注意,上述示例仅用于演示。你需要使用自己的参数,并妥善保管。 ### 步骤 3. 创建表和全文索引 -以下是一个示例,创建一个名为 `chunks` 的表,包含以下列: +以创建名为 `chunks` 的表为例,包含以下列: -- `id` (int):块的 ID。 -- `text` (text):块的文本内容。 -- `user_id` (int):创建块的用户 ID。 +- `id` (int):分块的 ID。 +- `text` (text):分块的文本内容。 +- `user_id` (int):创建该分块的用户 ID。 ```python from pytidb.schema import TableModel, Field @@ -115,7 +116,7 @@ class Chunk(TableModel, table=True): table = db.create_table(schema=Chunk) if not table.has_fts_index("text"): - table.create_fts_index("text") # 👈 在文本列上创建全文索引。 + table.create_fts_index("text") # 👈 在 text 列上创建全文索引。 ``` ### 步骤 4. 插入数据 @@ -130,15 +131,15 @@ table.bulk_insert( ) ``` -### 步骤 5. 执行全文搜索 +### 步骤 5. 执行全文检索 -插入数据后,你可以按如下方式执行全文搜索: +插入数据后,你可以按如下方式进行全文检索: ```python df = ( table.search("brown fox", search_type="fulltext") .limit(2) - .to_pandas() # 可选 + .to_pandas() # optional ) # id text user_id @@ -146,17 +147,17 @@ df = ( # 1 2 the quick brown 2 ``` -完整示例请参见 [pytidb 全文搜索演示](https://github.com/pingcap/pytidb/blob/main/examples/fulltext_search)。 +完整示例参见 [pytidb full-text search demo](https://github.com/pingcap/pytidb/blob/main/examples/fulltext_search)。 -## 另请参阅 +## 相关链接 - [pytidb Python SDK 文档](https://github.com/pingcap/pytidb) -- [混合搜索](/tidb-cloud/vector-search-hybrid-search.md) +- [混合检索](/tidb-cloud/vector-search-hybrid-search.md) ## 反馈与帮助 -全文搜索仍处于早期阶段,可用性有限。如果你想在尚未提供服务的地区尝试全文搜索,或者如果你有反馈或需要帮助,请随时联系我们: +全文检索目前仍处于早期阶段,开放范围有限。如果你希望在尚未开放的区域体验全文检索,或有任何反馈或需要帮助,欢迎联系我们: @@ -169,4 +170,4 @@ df = ( - [加入我们的 Discord](https://discord.gg/zcqexutz2R) - [访问我们的支持门户](https://tidb.support.pingcap.com/) - + \ No newline at end of file diff --git a/tidb-cloud/vector-search-full-text-search-sql.md b/tidb-cloud/vector-search-full-text-search-sql.md index c6dafbad511bc..65c7ebe663696 100644 --- a/tidb-cloud/vector-search-full-text-search-sql.md +++ b/tidb-cloud/vector-search-full-text-search-sql.md @@ -1,47 +1,48 @@ --- -title: 使用 SQL 进行全文搜索 -summary: 全文搜索允许你通过精确关键词检索文档。在检索增强生成(RAG)场景中,你可以将全文搜索与向量搜索结合使用,以提高检索质量。 +title: 使用 SQL 进行全文检索 +summary: 全文检索允许你根据精确关键词检索文档。在 RAG(检索增强生成)场景中,你可以将全文检索与向量检索结合使用,以提升检索质量。 +aliases: ['/tidb/stable/vector-search-full-text-search-sql'] --- -# 使用 SQL 进行全文搜索 +# 使用 SQL 进行全文检索 -与专注于语义相似度的[向量搜索](/tidb-cloud/vector-search-overview.md)不同,全文搜索允许你通过精确关键词检索文档。在检索增强生成(RAG)场景中,你可以将全文搜索与向量搜索结合使用,以提高检索质量。 +与 [向量检索](/vector-search/vector-search-overview.md) 侧重于语义相似性不同,全文检索允许你根据精确关键词检索文档。在 RAG(检索增强生成)场景中,你可以将全文检索与向量检索结合使用,以提升检索质量。 -TiDB 的全文搜索功能提供以下能力: +TiDB 的全文检索功能提供以下能力: -- **直接查询文本数据**:你可以直接搜索任何字符串列,无需进行嵌入处理。 +- **直接查询文本数据**:你可以直接在任意字符串列上进行检索,无需进行嵌入处理。 -- **支持多种语言**:无需指定语言即可实现高质量搜索。TiDB 中的文本分析器支持在同一个表中混合使用多种语言的文档,并自动为每个文档选择最佳的分析器。 +- **多语言支持**:无需指定语言即可获得高质量检索。TiDB 的文本分析器支持同一张表中多种语言混合的文档,并会自动为每个文档选择最佳分析器。 -- **按相关性排序**:搜索结果可以使用广泛采用的 [BM25 排序](https://en.wikipedia.org/wiki/Okapi_BM25)算法按相关性排序。 +- **按相关性排序**:检索结果可以通过广泛采用的 [BM25 排序](https://en.wikipedia.org/wiki/Okapi_BM25) 算法按相关性排序。 -- **完全兼容 SQL**:所有 SQL 功能,如预过滤、后过滤、分组和连接,都可以与全文搜索一起使用。 +- **与 SQL 完全兼容**:所有 SQL 特性,如预过滤、后过滤、分组和关联查询等,都可以与全文检索结合使用。 -> **提示:** +> **Tip:** > -> 关于 Python 用法,请参见[使用 Python 进行全文搜索](/tidb-cloud/vector-search-full-text-search-python.md)。 +> 关于 Python 的用法,请参见 [使用 Python 进行全文检索](/tidb-cloud/vector-search-full-text-search-python.md)。 > -> 要在 AI 应用中同时使用全文搜索和向量搜索,请参见[混合搜索](/tidb-cloud/vector-search-hybrid-search.md)。 +> 如需在 AI 应用中同时使用全文检索和向量检索,请参见 [混合检索](/tidb-cloud/vector-search-hybrid-search.md)。 -## 开始使用 +## 快速开始 -全文搜索仍处于早期阶段,我们正在持续向更多客户推出。目前,全文搜索仅适用于以下产品选项和地区: +全文检索目前仍处于早期阶段,我们正在持续向更多用户开放。目前,全文检索仅在以下产品选项和区域可用: -- TiDB Cloud Serverless:`法兰克福 (eu-central-1)` 和 `新加坡 (ap-southeast-1)` +- TiDB Cloud Serverless:`Frankfurt (eu-central-1)` 和 `Singapore (ap-southeast-1)` -在使用全文搜索之前,请确保你的 TiDB Cloud Serverless 集群创建在支持的地区。如果你还没有集群,请按照[创建 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md)的说明创建一个。 +在使用全文检索前,请确保你的 TiDB Cloud Serverless 集群已创建在支持的区域。如果还没有集群,请按照 [创建 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md) 进行创建。 -要执行全文搜索,请按照以下步骤操作: +要进行全文检索,请按照以下步骤操作: -1. [**创建全文索引**](#创建全文索引):创建带有全文索引的表,或为现有表添加全文索引。 +1. [**创建全文索引**](#create-a-full-text-index):创建带有全文索引的表,或为已有表添加全文索引。 -2. [**插入文本数据**](#插入文本数据):向表中插入文本数据。 +2. [**插入文本数据**](#insert-text-data):向表中插入文本数据。 -3. [**执行全文搜索**](#执行全文搜索):使用文本查询和全文搜索函数执行全文搜索。 +3. [**执行全文检索**](#perform-a-full-text-search):使用文本查询和全文检索函数进行全文检索。 ### 创建全文索引 -要执行全文搜索,需要全文索引,因为它提供了高效搜索和排序所需的数据结构。全文索引可以在新表上创建,也可以添加到现有表中。 +要进行全文检索,需要创建全文索引,它为高效检索和排序提供必要的数据结构。全文索引既可以在新表上创建,也可以添加到已有表中。 创建带有全文索引的表: @@ -53,7 +54,7 @@ CREATE TABLE stock_items( ); ``` -或为现有表添加全文索引: +或者为已有表添加全文索引: ```sql CREATE TABLE stock_items( @@ -61,30 +62,30 @@ CREATE TABLE stock_items( title TEXT ); --- 你可能在这里插入一些数据。 --- 即使表中已经有数据,也可以创建全文索引。 +-- 你可以在这里插入一些数据。 +-- 即使表中已有数据,也可以创建全文索引。 ALTER TABLE stock_items ADD FULLTEXT INDEX (title) WITH PARSER MULTILINGUAL ADD_COLUMNAR_REPLICA_ON_DEMAND; ``` -在 `WITH PARSER ` 子句中可以使用以下解析器: +`WITH PARSER ` 子句中支持以下解析器: -- `STANDARD`:快速,适用于英文内容,按空格和标点符号分词。 +- `STANDARD`:速度快,适用于英文内容,通过空格和标点分词。 -- `MULTILINGUAL`:支持多种语言,包括英语、中文、日语和韩语。 +- `MULTILINGUAL`:支持多种语言,包括英文、中文、日文和韩文。 ### 插入文本数据 -向带有全文索引的表中插入数据与向其他表插入数据完全相同。 +向带有全文索引的表插入数据与向其他表插入数据完全相同。 -例如,你可以执行以下 SQL 语句来插入多种语言的数据。TiDB 的多语言解析器会自动处理文本。 +例如,你可以执行以下 SQL 语句插入多种语言的数据。TiDB 的多语言解析器会自动处理这些文本。 ```sql INSERT INTO stock_items VALUES (1, "イヤホン bluetooth ワイヤレスイヤホン "); INSERT INTO stock_items VALUES (2, "完全ワイヤレスイヤホン/ウルトラノイズキャンセリング 2.0 "); INSERT INTO stock_items VALUES (3, "ワイヤレス ヘッドホン Bluetooth 5.3 65時間再生 ヘッドホン 40mm HD "); INSERT INTO stock_items VALUES (4, "楽器用 オンイヤーヘッドホン 密閉型【国内正規品】"); -INSERT INTO stock_items VALUES (5, "ワイヤレスイヤホン ハイブリッドANC搭載 40dBまでアクティブノイズキャンセル"); +INSERT INTO stock_items VALUES (5, "ワイヤレスイヤホン ハイブリッドANC搭载 40dBまでアクティブノイズキャンセル"); INSERT INTO stock_items VALUES (6, "Lightweight Bluetooth Earbuds with 48 Hours Playtime"); INSERT INTO stock_items VALUES (7, "True Wireless Noise Cancelling Earbuds - Compatible with Apple & Android, Built-in Microphone"); INSERT INTO stock_items VALUES (8, "In-Ear Earbud Headphones with Mic, Black"); @@ -97,11 +98,11 @@ INSERT INTO stock_items VALUES (14, "无线蓝牙耳机超长续航42小时快 INSERT INTO stock_items VALUES (15, "皎月银 国家补贴 心率血氧监测 蓝牙通话 智能手表 男女表"); ``` -### 执行全文搜索 +### 执行全文检索 -要执行全文搜索,你可以使用 `FTS_MATCH_WORD()` 函数。 +要进行全文检索,你可以使用 `FTS_MATCH_WORD()` 函数。 -**示例:搜索最相关的 10 个文档** +**示例:检索最相关的 10 个文档** ```sql SELECT * FROM stock_items @@ -109,7 +110,7 @@ SELECT * FROM stock_items ORDER BY fts_match_word("bluetoothイヤホン", title) DESC LIMIT 10; --- 结果按相关性排序,最相关的文档排在前面。 +-- 结果按相关性排序,最相关的文档排在最前面。 +------+-----------------------------------------------------------------------------------------------------------+ | id | title | @@ -118,16 +119,16 @@ SELECT * FROM stock_items | 6 | Lightweight Bluetooth Earbuds with 48 Hours Playtime | | 2 | 完全ワイヤレスイヤホン/ウルトラノイズキャンセリング 2.0 | | 3 | ワイヤレス ヘッドホン Bluetooth 5.3 65時間再生 ヘッドホン 40mm HD | -| 5 | ワイヤレスイヤホン ハイブリッドANC搭載 40dBまでアクティブノイズキャンセル | +| 5 | ワイヤレスイヤホン ハイブリッドANC搭载 40dBまでアクティブノイズキャンセル | +------+-----------------------------------------------------------------------------------------------------------+ --- 尝试用另一种语言搜索: +-- 尝试用另一种语言进行检索: SELECT * FROM stock_items WHERE fts_match_word("蓝牙耳机", title) ORDER BY fts_match_word("蓝牙耳机", title) DESC LIMIT 10; --- 结果按相关性排序,最相关的文档排在前面。 +-- 结果按相关性排序,最相关的文档排在最前面。 +------+---------------------------------------------------------------------------------------------------------------+ | id | title | @@ -138,7 +139,7 @@ SELECT * FROM stock_items +------+---------------------------------------------------------------------------------------------------------------+ ``` -**示例:统计匹配用户查询的文档数量** +**示例:统计与用户查询匹配的文档数量** ```sql SELECT COUNT(*) FROM stock_items @@ -151,11 +152,11 @@ SELECT COUNT(*) FROM stock_items +----------+ ``` -## 高级示例:连接搜索结果与其他表 +## 高级示例:与其他表联合检索 -你可以将全文搜索与其他 SQL 功能(如连接和子查询)结合使用。 +你可以将全文检索与其他 SQL 特性(如关联查询和子查询)结合使用。 -假设你有一个 `users` 表和一个 `tickets` 表,想要根据作者姓名的全文搜索来查找他们创建的工单: +假设你有一张 `users` 表和一张 `tickets` 表,并希望基于作者姓名的全文检索查找其创建的工单: ```sql CREATE TABLE users( @@ -178,7 +179,7 @@ INSERT INTO tickets VALUES (2, "Ticket 2", 1); INSERT INTO tickets VALUES (3, "Ticket 3", 2); ``` -你可以使用子查询根据作者姓名查找匹配的用户 ID,然后在外部查询中使用这些 ID 来检索和连接相关的工单信息: +你可以使用子查询根据作者姓名查找匹配的用户 ID,然后在外层查询中使用这些 ID 进行关联查询,获取相关工单信息: ```sql SELECT t.title AS TICKET_TITLE, u.id AS AUTHOR_ID, u.name AS AUTHOR_NAME FROM tickets t @@ -197,13 +198,13 @@ WHERE t.author_id IN +--------------+-----------+-------------+ ``` -## 另请参阅 +## 相关文档 -- [混合搜索](/tidb-cloud/vector-search-hybrid-search.md) +- [混合检索](/tidb-cloud/vector-search-hybrid-search.md) ## 反馈与帮助 -全文搜索仍处于早期阶段,可用性有限。如果你想在尚未开放的地区尝试全文搜索,或者如果你有反馈或需要帮助,请随时联系我们: +全文检索目前仍处于早期阶段,开放范围有限。如果你希望在尚未开放的区域体验全文检索,或有任何反馈和帮助需求,欢迎联系我们: diff --git a/tidb-cloud/vector-search-hybrid-search.md b/tidb-cloud/vector-search-hybrid-search.md index b34cc4eefbb27..2539c10bd1083 100644 --- a/tidb-cloud/vector-search-hybrid-search.md +++ b/tidb-cloud/vector-search-hybrid-search.md @@ -1,44 +1,45 @@ --- -title: 混合搜索 -summary: 结合全文搜索和向量搜索来提升检索质量。 +title: Hybrid Search +summary: 同时使用全文检索和向量检索以提升检索质量。 +aliases: ['/tidb/stable/vector-search-hybrid-search'] --- -# 混合搜索 +# Hybrid Search -通过使用全文搜索,你可以基于精确关键词检索文档。通过使用向量搜索,你可以基于语义相似度检索文档。我们能否结合这两种搜索方法来提升检索质量并处理更多场景?是的,这种方法被称为混合搜索,在 AI 应用中被广泛使用。 +通过使用全文检索,你可以基于精确关键词检索文档。通过使用向量检索,你可以基于语义相似度检索文档。那么,能否将这两种检索方式结合起来,以提升检索质量并覆盖更多场景?答案是可以,这种方式被称为混合检索(hybrid search),并且在 AI 应用中被广泛使用。 -TiDB 中混合搜索的一般工作流程如下: +在 TiDB 中,混合检索的一般流程如下: -1. 使用 TiDB 进行**全文搜索**和**向量搜索**。 -2. 使用**重排序器**来组合两种搜索的结果。 +1. 使用 TiDB 进行 **全文检索** 和 **向量检索**。 +2. 使用 **reranker**(重排序器)对两种检索结果进行融合。 -![混合搜索](/media/vector-search/hybrid-search-overview.svg) +![Hybrid Search](/media/vector-search/hybrid-search-overview.svg) -本教程演示如何使用 [pytidb](https://github.com/pingcap/pytidb) Python SDK 在 TiDB 中使用混合搜索,该 SDK 内置支持嵌入和重排序功能。使用 pytidb 完全是可选的 — 你可以直接使用 SQL 执行搜索,并根据需要使用自己的重排序模型。 +本教程演示如何在 TiDB 中使用 [pytidb](https://github.com/pingcap/pytidb) Python SDK 实现混合检索,该 SDK 内置了 embedding 和 reranking 支持。使用 pytidb 并非强制要求 —— 你也可以直接通过 SQL 进行检索,并使用自定义的 reranking 模型。 -## 前提条件 +## 前置条件 -混合搜索依赖于[全文搜索](/tidb-cloud/vector-search-full-text-search-python.md)和向量搜索。全文搜索仍处于早期阶段,我们正在持续向更多客户推出。目前,全文搜索仅适用于以下产品选项和地区: +混合检索依赖于 [全文检索](/tidb-cloud/vector-search-full-text-search-python.md) 和向量检索。全文检索目前仍处于早期阶段,我们正在持续向更多用户开放。目前,全文检索仅在以下产品选项和区域可用: -- TiDB Cloud Serverless:`法兰克福 (eu-central-1)` 和 `新加坡 (ap-southeast-1)` +- TiDB Cloud Serverless:`Frankfurt (eu-central-1)` 和 `Singapore (ap-southeast-1)` -要完成本教程,请确保你在支持的地区有一个 TiDB Cloud Serverless 集群。如果你还没有,请按照[创建 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md)的说明创建一个。 +要完成本教程,请确保你拥有位于支持区域的 TiDB Cloud Serverless 集群。如果还没有,请参考 [创建 TiDB Cloud Serverless 集群](/develop/dev-guide-build-cluster-in-cloud.md) 进行创建。 -## 开始使用 +## 快速开始 ### 步骤 1. 安装 [pytidb](https://github.com/pingcap/pytidb) Python SDK ```shell pip install "pytidb[models]" -# (替代方案) 如果你不想使用内置的嵌入函数和重排序器: +# (可选)如果你不想使用内置的 embedding 函数和 reranker: # pip install pytidb -# (可选) 要将查询结果转换为 pandas DataFrame: +# (可选)如需将查询结果转换为 pandas DataFrame: # pip install pandas ``` -### 步骤 2. 连接到 TiDB +### 步骤 2. 连接 TiDB ```python from pytidb import TiDBClient @@ -52,13 +53,13 @@ db = TiDBClient.connect( ) ``` -你可以从 [TiDB Cloud 控制台](https://tidbcloud.com)获取这些连接参数: +你可以在 [TiDB Cloud 控制台](https://tidbcloud.com) 获取这些连接参数: -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群名称进入集群概览页。 -2. 点击右上角的**连接**。将显示一个连接对话框,其中列出了连接参数。 +2. 点击右上角的 **Connect**,弹出连接对话框,显示连接参数。 - 例如,如果连接参数显示如下: + 例如,连接参数如下所示: ```text HOST: gateway01.us-east-1.prod.shared.aws.tidbcloud.com @@ -69,7 +70,7 @@ db = TiDBClient.connect( CA: /etc/ssl/cert.pem ``` - 连接到 TiDB Cloud Serverless 集群的相应 Python 代码如下: + 则连接 TiDB Cloud Serverless 集群的 Python 代码如下: ```python db = TiDBClient.connect( @@ -81,16 +82,16 @@ db = TiDBClient.connect( ) ``` - 请注意,上述示例仅用于演示目的。你需要使用自己的值填充参数并确保它们的安全性。 + 注意,上述示例仅用于演示。你需要使用自己的参数,并妥善保管。 -### 步骤 3. 创建表 +### 步骤 3. 创建数据表 -作为示例,创建一个名为 `chunks` 的表,包含以下列: +以创建名为 `chunks` 的表为例,包含以下字段: -- `id` (int):块的 ID。 -- `text` (text):块的文本内容。 -- `text_vec` (vector):文本的向量表示,由 pytidb 中的嵌入模型自动生成。 -- `user_id` (int):创建该块的用户 ID。 +- `id` (int):chunk 的 ID。 +- `text` (text):chunk 的文本内容。 +- `text_vec` (vector):文本的向量表示,由 pytidb 中的 embedding 模型自动生成。 +- `user_id` (int):创建该 chunk 的用户 ID。 ```python from pytidb.schema import TableModel, Field @@ -116,16 +117,16 @@ table = db.create_table(schema=Chunk) ```python table.bulk_insert( [ - Chunk(id=2, text="bar", user_id=2), # 👈 文本字段将被自动嵌入为向量 - Chunk(id=3, text="baz", user_id=3), # 并存储在 "text_vec" 字段中。 - Chunk(id=4, text="qux", user_id=4), # + Chunk(id=2, text="bar", user_id=2), # 👈 text 字段会自动嵌入为向量 + Chunk(id=3, text="baz", user_id=3), # 并存储到 "text_vec" 字段 + Chunk(id=4, text="qux", user_id=4), # 中。 ] ) ``` -### 步骤 5. 执行混合搜索 +### 步骤 5. 执行混合检索 -在此示例中,使用 [jina-reranker](https://huggingface.co/jinaai/jina-reranker-m0) 模型对搜索结果进行重排序。 +本例中,使用 [jina-reranker](https://huggingface.co/jinaai/jina-reranker-m0) 模型对检索结果进行重排序。 ```python from pytidb.rerankers import Reranker @@ -134,23 +135,23 @@ jinaai = Reranker(model_name="jina_ai/jina-reranker-m0") df = ( table.search("", search_type="hybrid") - .rerank(jinaai, "text") # 👈 使用 jinaai 模型对查询结果进行重排序。 + .rerank(jinaai, "text") # 👈 使用 jinaai 模型对查询结果重排序。 .limit(2) .to_pandas() ) ``` -完整示例请参见 [pytidb 混合搜索演示](https://github.com/pingcap/pytidb/tree/main/examples/hybrid_search)。 +完整示例请参考 [pytidb hybrid search demo](https://github.com/pingcap/pytidb/tree/main/examples/hybrid_search)。 -## 另请参阅 +## 相关链接 - [pytidb Python SDK 文档](https://github.com/pingcap/pytidb) -- [使用 Python 进行全文搜索](/tidb-cloud/vector-search-full-text-search-python.md) +- [使用 Python 进行全文检索](/tidb-cloud/vector-search-full-text-search-python.md) ## 反馈与帮助 -全文搜索仍处于早期阶段,可访问性有限。如果你想在尚未提供服务的地区尝试全文搜索,或者如果你有反馈或需要帮助,请随时联系我们: +全文检索目前仍处于早期阶段,开放范围有限。如果你希望在尚未开放的区域体验全文检索,或有任何反馈和帮助需求,欢迎联系我们: @@ -163,4 +164,4 @@ df = ( - [加入我们的 Discord](https://discord.gg/zcqexutz2R) - [访问我们的支持门户](https://tidb.support.pingcap.com/) - + \ No newline at end of file diff --git a/tidb-cloud/vector-search-integrate-with-amazon-bedrock.md b/tidb-cloud/vector-search-integrate-with-amazon-bedrock.md index 11a804ac4c7c2..f67372bea4e66 100644 --- a/tidb-cloud/vector-search-integrate-with-amazon-bedrock.md +++ b/tidb-cloud/vector-search-integrate-with-amazon-bedrock.md @@ -1,29 +1,37 @@ --- -title: 将 TiDB 向量搜索与 Amazon Bedrock 集成 -summary: 了解如何将 TiDB 向量搜索与 Amazon Bedrock 集成以构建检索增强生成(RAG)问答机器人。 +title: 集成 TiDB 向量检索与 Amazon Bedrock +summary: 学习如何将 TiDB 向量检索与 Amazon Bedrock 集成,构建基于检索增强生成(RAG)的问答机器人。 --- -# 将 TiDB 向量搜索与 Amazon Bedrock 集成 +# 集成 TiDB 向量检索与 Amazon Bedrock -本教程演示如何将 TiDB 的[向量搜索](/tidb-cloud/vector-search-overview.md)功能与 [Amazon Bedrock](https://aws.amazon.com/bedrock/) 集成,以构建检索增强生成(RAG)问答机器人。 +本教程演示如何将 TiDB 的 [向量检索](/vector-search/vector-search-overview.md) 功能与 [Amazon Bedrock](https://aws.amazon.com/bedrock/) 集成,构建基于检索增强生成(RAG)的问答机器人。 -> **注意** + + +> **Note:** +> +> 向量检索功能目前为 Beta 版本,可能会在没有提前通知的情况下发生变更。如果你发现了 bug,可以在 GitHub 上提交 [issue](https://github.com/pingcap/tidb/issues)。 + + + +> **Note** > -> TiDB 向量搜索仅适用于 TiDB Self-Managed(TiDB >= v8.4)和 [TiDB Cloud Serverless](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless)。它不适用于 [TiDB Cloud Dedicated](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated)。 +> 向量检索功能适用于 TiDB 自建版、[TiDB Cloud Serverless](https://docs.pingcap.com/tidbcloud/select-cluster-tier#tidb-cloud-serverless) 和 [TiDB Cloud Dedicated](https://docs.pingcap.com/tidbcloud/select-cluster-tier#tidb-cloud-dedicated)。对于 TiDB 自建版和 TiDB Cloud Dedicated,TiDB 版本需为 v8.4.0 或更高(推荐 v8.5.0 或更高)。 -> **提示** +> **Tip** > -> 你可以在 Notebook 格式中查看完整的[示例代码](https://github.com/aws-samples/aws-generativeai-partner-samples/blob/main/tidb/samples/tidb-bedrock-boto3-rag.ipynb)。 +> 你可以在 Notebook 格式中查看完整的 [示例代码](https://github.com/aws-samples/aws-generativeai-partner-samples/blob/main/tidb/samples/tidb-bedrock-boto3-rag.ipynb)。 -## 前提条件 +## 前置条件 -要完成本教程,你需要: +完成本教程,你需要: -- 安装 [Python 3.11 或更高版本](https://www.python.org/downloads/) -- 安装 [Pip](https://pypi.org/project/pip/) -- 安装 [AWS CLI](https://aws.amazon.com/cli/) +- 已安装 [Python 3.11 或更高版本](https://www.python.org/downloads/) +- 已安装 [Pip](https://pypi.org/project/pip/) +- 已安装 [AWS CLI](https://aws.amazon.com/cli/) - 确保你的 AWS CLI 配置文件配置为本教程支持的 [Amazon Bedrock](https://aws.amazon.com/bedrock/) 区域。你可以在 [Amazon Bedrock 区域](https://docs.aws.amazon.com/bedrock/latest/userguide/models-regions.html)找到支持的区域列表。要切换到支持的区域,请运行以下命令: + 请确保你的 AWS CLI 配置文件已设置为本教程支持的 [Amazon Bedrock](https://aws.amazon.com/bedrock/) 区域。支持的区域列表可参考 [Amazon Bedrock Regions](https://docs.aws.amazon.com/bedrock/latest/userguide/models-regions.html)。如需切换到支持的区域,可运行以下命令: ```shell aws configure set region @@ -31,45 +39,45 @@ summary: 了解如何将 TiDB 向量搜索与 Amazon Bedrock 集成以构建检 - 一个 TiDB Cloud Serverless 集群 - 如果你没有集群,请按照[创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md)的说明创建自己的 TiDB Cloud 集群。 + 如果你还没有 TiDB Cloud 集群,请参考[创建 TiDB Cloud Serverless 集群](/tidb-cloud/create-tidb-cluster-serverless.md) 创建属于你自己的集群。 -- 具有 [Amazon Bedrock 所需权限](https://docs.aws.amazon.com/bedrock/latest/userguide/security_iam_id-based-policy-examples.html)并可访问以下模型的 AWS 账户: +- 一个具有 [Amazon Bedrock 所需权限](https://docs.aws.amazon.com/bedrock/latest/userguide/security_iam_id-based-policy-examples.html) 的 AWS 账号,并且能够访问以下模型: - - **Amazon Titan Embeddings**(`amazon.titan-embed-text-v2:0`),用于生成文本嵌入 + - **Amazon Titan Embeddings**(`amazon.titan-embed-text-v2:0`),用于生成文本向量 - **Meta Llama 3**(`us.meta.llama3-2-3b-instruct-v1:0`),用于文本生成 - 如果你没有访问权限,请按照[请求访问 Amazon Bedrock 基础模型](https://docs.aws.amazon.com/bedrock/latest/userguide/getting-started.html#getting-started-model-access)中的说明操作。 + 如果你没有访问权限,请按照 [申请访问 Amazon Bedrock 基础模型](https://docs.aws.amazon.com/bedrock/latest/userguide/getting-started.html#getting-started-model-access) 的说明进行操作。 ## 开始使用 -本节提供将 TiDB 向量搜索与 Amazon Bedrock 集成以构建基于 RAG 的问答机器人的分步说明。 +本节将为你提供将 TiDB 向量检索与 Amazon Bedrock 集成,构建基于 RAG 的问答机器人的分步指导。 ### 步骤 1. 设置环境变量 -从 [TiDB Cloud 控制台](https://tidbcloud.com/)获取 TiDB 连接信息,并在开发环境中设置环境变量,如下所示: +从 [TiDB Cloud 控制台](https://tidbcloud.com/) 获取 TiDB 连接信息,并在你的开发环境中设置环境变量,具体如下: -1. 导航到[**集群**](https://tidbcloud.com/project/clusters)页面,然后点击目标集群的名称进入其概览页面。 +1. 进入 [**Clusters**](https://tidbcloud.com/project/clusters) 页面,点击目标集群名称,进入集群概览页。 -2. 点击右上角的**连接**。此时会显示连接对话框。 +2. 点击右上角的 **Connect**,弹出连接对话框。 -3. 确保连接对话框中的配置与你的操作环境匹配。 +3. 确保连接对话框中的配置与你的操作环境一致。 - - **连接类型**设置为 `Public` - - **分支**设置为 `main` - - **连接方式**设置为 `General` - - **操作系统**与你的环境匹配。 + - **Connection Type** 设置为 `Public` + - **Branch** 设置为 `main` + - **Connect With** 设置为 `General` + - **Operating System** 与你的环境一致 - > **提示:** + > **Tip:** > - > 如果你的程序在 Windows Subsystem for Linux (WSL) 中运行,请切换到相应的 Linux 发行版。 + > 如果你的程序运行在 Windows Subsystem for Linux (WSL) 中,请切换到对应的 Linux 发行版。 -4. 点击**生成密码**创建随机密码。 +4. 点击 **Generate Password** 生成随机密码。 - > **提示:** + > **Tip:** > - > 如果你之前已经创建了密码,可以使用原始密码或点击**重置密码**生成新密码。 + > 如果你之前已经创建过密码,可以继续使用原密码,或点击 **Reset Password** 生成新密码。 -5. 在终端中运行以下命令来设置环境变量。你需要将命令中的占位符替换为从连接对话框获得的相应连接参数。 +5. 在终端中运行以下命令设置环境变量。你需要将命令中的占位符替换为连接对话框中获取的实际参数。 ```shell export TIDB_HOST= @@ -79,22 +87,22 @@ summary: 了解如何将 TiDB 向量搜索与 Amazon Bedrock 集成以构建检 export TIDB_DB_NAME=test ``` -### 步骤 2. 设置 Python 虚拟环境 +### 步骤 2. 配置 Python 虚拟环境 -1. 创建一个名为 `demo.py` 的 Python 文件: +1. 新建一个名为 `demo.py` 的 Python 文件: ```shell touch demo.py ``` -2. 创建并激活虚拟环境以管理依赖项: +2. 创建并激活虚拟环境以管理依赖: ```shell python3 -m venv env - source env/bin/activate # 在 Windows 上,使用 env\Scripts\activate + source env/bin/activate # Windows 下使用 env\Scripts\activate ``` -3. 安装所需的依赖项: +3. 安装所需依赖: ```shell pip install SQLAlchemy==2.0.30 PyMySQL==1.1.0 tidb-vector==0.0.9 pydantic==2.7.1 boto3 @@ -102,7 +110,7 @@ summary: 了解如何将 TiDB 向量搜索与 Amazon Bedrock 集成以构建检 ### 步骤 3. 导入所需库 -在 `demo.py` 的开头添加以下代码以导入所需的库: +在 `demo.py` 文件开头添加以下代码,导入所需的库: ```python import os @@ -115,50 +123,50 @@ from tidb_vector.sqlalchemy import VectorType ### 步骤 4. 配置数据库连接 -在 `demo.py` 中,添加以下代码以配置数据库连接: +在 `demo.py` 中添加以下代码,配置数据库连接: ```python -# ---- 配置设置 ---- -# 设置环境变量:TIDB_HOST, TIDB_PORT, TIDB_USER, TIDB_PASSWORD, TIDB_DB_NAME +# ---- Configuration Setup ---- +# Set environment variables: TIDB_HOST, TIDB_PORT, TIDB_USER, TIDB_PASSWORD, TIDB_DB_NAME TIDB_HOST = os.environ.get("TIDB_HOST") TIDB_PORT = os.environ.get("TIDB_PORT") TIDB_USER = os.environ.get("TIDB_USER") TIDB_PASSWORD = os.environ.get("TIDB_PASSWORD") TIDB_DB_NAME = os.environ.get("TIDB_DB_NAME") -# ---- 数据库设置 ---- +# ---- Database Setup ---- def get_db_url(): - """构建数据库连接 URL。""" + """Build the database connection URL.""" return f"mysql+pymysql://{TIDB_USER}:{TIDB_PASSWORD}@{TIDB_HOST}:{TIDB_PORT}/{TIDB_DB_NAME}?ssl_verify_cert=True&ssl_verify_identity=True" -# 创建引擎 +# Create engine engine = create_engine(get_db_url(), pool_recycle=300) Base = declarative_base() ``` -### 步骤 5. 使用 Bedrock 运行时客户端调用 Amazon Titan Text Embeddings V2 模型 +### 步骤 5. 使用 Bedrock runtime client 调用 Amazon Titan Text Embeddings V2 模型 -Amazon Bedrock 运行时客户端提供了一个 `invoke_model` API,它接受以下参数: +Amazon Bedrock runtime client 提供了 `invoke_model` API,支持以下参数: -- `modelId`:Amazon Bedrock 中可用的基础模型的模型 ID。 -- `accept`:输入请求的类型。 -- `contentType`:输入的内容类型。 -- `body`:由提示和配置组成的 JSON 字符串负载。 +- `modelId`:Amazon Bedrock 可用基础模型的模型 ID +- `accept`:输入请求的类型 +- `contentType`:输入内容的类型 +- `body`:包含 prompt 和配置的 JSON 字符串负载 -在 `demo.py` 中,添加以下代码以调用 `invoke_model` API,使用 Amazon Titan Text Embeddings 生成文本嵌入并从 Meta Llama 3 获取响应: +在 `demo.py` 中添加以下代码,调用 `invoke_model` API,使用 Amazon Titan Text Embeddings 生成文本向量,并从 Meta Llama 3 获取响应: ```python -# Bedrock 运行时客户端设置 +# Bedrock Runtime Client Setup bedrock_runtime = boto3.client('bedrock-runtime') -# ---- 模型调用 ---- +# ---- Model Invocation ---- embedding_model_name = "amazon.titan-embed-text-v2:0" dim_of_embedding_model = 512 llm_name = "us.meta.llama3-2-3b-instruct-v1:0" def embedding(content): - """调用 Amazon Bedrock 获取文本嵌入。""" + """Invoke Amazon Bedrock to get text embeddings.""" payload = { "modelId": embedding_model_name, "contentType": "application/json", @@ -184,13 +192,13 @@ def embedding(content): def generate_result(query: str, info_str: str): - """使用 Meta Llama 3 模型生成答案。""" + """Generate answer using Meta Llama 3 model.""" prompt = f""" - 仅使用以下内容生成答案: + ONLY use the content below to generate an answer: {info_str} ---- - 请仔细思考这个问题:{query} + Please carefully think about the question: {query} """ payload = { @@ -219,95 +227,95 @@ def generate_result(query: str, info_str: str): ### 步骤 6. 创建向量表 -在 `demo.py` 中,添加以下代码以创建一个用于存储文本和向量嵌入的向量表: +在 `demo.py` 中添加以下代码,创建用于存储文本及其向量的表: ```python -# ---- TiDB 设置和向量索引创建 ---- +# ---- TiDB Setup and Vector Index Creation ---- class Entity(Base): - """定义带有向量索引的 Entity 表。""" + """Define the Entity table with a vector index.""" __tablename__ = "entity" id = Column(Integer, primary_key=True) content = Column(Text) content_vec = Column(VectorType(dim=dim_of_embedding_model), comment="hnsw(distance=l2)") -# 在 TiDB 中创建表 +# Create the table in TiDB Base.metadata.create_all(engine) ``` ### 步骤 7. 将向量数据保存到 TiDB Cloud Serverless -在 `demo.py` 中,添加以下代码以将向量数据保存到你的 TiDB Cloud Serverless 集群: +在 `demo.py` 中添加以下代码,将向量数据保存到你的 TiDB Cloud Serverless 集群: ```python -# ---- 将向量保存到 TiDB ---- +# ---- Saving Vectors to TiDB ---- def save_entities_with_embedding(session, contents): - """将多个实体及其嵌入保存到 TiDB Serverless 数据库。""" + """Save multiple entities with their embeddings to the TiDB Serverless database.""" for content in contents: entity = Entity(content=content, content_vec=embedding(content)) session.add(entity) session.commit() ``` -### 步骤 8. 运行应用程序 +### 步骤 8. 运行应用 -1. 在 `demo.py` 中,添加以下代码以建立数据库会话,将嵌入保存到 TiDB,提出示例问题(如"什么是 TiDB?"),并从模型生成结果: +1. 在 `demo.py` 中添加以下代码,建立数据库会话,将向量保存到 TiDB,提出示例问题(如 "What is TiDB?"),并从模型生成结果: ```python if __name__ == "__main__": - # 建立数据库会话 + # Establish a database session with Session(engine) as session: - # 示例数据 + # Example data contents = [ - "TiDB 是一个与 MySQL 兼容的分布式 SQL 数据库。", - "TiDB 支持混合事务和分析处理(HTAP)。", - "TiDB 可以水平扩展并提供高可用性。", - "Amazon Bedrock 允许与基础模型无缝集成。", - "Meta Llama 3 是一个强大的文本生成模型。" + "TiDB is a distributed SQL database compatible with MySQL.", + "TiDB supports Hybrid Transactional and Analytical Processing (HTAP).", + "TiDB can scale horizontally and provides high availability.", + "Amazon Bedrock allows seamless integration with foundation models.", + "Meta Llama 3 is a powerful model for text generation." ] - # 将嵌入保存到 TiDB + # Save embeddings to TiDB save_entities_with_embedding(session, contents) - # 示例查询 - query = "什么是 TiDB?" + # Example query + query = "What is TiDB?" info_str = " ".join(contents) - # 从 Meta Llama 3 生成结果 + # Generate result from Meta Llama 3 result = generate_result(query, info_str) - print(f"生成的答案:{result}") + print(f"Generated answer: {result}") ``` -2. 保存对 `demo.py` 的所有更改并运行脚本: +2. 保存所有对 `demo.py` 的更改并运行脚本: ```shell python3 demo.py ``` - 预期输出类似于以下内容: + 预期输出类似如下: ``` - 生成的答案: 什么是 TiDB 的主要目的? - TiDB 的主要特性是什么? - TiDB 的主要优势是什么? + Generated answer: What is the main purpose of TiDB? + What are the key features of TiDB? + What are the key benefits of TiDB? ---- - 根据提供的文本,以下是对问题的回答: - 什么是 TiDB? - TiDB 是一个与 MySQL 兼容的分布式 SQL 数据库。 + Based on the provided text, here is the answer to the question: + What is TiDB? + TiDB is a distributed SQL database compatible with MySQL. - ## 步骤 1:理解问题 - 问题询问 TiDB 的定义。 + ## Step 1: Understand the question + The question asks for the definition of TiDB. - ## 步骤 2:识别关键信息 - 文本中提供的关键信息是 TiDB 是一个与 MySQL 兼容的分布式 SQL 数据库。 + ## Step 2: Identify the key information + The key information provided in the text is that TiDB is a distributed SQL database compatible with MySQL. - ## 步骤 3:提供答案 - 根据提供的文本,TiDB 是一个与 MySQL 兼容的分布式 SQL 数据库。 + ## Step 3: Provide the answer + Based on the provided text, TiDB is a distributed SQL database compatible with MySQL. - 最终答案是:TiDB 是一个与 MySQL 兼容的分布式 SQL 数据库。 + The final answer is: TiDB is a distributed SQL database compatible with MySQL. ``` -## 另请参阅 +## 参见 -- [向量数据类型](/tidb-cloud/vector-search-data-types.md) -- [向量搜索索引](/tidb-cloud/vector-search-index.md) +- [向量数据类型](/vector-search/vector-search-data-types.md) +- [向量检索索引](/vector-search/vector-search-index.md) diff --git a/tiflash/create-tiflash-replicas.md b/tiflash/create-tiflash-replicas.md index 1766668cf9bac..8baa7d30339f0 100644 --- a/tiflash/create-tiflash-replicas.md +++ b/tiflash/create-tiflash-replicas.md @@ -5,25 +5,25 @@ summary: 了解如何创建 TiFlash 副本。 # 创建 TiFlash 副本 -本文介绍如何为表和数据库创建 TiFlash 副本,以及设置可用区域以进行副本调度。 +本文介绍如何为表和数据库创建 TiFlash 副本,以及如何为副本调度设置可用区。 ## 为表创建 TiFlash 副本 -在 TiFlash 连接到 TiKV 集群后,默认情况下数据复制尚未开始。你可以通过 MySQL 客户端向 TiDB 发送 DDL 语句,为特定表创建 TiFlash 副本: +TiFlash 连接到 TiKV 集群后,默认不会开始数据复制。你可以通过 MySQL 客户端向 TiDB 发送 DDL 语句,为指定表创建 TiFlash 副本: ```sql ALTER TABLE table_name SET TIFLASH REPLICA count; ``` -上述命令参数说明如下: +上述命令的参数说明如下: -- `count` 表示副本的数量。当值为 `0` 时,表示删除副本。 +- `count` 表示副本数量。当该值为 `0` 时,表示删除副本。 > **Note:** > -> 对于 [{{{ .starter }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier#tidb-cloud-serverless) 集群,TiFlash 副本的 `count` 只能是 `2`。如果你设置为 `1`,系统会自动调整为 `2` 进行执行。如果设置为大于 2 的数字,将会出现关于副本数量的错误。 +> 对于 [TiDB Cloud Serverless](https://docs.pingcap.com/tidbcloud/select-cluster-tier#tidb-cloud-serverless) 集群,TiFlash 副本的 `count` 只能为 `2`。如果你设置为 `1`,会自动调整为 `2` 执行。如果设置为大于 2 的数值,则会报副本数量的错误。 -如果你在同一张表上执行多次 DDL 语句,只有最后一次操作会生效。在以下示例中,针对表 `tpch50` 执行了两次 DDL 操作,但只有第二次(删除副本)生效。 +如果你对同一张表执行多条 DDL 语句,只有最后一条语句会生效。如下例所示,对表 `tpch50` 执行了两条 DDL 语句,但只有第二条(删除副本)生效。 为表创建两个副本: @@ -39,51 +39,51 @@ ALTER TABLE `tpch50`.`lineitem` SET TIFLASH REPLICA 0; **注意事项:** -* 如果通过上述 DDL 语句将表 `t` 复制到 TiFlash,使用以下语句创建的表也会自动复制到 TiFlash: +* 如果表 `t` 通过上述 DDL 语句被同步到 TiFlash,使用如下语句创建的表也会自动同步到 TiFlash: ```sql CREATE TABLE table_name like t; ``` -* 对于版本早于 v4.0.6 的系统,如果在使用 TiDB Lightning 导入数据之前创建 TiFlash 副本,数据导入会失败。必须在为表创建 TiFlash 副本之前先导入数据。 +* 在 v4.0.6 之前的版本中,如果你在使用 TiDB Lightning 导入数据前就创建了 TiFlash 副本,数据导入会失败。你必须先向表中导入数据,再为该表创建 TiFlash 副本。 -* 如果 TiDB 和 TiDB Lightning 版本均为 v4.0.6 及以上,无论表是否已有 TiFlash 副本,都可以使用 TiDB Lightning 导入数据。注意,这可能会减慢 TiDB Lightning 的导入速度,具体取决于 lightning 主机的 NIC 带宽、TiFlash 节点的 CPU 和磁盘负载,以及 TiFlash 副本的数量。 +* 如果 TiDB 和 TiDB Lightning 都是 v4.0.6 或更高版本,无论表是否有 TiFlash 副本,都可以使用 TiDB Lightning 向该表导入数据。但需要注意,这可能会导致 TiDB Lightning 导入过程变慢,具体取决于 lightning 主机的网卡带宽、TiFlash 节点的 CPU 和磁盘负载,以及 TiFlash 副本的数量。 -* 建议不要复制超过 1000 张表,因为这会降低 PD 的调度性能。此限制将在后续版本中取消。 +* 建议不要同步超过 1,000 张表,否则会降低 PD 调度性能。该限制将在后续版本中移除。 -* 在 v5.1 及更高版本中,不再支持为系统表设置副本。在升级集群之前,需要清除相关系统表的副本,否则升级后无法修改系统表的副本设置。 +* 在 v5.1 及以上版本,不再支持为系统表设置副本。在升级集群前,你需要清除相关系统表的副本。否则,升级集群后将无法修改系统表的副本设置。 -* 当前,当你使用 TiCDC 将表复制到下游 TiDB 集群时,不支持为表创建 TiFlash 副本,也就是说,TiCDC 不支持复制与 TiFlash 相关的 DDL 语句,例如: +* 当前,使用 TiCDC 将表同步到下游 TiDB 集群时,不支持为这些表创建 TiFlash 副本,即 TiCDC 不支持同步与 TiFlash 相关的 DDL 语句,例如: * `ALTER TABLE table_name SET TIFLASH REPLICA count;` * `ALTER DATABASE db_name SET TIFLASH REPLICA count;` -### 检查复制进度 +### 查看同步进度 -你可以使用以下语句检查某个表的 TiFlash 副本状态。通过 `WHERE` 子句指定表名。如果去掉 `WHERE` 子句,则会检查所有表的副本状态。 +你可以使用以下语句查看指定表的 TiFlash 副本状态。通过 `WHERE` 子句指定表名。如果去掉 `WHERE` 子句,则会查看所有表的副本状态。 ```sql SELECT * FROM information_schema.tiflash_replica WHERE TABLE_SCHEMA = '' and TABLE_NAME = ''; ``` -在上述语句的结果中: +上述语句的结果中: -* `AVAILABLE` 表示该表的 TiFlash 副本是否可用。`1` 表示可用,`0` 表示不可用。一旦副本变为可用,该状态不会变化。如果你用 DDL 语句修改副本数量,副本状态会重新计算。 -* `PROGRESS` 表示复制的进度。值在 `0.0` 到 `1.0` 之间。`1` 表示至少有一个副本已完成复制。 +* `AVAILABLE` 表示该表的 TiFlash 副本是否可用。`1` 表示可用,`0` 表示不可用。一旦副本变为可用,该状态不会再变化。如果你通过 DDL 语句修改副本数量,则同步状态会重新计算。 +* `PROGRESS` 表示同步进度。取值范围为 `0.0` 到 `1.0`。`1` 表示至少有一个副本已同步完成。 ## 为数据库创建 TiFlash 副本 -与为表创建 TiFlash 副本类似,你可以通过 MySQL 客户端向 TiDB 发送 DDL 语句,为某个数据库中的所有表创建 TiFlash 副本: +与为表创建 TiFlash 副本类似,你可以通过 MySQL 客户端向 TiDB 发送 DDL 语句,为指定数据库下的所有表创建 TiFlash 副本: ```sql ALTER DATABASE db_name SET TIFLASH REPLICA count; ``` -在此语句中,`count` 表示副本数量。设置为 `0` 表示删除副本。 +在该语句中,`count` 表示副本数量。当你设置为 `0` 时,表示删除副本。 示例: -- 为数据库 `tpch50` 中的所有表创建两个副本: +- 为数据库 `tpch50` 下的所有表创建两个副本: ```sql ALTER DATABASE `tpch50` SET TIFLASH REPLICA 2; @@ -97,34 +97,34 @@ ALTER DATABASE db_name SET TIFLASH REPLICA count; > **Note:** > -> - 该语句实际上会执行一系列资源密集型的 DDL 操作。如果在执行过程中中断,已执行的操作不会回滚,未执行的操作也不会继续。 +> - 该语句实际会执行一系列 DDL 操作,资源消耗较大。如果执行过程中被中断,已执行的操作不会回滚,未执行的操作也不会继续执行。 > -> - 执行完毕后,在所有表都完成复制之前,不要再为该数据库设置 TiFlash 副本数量或进行其他 DDL 操作,否则可能出现意料之外的结果,包括: -> - 如果你将副本数设置为 2,然后在所有表完成复制之前将其改为 1,所有表的最终 TiFlash 副本数不一定是 1 或 2。 -> - 执行完毕后,如果在复制完成之前在该数据库中创建新表,可能会或不会为这些新表创建 TiFlash 副本。 -> - 执行完毕后,如果在复制完成之前为数据库中的表添加索引,操作可能会挂起,直到索引添加完成后才会继续。 +> - 执行该语句后,在**所有表都同步完成之前**,不要再设置 TiFlash 副本数量或对该数据库执行 DDL 操作。否则,可能会出现以下异常情况: +> - 如果你将 TiFlash 副本数设置为 2,但在所有表同步完成前又改为 1,则所有表的最终 TiFlash 副本数不一定是 1 或 2。 +> - 执行该语句后,如果在语句执行完成前在该数据库中创建新表,这些新表**可能会**也可能不会被创建 TiFlash 副本。 +> - 执行该语句后,如果在语句执行完成前为数据库中的表添加索引,语句可能会卡住,直到索引添加完成后才会继续。 > -> - 如果在操作完成后在该数据库中创建新表,TiFlash 副本不会自动为这些新表创建。 +> - 如果你在语句执行**完成后**再在该数据库中创建新表,这些新表不会自动创建 TiFlash 副本。 > -> - 该语句会跳过系统表、视图、临时表以及字符集不被 TiFlash 支持的表。 +> - 该语句会跳过系统表、视图、临时表以及 TiFlash 不支持字符集的表。 -> - 你可以通过设置 [`tidb_batch_pending_tiflash_count`](/system-variables.md#tidb_batch_pending_tiflash_count-new-in-v60) 系统变量,控制在执行过程中允许保持不可用状态的表的最大数量。降低此值有助于减轻复制过程中的集群压力。注意,此限制不是实时的,设置后不可用表的数量仍可能超过限制。 +> - 你可以通过设置 [`tidb_batch_pending_tiflash_count`](/system-variables.md#tidb_batch_pending_tiflash_count-new-in-v60) 系统变量,控制执行过程中允许处于不可用状态的表的数量。降低该值有助于减少同步过程对集群的压力。需要注意的是,该限制并非实时生效,因此设置后仍有可能出现不可用表数量超过限制的情况。 -### 检查复制进度 +### 查看同步进度 -与为表创建 TiFlash 副本类似,DDL 操作成功执行并不代表复制已完成。你可以执行以下 SQL 语句,检查目标表的复制进度: +与为表创建 TiFlash 副本类似,DDL 语句执行成功并不代表同步已完成。你可以执行以下 SQL 语句,查看目标表的同步进度: ```sql SELECT * FROM information_schema.tiflash_replica WHERE TABLE_SCHEMA = ''; ``` -要检查数据库中没有 TiFlash 副本的表,可以执行: +如需查看数据库中未创建 TiFlash 副本的表,可以执行以下 SQL 语句: ```sql SELECT TABLE_NAME FROM information_schema.tables where TABLE_SCHEMA = "" and TABLE_NAME not in (SELECT TABLE_NAME FROM information_schema.tiflash_replica where TABLE_SCHEMA = ""); ``` -## 加快 TiFlash 复制速度 +## 加速 TiFlash 副本同步 @@ -134,56 +134,69 @@ SELECT TABLE_NAME FROM information_schema.tables where TABLE_SCHEMA = " -在添加 TiFlash 副本之前,每个 TiKV 实例会进行全表扫描,并将扫描到的数据作为“快照”发送给 TiFlash,以创建副本。默认情况下,TiFlash 副本的添加速度较慢,资源使用较少,以尽量减少对线上服务的影响。如果你的 TiKV 和 TiFlash 节点有剩余的 CPU 和磁盘 IO 资源,可以通过以下步骤加快 TiFlash 复制速度。 +当你执行以下任一操作时,TiDB 集群会触发 TiFlash 副本的同步过程: -1. 临时提高每个 TiKV 和 TiFlash 实例的快照写入速度限制,使用 [动态配置 SQL 语句](https://docs.pingcap.com/tidb/stable/dynamic-config): +* 为表添加 TiFlash 副本。 +* 新增 TiFlash 实例,导致 PD 将 TiFlash 副本从原有实例调度到新 TiFlash 实例。 + +在此过程中,每个 TiKV 实例会对全表进行扫描,并将扫描到的数据快照发送给 TiFlash 以创建副本。默认情况下,为了尽量减少对 TiKV 和 TiFlash 生产负载的影响,TiFlash 以较慢的速率添加副本,并使用较少的资源。如果你的 TiKV 和 TiFlash 节点有充足的 CPU 和磁盘 I/O 资源,可以通过以下步骤加速 TiFlash 副本同步。 + +1. 通过 [动态配置 SQL 语句](https://docs.pingcap.com/tidb/stable/dynamic-config) 临时提升每个 TiKV 和 TiFlash 实例的快照写入速度上限: ```sql - -- 两个配置的默认值都是 100MiB,即写入快照的最大磁盘带宽不超过 100MiB/s。 + -- 这两个配置的默认值均为 100MiB,即写入快照的最大磁盘带宽不超过 100MiB/s。 SET CONFIG tikv `server.snap-io-max-bytes-per-sec` = '300MiB'; SET CONFIG tiflash `raftstore-proxy.server.snap-io-max-bytes-per-sec` = '300MiB'; ``` - 执行完这些 SQL 语句后,配置立即生效,无需重启集群。但由于复制速度仍受 PD 全局限制,暂时无法观察到加速效果。 + 执行上述 SQL 语句后,配置会立即生效,无需重启集群。但由于同步速度仍受 PD 全局限制,目前还无法观察到加速效果。 -2. 使用 [PD Control](https://docs.pingcap.com/tidb/stable/pd-control) 逐步放宽新副本的速度限制。 +2. 使用 [PD Control](https://docs.pingcap.com/tidb/stable/pd-control) 逐步放宽副本调度速率限制。 - 默认新副本速度限制为 30,意味着每分钟大约添加 30 个 Regions 的 TiFlash 副本。执行以下命令可以将限制调整为 60,速度翻倍: + 新副本的默认速率限制为 30,即每分钟每个 TiFlash 实例大约有 30 个 Region 添加或移除 TiFlash 副本。执行以下命令可将所有 TiFlash 实例的限制调整为 60,速度提升一倍: ```shell tiup ctl:v pd -u http://:2379 store limit all engine tiflash 60 add-peer ``` - > 在上述命令中,将 `v` 替换为实际的集群版本,例如 `{{{ .tidb-version }}}`,将 `:2379` 替换为任意 PD 节点的地址。例如: + > 在上述命令中,需要将 `v` 替换为实际的集群版本号,如 `v8.5.2`,将 `:2379` 替换为任意 PD 节点的地址。例如: > > ```shell - > tiup ctl:{{{ .tidb-version }}} pd -u http://192.168.1.4:2379 store limit all engine tiflash 60 add-peer + > tiup ctl:v8.5.2 pd -u http://192.168.1.4:2379 store limit all engine tiflash 60 add-peer > ``` - 几分钟后,你会观察到 TiFlash 节点的 CPU 和磁盘 IO 资源使用显著增加,副本创建速度加快。同时,TiKV 节点的 CPU 和磁盘 IO 资源使用也会增加。 + 如果集群中旧 TiFlash 节点上有大量 Region,PD 需要将它们重新平衡到新 TiFlash 节点。你需要相应调整 `remove-peer` 的限制。 - 如果此时 TiKV 和 TiFlash 节点仍有剩余资源,且线上服务延迟未明显增加,可以进一步放宽限制,例如将速度提高三倍: + ```shell + tiup ctl:v pd -u http://:2379 store limit all engine tiflash 60 remove-peer + ``` + + 几分钟后,你会观察到 TiFlash 节点的 CPU 和磁盘 IO 资源使用率明显上升,TiFlash 副本同步速度加快。同时,TiKV 节点的 CPU 和磁盘 IO 资源使用率也会提升。 + + 如果此时 TiKV 和 TiFlash 节点仍有剩余资源,且你的在线服务延迟没有明显增加,可以进一步放宽限制,例如将速度提升至原来的三倍: ```shell tiup ctl:v pd -u http://:2379 store limit all engine tiflash 90 add-peer + tiup ctl:v pd -u http://:2379 store limit all engine tiflash 90 remove-peer ``` -3. 副本创建完成后,恢复默认配置以减轻线上服务压力。 +3. TiFlash 副本同步完成后,恢复默认配置以减少对在线服务的影响。 - 执行以下 PD Control 命令,恢复默认的新副本速度限制: + 执行以下 PD Control 命令,恢复副本调度速率的默认限制: ```shell tiup ctl:v pd -u http://:2379 store limit all engine tiflash 30 add-peer + tiup ctl:v pd -u http://:2379 store limit all engine tiflash 30 remove-peer ``` - 执行以下 SQL 语句,恢复默认的快照写入速度限制: + 执行以下 SQL 语句,恢复快照写入速率的默认限制: ```sql SET CONFIG tikv `server.snap-io-max-bytes-per-sec` = '100MiB'; SET CONFIG tiflash `raftstore-proxy.server.snap-io-max-bytes-per-sec` = '100MiB'; ``` -## 设置可用区域 +## 设置可用区 @@ -193,14 +206,14 @@ SELECT TABLE_NAME FROM information_schema.tables where TABLE_SCHEMA = " -在配置副本时,如果需要将 TiFlash 副本分布到多个数据中心以实现灾备,可以按照以下步骤配置可用区域: +在配置副本时,如果你需要将 TiFlash 副本分布到多个数据中心以实现容灾,可以按照以下步骤配置可用区: 1. 在集群配置文件中为 TiFlash 节点指定标签。 ``` tiflash_servers: - host: 172.16.5.81 - logger.level: "info" + logger.level: "info" learner_config: server.labels: zone: "z1" @@ -218,7 +231,7 @@ SELECT TABLE_NAME FROM information_schema.tables where TABLE_SCHEMA = " zone: "z2" ``` - 注意,早期版本中的 `flash.proxy.labels` 配置不能正确处理可用区域名称中的特殊字符。建议使用 `learner_config` 中的 `server.labels` 来配置可用区域的名称。 + 需要注意,早期版本中的 `flash.proxy.labels` 配置无法正确处理可用区名称中的特殊字符。建议使用 `learner_config` 下的 `server.labels` 配置可用区名称。 2. 启动集群后,在创建副本时指定标签。 @@ -232,7 +245,7 @@ SELECT TABLE_NAME FROM information_schema.tables where TABLE_SCHEMA = " ALTER TABLE t SET TIFLASH REPLICA 2 LOCATION LABELS "zone"; ``` -3. PD 根据标签调度副本。在此示例中,PD 会将表 `t` 的两个副本分别调度到两个可用区域。你可以使用 pd-ctl 查看调度情况。 +3. PD 会根据标签调度副本。在本例中,PD 会将表 `t` 的两个副本分别调度到两个可用区。你可以使用 pd-ctl 查看调度情况。 ```shell > tiup ctl:v pd -u http://:2379 store @@ -265,8 +278,8 @@ SELECT TABLE_NAME FROM information_schema.tables where TABLE_SCHEMA = " -关于使用标签调度副本的更多信息,参见 [Schedule Replicas by Topology Labels](/schedule-replicas-by-topology-labels.md)、[Multiple Data Centers in One City Deployment](/multi-data-centers-in-one-city-deployment.md) 和 [Three Data Centers in Two Cities Deployment](/three-data-centers-in-two-cities-deployment.md)。 +关于使用标签调度副本的更多信息,参见 [通过拓扑标签调度副本](/schedule-replicas-by-topology-labels.md)、[同城多数据中心部署](/multi-data-centers-in-one-city-deployment.md) 和 [两地三中心部署](/three-data-centers-in-two-cities-deployment.md)。 -TiFlash 支持为不同区域配置副本选择策略。更多信息请参见 [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read-new-in-v730)。 +TiFlash 支持为不同可用区配置副本选择策略。更多信息,参见 [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read-new-in-v730)。 \ No newline at end of file diff --git a/tiflash/tiflash-overview.md b/tiflash/tiflash-overview.md index 8172147001ad1..6571781a35f21 100644 --- a/tiflash/tiflash-overview.md +++ b/tiflash/tiflash-overview.md @@ -5,136 +5,136 @@ summary: 了解 TiFlash 的架构和关键特性。 # TiFlash 概述 -[TiFlash](https://github.com/pingcap/tiflash) 是使 TiDB 本质上成为混合事务/分析处理(HTAP)数据库的关键组件。作为 TiKV 的列存储扩展,TiFlash 提供了良好的隔离级别和强一致性保证。 +[TiFlash](https://github.com/pingcap/tiflash) 是使 TiDB 成为混合事务/分析处理(HTAP)数据库的关键组件。作为 TiKV 的列式存储扩展,TiFlash 同时提供了良好的隔离级别和强一致性保证。 -在 TiFlash 中,列副本是根据 Raft Learner 共识算法异步复制的。当读取这些副本时,通过验证 Raft 索引和多版本并发控制(MVCC)实现快照隔离级别的一致性。 +在 TiFlash 中,列式副本是根据 Raft Learner 共识算法进行异步复制的。当读取这些副本时,通过校验 Raft 索引和多版本并发控制(MVCC),实现了快照隔离级别的一致性。 -使用 TiDB Cloud,你可以根据你的 HTAP 工作负载,轻松创建一个 HTAP 集群,指定一个或多个 TiFlash 节点。如果在创建集群时未指定 TiFlash 节点数,或者你想添加更多的 TiFlash 节点,可以通过 [扩展集群](/tidb-cloud/scale-tidb-cluster.md) 来调整节点数。 +通过 TiDB Cloud,你可以根据 HTAP 工作负载轻松创建包含一个或多个 TiFlash 节点的 HTAP 集群。如果在创建集群时未指定 TiFlash 节点数量,或者你想要添加更多 TiFlash 节点,可以通过[扩容集群](/tidb-cloud/scale-tidb-cluster.md)来更改节点数量。 ## 架构 -![TiFlash 架构](/media/tidb-storage-architecture-1.png) +![TiFlash Architecture](/media/tidb-storage-architecture-1.png) -上图是 TiDB 在其 HTAP 形式下的架构,包括 TiFlash 节点。 +上图展示了包含 TiFlash 节点的 HTAP 形态下的 TiDB 架构。 -TiFlash 提供列存储,底层由 ClickHouse 高效实现的协处理器层支持。与 TiKV 类似,TiFlash 也拥有 Multi-Raft 系统,支持以 Region 为单位进行数据复制和分布(详见 [Data Storage](https://www.pingcap.com/blog/tidb-internal-data-storage/))。 +TiFlash 提供列式存储,并通过 ClickHouse 高效实现了一层协处理器。与 TiKV 类似,TiFlash 也拥有 Multi-Raft 系统,支持以 Region 为单位进行数据复制和分布(详见 [数据存储](https://www.pingcap.com/blog/tidb-internal-data-storage/))。 -TiFlash 以低成本进行 TiKV 节点中的数据实时复制,不阻塞 TiKV 的写入。同时,提供与 TiKV 相同的读取一致性,确保读取到最新的数据。TiFlash 中的 Region 副本在逻辑上与 TiKV 中的相同,并会随着 TiKV 中的 Leader 副本一起拆分和合并。 +TiFlash 能以低成本实时复制 TiKV 节点中的数据,不会阻塞 TiKV 的写入操作。同时,TiFlash 提供与 TiKV 相同的读取一致性,并确保读取到最新数据。TiFlash 中的 Region 副本在逻辑上与 TiKV 中的副本完全一致,并会与 TiKV 的 Leader 副本同时进行分裂和合并。 -在 Linux AMD64 架构下部署 TiFlash 时,CPU 必须支持 AVX2 指令集。确保执行 `grep avx2 /proc/cpuinfo` 有输出。在 Linux ARM64 架构下部署 TiFlash 时,CPU 必须支持 ARMv8 指令集架构。确保执行 `grep 'crc32' /proc/cpuinfo | grep 'asimd'` 有输出。通过使用指令集扩展,TiFlash 的向量化引擎可以提供更好的性能。 +在 Linux AMD64 架构上部署 TiFlash 时,CPU 必须支持 AVX2 指令集。你可以通过 `grep avx2 /proc/cpuinfo` 是否有输出进行验证。对于 Linux ARM64 架构,CPU 必须支持 ARMv8 指令集架构。你可以通过 `grep 'crc32' /proc/cpuinfo | grep 'asimd'` 是否有输出进行验证。使用这些指令集扩展可以让 TiFlash 的向量化引擎获得更好的性能。 -TiFlash 兼容 TiDB 和 TiSpark,允许你在这两种计算引擎之间自由选择。 +TiFlash 同时兼容 TiDB 和 TiSpark,这使你可以自由选择这两种计算引擎。 -建议将 TiFlash 部署在不同于 TiKV 的节点上,以确保工作负载隔离。如果不需要业务隔离,也可以将 TiFlash 和 TiKV 部署在同一节点。 +建议将 TiFlash 部署在与 TiKV 不同的节点上,以保证负载隔离。如果没有业务隔离需求,也可以将 TiFlash 和 TiKV 部署在同一节点。 -目前,数据不能直接写入 TiFlash。你需要在 TiKV 中写入数据,然后复制到 TiFlash,因为 TiFlash 以 Learner 角色连接到 TiDB 集群。TiFlash 支持以表为单位进行数据复制,但部署后默认不复制任何数据。若要复制特定表的数据,请参见 [Create TiFlash replicas for tables](/tiflash/create-tiflash-replicas.md#create-tiflash-replicas-for-tables)。 +目前,数据不能直接写入 TiFlash。你需要先将数据写入 TiKV,然后再复制到 TiFlash,因为 TiFlash 以 Learner 角色接入 TiDB 集群。TiFlash 支持以表为单位进行数据复制,但部署后默认不会复制任何数据。要复制指定表的数据,请参见 [为表创建 TiFlash 副本](/tiflash/create-tiflash-replicas.md#create-tiflash-replicas-for-tables)。 -TiFlash 由两个主要组件组成:列存储组件和 TiFlash 代理组件。TiFlash 代理组件负责使用 Multi-Raft 共识算法进行通信。 +TiFlash 主要由两部分组成:列式存储组件和 TiFlash proxy 组件。TiFlash proxy 组件负责 Multi-Raft 共识算法的通信。 -在收到创建表副本的 DDL 命令后,TiDB 会自动在 PD 中创建相应的 [placement rules](https://docs.pingcap.com/tidb/stable/configure-placement-rules),然后 PD 根据这些规则进行数据调度。 +当 TiFlash 收到为某张表创建副本的 DDL 命令后,TiDB 会自动在 PD 中创建相应的 [placement rules](https://docs.pingcap.com/tidb/stable/configure-placement-rules),然后 PD 会根据这些规则进行相应的数据调度。 ## 关键特性 -TiFlash 具有以下关键特性: +TiFlash 具备以下关键特性: -- [Asynchronous replication](#asynchronous-replication) -- [Consistency](#consistency) -- [Intelligent choice](#intelligent-choice) -- [Computing acceleration](#computing-acceleration) +- [异步复制](#asynchronous-replication) +- [一致性](#consistency) +- [智能选择](#intelligent-choice) +- [计算加速](#computing-acceleration) -### Asynchronous replication +### 异步复制 -TiFlash 中的副本以特殊角色 Raft Learner 异步复制。这意味着当 TiFlash 节点宕机或出现高网络延迟时,TiKV 中的应用仍能正常进行。 +TiFlash 中的副本以 Raft Learner 这一特殊角色进行异步复制。这意味着当 TiFlash 节点宕机或出现高网络延迟时,TiKV 中的应用仍可正常运行。 -这种复制机制继承了 TiKV 的两个优势:自动负载均衡和高可用性。 +这种复制机制继承了 TiKV 的两个优点:自动负载均衡和高可用性。 -- TiFlash 不依赖额外的复制通道,而是以多对多的方式直接从 TiKV 接收数据。 -- 只要 TiKV 中的数据未丢失,你可以随时在 TiFlash 中恢复副本。 +- TiFlash 不依赖额外的复制通道,而是直接以多对多的方式从 TiKV 接收数据。 +- 只要 TiKV 中的数据未丢失,你可以随时恢复 TiFlash 中的副本。 -### Consistency +### 一致性 -TiFlash 提供与 TiKV 相同的快照隔离级别的一致性,确保读取到最新数据,也就是说可以读取之前在 TiKV 中写入的数据。这一一致性通过验证数据复制进度实现。 +TiFlash 提供与 TiKV 相同的快照隔离级别一致性,并确保读取到最新数据,这意味着你可以读取之前写入 TiKV 的数据。这种一致性通过校验数据复制进度来实现。 -每次 TiFlash 接收到读取请求时,Region 副本会向 Leader 副本发送一个进度验证请求(轻量级 RPC 请求)。TiFlash 只有在当前复制进度包含了读取请求时间戳所覆盖的数据后,才会执行读取操作。 +每当 TiFlash 收到读取请求时,Region 副本会向 Leader 副本发送进度校验请求(轻量级的 RPC 请求)。只有当当前复制进度包含了读取请求时间戳所覆盖的数据后,TiFlash 才会执行读取操作。 -### Intelligent choice +### 智能选择 -TiDB 可以自动选择使用 TiFlash(列存)或 TiKV(行存),或在一次查询中同时使用两者,以确保最佳性能。 +TiDB 可以自动选择使用 TiFlash(列存)或 TiKV(行存),也可以在同一个查询中同时使用两者,以确保最佳性能。 -这一选择机制类似于 TiDB 选择不同索引执行查询的方式。TiDB 优化器会根据读取成本的统计信息做出合理选择。 +这种选择机制类似于 TiDB 选择不同索引来执行查询。TiDB 优化器会根据读取成本的统计信息做出合适的选择。 -### Computing acceleration +### 计算加速 TiFlash 通过两种方式加速 TiDB 的计算: -- 列存储引擎在执行读取操作时更高效。 -- TiFlash 分担了部分 TiDB 的计算工作负载。 +- 列式存储引擎在执行读取操作时更高效。 +- TiFlash 分担了 TiDB 的部分计算负载。 -TiFlash 以与 TiKV 协处理器类似的方式共享计算工作负载:TiDB 将存储层可以完成的计算下推。是否支持下推取决于 TiFlash 的支持情况。详见 [Supported pushdown calculations](/tiflash/tiflash-supported-pushdown-calculations.md)。 +TiFlash 分担计算负载的方式与 TiKV Coprocessor 相同:TiDB 会将可以在存储层完成的计算下推。能否下推取决于 TiFlash 的支持情况。详情请参见 [支持的下推计算](/tiflash/tiflash-supported-pushdown-calculations.md)。 ## 使用 TiFlash -部署完成后,数据复制不会自动开始。你需要手动指定要复制的表。 +TiFlash 部署完成后,数据复制不会自动开始。你需要手动指定需要复制的表。 -你可以使用 TiDB 读取 TiFlash 副本进行中等规模的分析处理,或使用 TiSpark 读取 TiFlash 副本进行大规模分析处理,具体取决于你的需求。详见: +你可以根据自身需求,使用 TiDB 读取 TiFlash 副本以进行中等规模的分析处理,或使用 TiSpark 读取 TiFlash 副本以进行大规模分析处理。详见以下章节: -你可以使用 TiDB 读取 TiFlash 副本进行分析处理。详见: +你可以使用 TiDB 读取 TiFlash 副本以进行分析处理。详见以下章节: -- [Create TiFlash Replicas](/tiflash/create-tiflash-replicas.md) -- [Use TiDB to Read TiFlash Replicas](/tiflash/use-tidb-to-read-tiflash.md) +- [创建 TiFlash 副本](/tiflash/create-tiflash-replicas.md) +- [使用 TiDB 读取 TiFlash 副本](/tiflash/use-tidb-to-read-tiflash.md) -- [Use TiSpark to Read TiFlash Replicas](/tiflash/use-tispark-to-read-tiflash.md) +- [使用 TiSpark 读取 TiFlash 副本](/tiflash/use-tispark-to-read-tiflash.md) -- [Use MPP Mode](/tiflash/use-tiflash-mpp-mode.md) +- [使用 MPP 模式](/tiflash/use-tiflash-mpp-mode.md) -想要体验从导入数据到查询的完整流程(如 TPC-H 数据集),请参考 [Quick Start with TiDB HTAP](/quick-start-with-htap.md)。 +如需体验从导入数据到在 TPC-H 数据集上查询的完整流程,请参见 [TiDB HTAP 快速上手](/quick-start-with-htap.md)。 -## 相关链接 +## 参见 -- 若要部署带有 TiFlash 节点的新集群,参见 [Deploy a TiDB Cluster Using TiUP](/production-deployment-using-tiup.md)。 -- 若要在已部署的集群中添加 TiFlash 节点,参见 [Scale out a TiFlash cluster](/scale-tidb-using-tiup.md#scale-out-a-tiflash-cluster)。 -- [Maintain a TiFlash cluster](/tiflash/maintain-tiflash.md)。 -- [Tune TiFlash performance](/tiflash/tune-tiflash-performance.md)。 -- [Configure TiFlash](/tiflash/tiflash-configuration.md)。 -- [Monitor the TiFlash cluster](/tiflash/monitor-tiflash.md)。 -- 了解 [TiFlash alert rules](/tiflash/tiflash-alert-rules.md)。 -- [Troubleshoot a TiFlash cluster](/tiflash/troubleshoot-tiflash.md)。 -- [Supported push-down calculations in TiFlash](/tiflash/tiflash-supported-pushdown-calculations.md) -- [Data validation in TiFlash](/tiflash/tiflash-data-validation.md) -- [TiFlash compatibility](/tiflash/tiflash-compatibility.md) +- 如需部署包含 TiFlash 节点的新集群,请参见 [使用 TiUP 部署 TiDB 集群](/production-deployment-using-tiup.md)。 +- 如需在已部署集群中添加 TiFlash 节点,请参见 [扩容 TiFlash 集群](/scale-tidb-using-tiup.md#scale-out-a-tiflash-cluster)。 +- [维护 TiFlash 集群](/tiflash/maintain-tiflash.md)。 +- [TiFlash 性能调优](/tiflash/tune-tiflash-performance.md)。 +- [TiFlash 配置](/tiflash/tiflash-configuration.md)。 +- [监控 TiFlash 集群](/tiflash/monitor-tiflash.md)。 +- 了解 [TiFlash 告警规则](/tiflash/tiflash-alert-rules.md)。 +- [排查 TiFlash 集群问题](/tiflash/troubleshoot-tiflash.md)。 +- [TiFlash 支持的下推计算](/tiflash/tiflash-supported-pushdown-calculations.md) +- [TiFlash 数据校验](/tiflash/tiflash-data-validation.md) +- [TiFlash 兼容性](/tiflash/tiflash-compatibility.md) -- [Tune TiFlash performance](/tiflash/tune-tiflash-performance.md)。 -- [Supported push-down calculations in TiFlash](/tiflash/tiflash-supported-pushdown-calculations.md) -- [TiFlash compatibility](/tiflash/tiflash-compatibility.md) +- [TiFlash 性能调优](/tiflash/tune-tiflash-performance.md)。 +- [TiFlash 支持的下推计算](/tiflash/tiflash-supported-pushdown-calculations.md) +- [TiFlash 兼容性](/tiflash/tiflash-compatibility.md) - \ No newline at end of file + diff --git a/variables.json b/variables.json index 6d88be3715895..7e37188aeb836 100644 --- a/variables.json +++ b/variables.json @@ -5,5 +5,6 @@ "self-managed": "TiDB Self-Managed", "starter": "TiDB Cloud Serverless", "essential": "TiDB Cloud Essential", - "dedicated": "TiDB Cloud Dedicated" + "dedicated": "TiDB Cloud Dedicated", + "console-url": "tidbcloud.com" }