From eda634b2d068395b4cac2a81f01e74c9f3f5579d Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 3 Nov 2025 11:13:31 +0800 Subject: [PATCH 1/7] Add temp.md --- temp.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 temp.md diff --git a/temp.md b/temp.md new file mode 100644 index 000000000000..af27ff4986a7 --- /dev/null +++ b/temp.md @@ -0,0 +1 @@ +This is a test file. \ No newline at end of file From 08c15762b6d543f2505105a29bcbff9ec2c0fe1d Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 3 Nov 2025 11:13:35 +0800 Subject: [PATCH 2/7] Delete temp.md --- temp.md | 1 - 1 file changed, 1 deletion(-) delete mode 100644 temp.md diff --git a/temp.md b/temp.md deleted file mode 100644 index af27ff4986a7..000000000000 --- a/temp.md +++ /dev/null @@ -1 +0,0 @@ -This is a test file. \ No newline at end of file From bdef663e1d453ffdaf59f1e74856264989eab170 Mon Sep 17 00:00:00 2001 From: qiancai Date: Mon, 3 Nov 2025 11:32:31 +0800 Subject: [PATCH 3/7] add translation --- sql-plan-management.md | 16 ++++++++++++++++ system-variables.md | 9 +++++++++ 2 files changed, 25 insertions(+) diff --git a/sql-plan-management.md b/sql-plan-management.md index 12a565b1a9df..4fe270b0b26f 100644 --- a/sql-plan-management.md +++ b/sql-plan-management.md @@ -472,6 +472,22 @@ SHOW binding_cache status; 1 row in set (0.00 sec) ``` +### 绑定使用情况统计 + +从 v8.5.4 和 v9.0.0 开始,TiDB 引入了 [`tidb_enable_binding_usage`](/system-variables.md#tidb_enable_binding_usage-new-in-v854-and-v900) 系统变量,用于控制是否收集 SQL 执行计划绑定的使用统计信息。 + +当此变量设置为 `ON` 时,TiDB 会每六个小时将绑定使用情况的统计信息写入 `mysql.bind_info` 表。 你可以使用这些统计信息来识别未使用的绑定,并优化绑定管理策略,例如删除不再需要的绑定或调整现有绑定以提高查询性能。 + +```sql +SELECT sql_digest, last_used_date FROM mysql.bind_info LIMIT 1; + ++------------------------------------------------------------------+----------------+ +| sql_digest | last_used_date | ++------------------------------------------------------------------+----------------+ +| 5d3975ef2160c1e0517353798dac90a9914095d82c025e7cd97bd55aeb804798 | 2026-10-21 | ++------------------------------------------------------------------+----------------+ +``` + ## 利用 Statement Summary 表获取需要绑定的查询 [Statement Summary](/statement-summary-tables.md) 的表中存放了近期的 SQL 相关的执行信息,如延迟、执行次数、对应计划等。你可以通过查询 Statement Summary 表得到符合条件查询的 `plan_digest`,然后[根据历史执行计划创建绑定](/sql-plan-management.md#根据历史执行计划创建绑定)。 diff --git a/system-variables.md b/system-variables.md index 93952c7a0e45..ec0eed2655a5 100644 --- a/system-variables.md +++ b/system-variables.md @@ -1765,6 +1765,15 @@ mysql> SELECT job_info FROM mysql.analyze_jobs ORDER BY end_time DESC LIMIT 1; - 默认值:`OFF` - 该变量控制是否启用废弃的 batch-dml 特性。启用该变量后,部分语句可能会被拆分为多个事务执行,这是非原子性的,使用时需谨慎。使用 batch-dml 时,必须确保正在操作的数据没有并发操作。要使该变量生效,还需要为 `tidb_batch_dml_size` 指定一个正值,并启用 `tidb_batch_insert` 和 `tidb_batch_delete` 中的至少一个。 +### `tidb_enable_binding_usage` 从 v8.5.4 和 v9.0.0 版本开始引入 + +- 作用域: GLOBAL +- 是否持久化到集群: 是 +- 是否受 Hint [SET_VAR](/optimizer-hints.md#set_varvar_namevar_value) 控制:否 +- 类型:布尔型 +- 默认值:`ON` +- 该变量控制是否收集 SQL 执行计划绑定的使用统计信息。当设置为 `ON` 时,TiDB 会每六个小时将 SQL 执行计划绑定的使用统计信息写入 `mysql.bind_info` 表。 + ### `tidb_enable_cascades_planner` > **警告:** From 6bcdfd328612c9edc631fda613567ad05ff81cff Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 3 Nov 2025 11:47:00 +0800 Subject: [PATCH 4/7] Update sql-plan-management.md --- sql-plan-management.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql-plan-management.md b/sql-plan-management.md index 4fe270b0b26f..6d51e4d767e4 100644 --- a/sql-plan-management.md +++ b/sql-plan-management.md @@ -484,7 +484,7 @@ SELECT sql_digest, last_used_date FROM mysql.bind_info LIMIT 1; +------------------------------------------------------------------+----------------+ | sql_digest | last_used_date | +------------------------------------------------------------------+----------------+ -| 5d3975ef2160c1e0517353798dac90a9914095d82c025e7cd97bd55aeb804798 | 2026-10-21 | +| 5d3975ef2160c1e0517353798dac90a9914095d82c025e7cd97bd55aeb804798 | 2025-10-21 | +------------------------------------------------------------------+----------------+ ``` From 79b1c75c31347f57ab873b611476f929a78a02e9 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 3 Nov 2025 17:25:28 +0800 Subject: [PATCH 5/7] Update sql-plan-management.md Co-authored-by: Aolin --- sql-plan-management.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql-plan-management.md b/sql-plan-management.md index 6d51e4d767e4..1f820a86a612 100644 --- a/sql-plan-management.md +++ b/sql-plan-management.md @@ -476,7 +476,7 @@ SHOW binding_cache status; 从 v8.5.4 和 v9.0.0 开始,TiDB 引入了 [`tidb_enable_binding_usage`](/system-variables.md#tidb_enable_binding_usage-new-in-v854-and-v900) 系统变量,用于控制是否收集 SQL 执行计划绑定的使用统计信息。 -当此变量设置为 `ON` 时,TiDB 会每六个小时将绑定使用情况的统计信息写入 `mysql.bind_info` 表。 你可以使用这些统计信息来识别未使用的绑定,并优化绑定管理策略,例如删除不再需要的绑定或调整现有绑定以提高查询性能。 +当此变量设置为 `ON` 时,TiDB 会每六个小时将绑定使用情况的统计信息写入 `mysql.bind_info` 表。你可以使用这些统计信息来识别未使用的绑定,并优化绑定管理策略,例如删除不再需要的绑定或调整现有绑定以提高查询性能。 ```sql SELECT sql_digest, last_used_date FROM mysql.bind_info LIMIT 1; From 485dcc902ffe251e68d059a4fde03d1a74d7ddee Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 6 Nov 2025 14:10:09 +0800 Subject: [PATCH 6/7] Update sql-plan-management.md --- sql-plan-management.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql-plan-management.md b/sql-plan-management.md index 1f820a86a612..7ae85b9b5346 100644 --- a/sql-plan-management.md +++ b/sql-plan-management.md @@ -474,7 +474,7 @@ SHOW binding_cache status; ### 绑定使用情况统计 -从 v8.5.4 和 v9.0.0 开始,TiDB 引入了 [`tidb_enable_binding_usage`](/system-variables.md#tidb_enable_binding_usage-new-in-v854-and-v900) 系统变量,用于控制是否收集 SQL 执行计划绑定的使用统计信息。 +从 v8.5.5 和 v9.0.0 开始,TiDB 引入了 [`tidb_enable_binding_usage`](/system-variables.md#tidb_enable_binding_usage-new-in-v854-and-v900) 系统变量,用于控制是否收集 SQL 执行计划绑定的使用统计信息。 当此变量设置为 `ON` 时,TiDB 会每六个小时将绑定使用情况的统计信息写入 `mysql.bind_info` 表。你可以使用这些统计信息来识别未使用的绑定,并优化绑定管理策略,例如删除不再需要的绑定或调整现有绑定以提高查询性能。 From 16cf543300c77ab904742c66eb84fb92cb522d22 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 6 Nov 2025 14:10:24 +0800 Subject: [PATCH 7/7] Update system-variables.md --- system-variables.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/system-variables.md b/system-variables.md index ec0eed2655a5..4be325de4244 100644 --- a/system-variables.md +++ b/system-variables.md @@ -1765,7 +1765,7 @@ mysql> SELECT job_info FROM mysql.analyze_jobs ORDER BY end_time DESC LIMIT 1; - 默认值:`OFF` - 该变量控制是否启用废弃的 batch-dml 特性。启用该变量后,部分语句可能会被拆分为多个事务执行,这是非原子性的,使用时需谨慎。使用 batch-dml 时,必须确保正在操作的数据没有并发操作。要使该变量生效,还需要为 `tidb_batch_dml_size` 指定一个正值,并启用 `tidb_batch_insert` 和 `tidb_batch_delete` 中的至少一个。 -### `tidb_enable_binding_usage` 从 v8.5.4 和 v9.0.0 版本开始引入 +### `tidb_enable_binding_usage` 从 v8.5.5 和 v9.0.0 版本开始引入 - 作用域: GLOBAL - 是否持久化到集群: 是