Skip to content

Commit

Permalink
Recommend RC instead of SQL Priority (#19227) (#19246)
Browse files Browse the repository at this point in the history
  • Loading branch information
ti-chi-bot authored Dec 9, 2024
1 parent 52f3740 commit fa3fe33
Show file tree
Hide file tree
Showing 5 changed files with 19 additions and 1 deletion.
4 changes: 3 additions & 1 deletion faq/sql-faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,9 @@ TiDB 包含一个基于成本的优化器。在大多数情况下,优化器会

## 如何阻止特定的 SQL 语句执行(或者将某个 SQL 语句加入黑名单)?

你可以使用 [`MAX_EXECUTION_TIME`](/optimizer-hints.md#max_execution_timen) Hint 来创建 [SQL 绑定](/sql-plan-management.md#执行计划绑定-sql-binding),将特定语句的执行时间限制为一个较小的值(例如 1ms)。这样,语句就会在超过限制时自动终止。
对于 v7.5.0 及以上版本,你可以使用 [`QUERY WATCH`](/sql-statements/sql-statement-query-watch.md) 语句将特定的 SQL 查询加入黑名单。具体使用方法参见[管理资源消耗超出预期的查询 (Runaway Queries)](/tidb-resource-control.md#query-watch-语句说明)

对于 v7.5.0 之前版本,你可以使用 [`MAX_EXECUTION_TIME`](/optimizer-hints.md#max_execution_timen) Hint 来创建 [SQL 绑定](/sql-plan-management.md#执行计划绑定-sql-binding),将特定语句的执行时间限制为一个较小的值(例如 1ms)。这样,语句就会在超过限制时自动终止。

例如,要阻止执行 `SELECT * FROM t1, t2 WHERE t1.id = t2.id`,可以使用以下 SQL 绑定将语句的执行时间限制为 1ms:

Expand Down
4 changes: 4 additions & 0 deletions sql-statements/sql-statement-insert.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,10 @@ OnDuplicateKeyUpdate ::=
( 'ON' 'DUPLICATE' 'KEY' 'UPDATE' AssignmentList )?
```

> **注意:**
>
> TiDB 从 v6.6.0 版本开始支持[使用资源管控 (Resource Control) 实现资源隔离](/tidb-resource-control.md)功能。该功能可以将不同优先级的语句放在不同的资源组中执行,并为这些资源组分配不同的配额和优先级,可以达到更好的资源管控效果。在开启资源管控功能后,语句的调度主要受资源组的控制,`PriorityOpt` 将不再生效。建议在支持资源管控的版本优先使用资源管控功能。
## 示例

{{< copyable "sql" >}}
Expand Down
4 changes: 4 additions & 0 deletions sql-statements/sql-statement-replace.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,10 @@ InsertValues ::=
```

> **注意:**
>
> TiDB 从 v6.6.0 版本开始支持[使用资源管控 (Resource Control) 实现资源隔离](/tidb-resource-control.md)功能。该功能可以将不同优先级的语句放在不同的资源组中执行,并为这些资源组分配不同的配额和优先级,可以达到更好的资源管控效果。在开启资源管控功能后,语句的调度主要受资源组的控制,`PriorityOpt` 将不再生效。建议在支持资源管控的版本优先使用资源管控功能。
## 示例

{{< copyable "sql" >}}
Expand Down
4 changes: 4 additions & 0 deletions sql-statements/sql-statement-select.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,10 @@ TableSampleOpt ::=
|`LOCK IN SHARE MODE` | TiDB 出于兼容性解析这个语法,但是不做任何处理|
|`TABLESAMPLE`| 从表中获取一些行的样本数据。|

> **注意:**
>
> TiDB 从 v6.6.0 版本开始支持[使用资源管控 (Resource Control) 实现资源隔离](/tidb-resource-control.md)功能。该功能可以将不同优先级的语句放在不同的资源组中执行,并为这些资源组分配不同的配额和优先级,可以达到更好的资源管控效果。在开启资源管控功能后,语句的调度主要受资源组的控制,`HIGH_PRIORITY` 将不再生效。建议在支持资源管控的版本优先使用资源管控功能。
## 示例

### SELECT
Expand Down
4 changes: 4 additions & 0 deletions sql-statements/sql-statement-update.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ TableRefs ::=
EscapedTableRef ("," EscapedTableRef)*
```

> **注意:**
>
> TiDB 从 v6.6.0 版本开始支持[使用资源管控 (Resource Control) 实现资源隔离](/tidb-resource-control.md)功能。该功能可以将不同优先级的语句放在不同的资源组中执行,并为这些资源组分配不同的配额和优先级,可以达到更好的资源管控效果。在开启资源管控功能后,语句的调度主要受资源组的控制,`LOW_PRIORITY``HIGH_PRIORITY` 将不再生效。建议在支持资源管控的版本优先使用资源管控功能。
## 示例

{{< copyable "sql" >}}
Expand Down

0 comments on commit fa3fe33

Please sign in to comment.