Skip to content

Commit

Permalink
Change the description for max_execution_time. (#14282) (#14285)
Browse files Browse the repository at this point in the history
  • Loading branch information
ti-chi-bot authored Jun 20, 2023
1 parent 281ae37 commit d858da3
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 3 deletions.
4 changes: 2 additions & 2 deletions develop/dev-guide-timeouts-in-tidb.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ TiDB 的事务的实现采用了 MVCC(多版本并发控制)机制,当新

## SQL 执行时间超时

TiDB 还提供了一个系统变量来限制单条 SQL 语句的执行时间max_execution_time,它的默认值为 0,表示无限制。`max_execution_time` 目前对所有类型的 statement 生效,并非只对 SELECT 语句生效。其单位为 ms,但实际精度在 100ms 级别,而非更准确的毫秒级别。
TiDB 还提供了一个系统变量来限制单条 SQL 语句的执行时间,仅对“只读”语句生效:`max_execution_time`,它的默认值为 0,表示无限制。`max_execution_time` 的单位为 ms,但实际精度在 100ms 级别,而非更准确的毫秒级别。

## JDBC 查询超时

Expand All @@ -35,6 +35,6 @@ TiDB 提供了三个与 MySQL 兼容的超时控制参数:

- **wait_timeout**,控制与 Java 应用连接的非交互式空闲超时时间。在 TiDB v5.4 及以上版本中,默认值为 `28800` 秒,即空闲超时为 8 小时。在 v5.4 之前,默认值为 `0`,即没有时间限制。
- **interactive_timeout**,控制与 Java 应用连接的交互式空闲超时时间,默认值为 8 小时。
- **max_execution_time**,控制连接中 SQL 执行的超时时间,默认值是 0,即允许连接无限忙碌(一个 SQL 语句执行无限的长的时间)。
- **max_execution_time**,控制连接中 SQL 执行的超时时间,仅对“只读”语句生效,默认值是 0,即允许连接无限忙碌(一个 SQL 语句执行无限的长的时间)。

但在实际生产环境中,空闲连接和一直无限执行的 SQL 对数据库和应用都有不好的影响。你可以通过在应用的连接字符串中配置这两个 session 级的变量来避免空闲连接和执行时间过长的 SQL 语句。例如,设置 `sessionVariables=wait_timeout=3600(1 小时)``sessionVariables=max_execution_time=300000(5 分钟)`
2 changes: 1 addition & 1 deletion system-variables.md
Original file line number Diff line number Diff line change
Expand Up @@ -359,7 +359,7 @@ mysql> SELECT * FROM t1;

> **注意:**
>
> - `max_execution_time` 目前对所有类型的语句生效,并非只对 `SELECT` 语句生效,与 MySQL 不同(只对`SELECT` 语句生效)。实际精度在 100ms 级别,而非更准确的毫秒级别。
> - `max_execution_time` 目前只用于控制只读语句的最大执行时长,实际精度在 100ms 级别,而非更准确的毫秒级别。
> - 对于使用了 [`MAX_EXECUTION_TIME`](/optimizer-hints.md#max_execution_timen) Hint 的 SQL 语句,这些语句的最长执行时间将不受该变量限制,而是由该 Hint 进行限制。你也可以使用该 Hint 来创建 SQL 绑定,详情请参考 [SQL 操作常见问题](/faq/sql-faq.md#如何阻止特定的-sql-语句执行或者将某个-sql-语句加入黑名单)
### `max_prepared_stmt_count`
Expand Down

0 comments on commit d858da3

Please sign in to comment.