@@ -29,16 +29,12 @@ summary: TiDB的 `ADMIN` 语句是用于查看TiDB状态和对表数据进行校
29
29
30
30
## ` ADMIN RELOAD ` 语句
31
31
32
- {{< copyable "sql" >}}
33
-
34
32
``` sql
35
33
ADMIN RELOAD expr_pushdown_blacklist;
36
34
```
37
35
38
36
以上语句用于重新加载表达式下推的黑名单。
39
37
40
- {{< copyable "sql" >}}
41
-
42
38
``` sql
43
39
ADMIN RELOAD opt_rule_blacklist;
44
40
```
@@ -47,16 +43,12 @@ ADMIN RELOAD opt_rule_blacklist;
47
43
48
44
## ` ADMIN PLUGIN ` 语句
49
45
50
- {{< copyable "sql" >}}
51
-
52
46
``` sql
53
47
ADMIN PLUGINS ENABLE plugin_name [, plugin_name] ...;
54
48
```
55
49
56
50
以上语句用于启用 ` plugin_name ` 插件。
57
51
58
- {{< copyable "sql" >}}
59
-
60
52
``` sql
61
53
ADMIN PLUGINS DISABLE plugin_name [, plugin_name] ...;
62
54
```
@@ -65,32 +57,24 @@ ADMIN PLUGINS DISABLE plugin_name [, plugin_name] ...;
65
57
66
58
## ` ADMIN ... BINDINGS ` 语句
67
59
68
- {{< copyable "sql" >}}
69
-
70
60
``` sql
71
61
ADMIN FLUSH bindings;
72
62
```
73
63
74
64
以上语句用于持久化 SQL Plan 绑定的信息。
75
65
76
- {{< copyable "sql" >}}
77
-
78
66
``` sql
79
67
ADMIN CAPTURE bindings;
80
68
```
81
69
82
70
以上语句可以将出现超过一次的 ` select ` execution-plan 语句生成 SQL Plan 的绑定。
83
71
84
- {{< copyable "sql" >}}
85
-
86
72
``` sql
87
73
ADMIN EVOLVE bindings;
88
74
```
89
75
90
76
开启自动绑定功能后,每隔 ` bind-info-lease ` (默认值为 ` 3s ` )触发一次 SQL Plan 绑定信息的演进。以上语句用于主动触发此演进,SQL Plan 绑定详情可参考:[ 执行计划管理] ( /sql-plan-management.md ) 。
91
77
92
- {{< copyable "sql" >}}
93
-
94
78
``` sql
95
79
ADMIN RELOAD bindings;
96
80
```
@@ -99,8 +83,6 @@ ADMIN RELOAD bindings;
99
83
100
84
## ` ADMIN REPAIR TABLE ` 语句
101
85
102
- {{< copyable "sql" >}}
103
-
104
86
``` sql
105
87
ADMIN REPAIR TABLE tbl_name CREATE TABLE STATEMENT;
106
88
```
@@ -117,14 +99,10 @@ ADMIN SHOW t NEXT_ROW_ID;
117
99
118
100
## ` ADMIN SHOW SLOW ` 语句
119
101
120
- {{< copyable "sql" >}}
121
-
122
102
``` sql
123
103
ADMIN SHOW SLOW RECENT N;
124
104
```
125
105
126
- {{< copyable "sql" >}}
127
-
128
106
``` sql
129
107
ADMIN SHOW SLOW TOP [INTERNAL | ALL] N;
130
108
```
@@ -135,15 +113,57 @@ ADMIN SHOW SLOW TOP [INTERNAL | ALL] N;
135
113
136
114
``` ebnf+diagram
137
115
AdminStmt ::=
138
- 'ADMIN' ( 'SHOW' ( 'DDL' ( 'JOBS' Int64Num? WhereClauseOptional | 'JOB' 'QUERIES' NumList )? | TableName 'NEXT_ROW_ID' | 'SLOW' AdminShowSlow ) | 'CHECK' ( 'TABLE' TableNameList | 'INDEX' TableName Identifier ( HandleRange ( ',' HandleRange )* )? ) | 'RECOVER' 'INDEX' TableName Identifier | 'CLEANUP' ( 'INDEX' TableName Identifier | 'TABLE' 'LOCK' TableNameList ) | 'CHECKSUM' 'TABLE' TableNameList | 'CANCEL' 'DDL' 'JOBS' NumList | 'RELOAD' ( 'EXPR_PUSHDOWN_BLACKLIST' | 'OPT_RULE_BLACKLIST' | 'BINDINGS' ) | 'PLUGINS' ( 'ENABLE' | 'DISABLE' ) PluginNameList | 'REPAIR' 'TABLE' TableName CreateTableStmt | ( 'FLUSH' | 'CAPTURE' | 'EVOLVE' ) 'BINDINGS' )
116
+ 'ADMIN' (
117
+ 'SHOW' (
118
+ 'DDL' (
119
+ 'JOBS' Int64Num? WhereClauseOptional
120
+ | 'JOB' 'QUERIES' (NumList | AdminStmtLimitOpt)
121
+ )?
122
+ | TableName 'NEXT_ROW_ID'
123
+ | 'SLOW' AdminShowSlow
124
+ | 'BDR' 'ROLE'
125
+ )
126
+ | 'CHECK' (
127
+ 'TABLE' TableNameList
128
+ | 'INDEX' TableName Identifier ( HandleRange ( ',' HandleRange )* )?
129
+ )
130
+ | 'RECOVER' 'INDEX' TableName Identifier
131
+ | 'CLEANUP' (
132
+ 'INDEX' TableName Identifier
133
+ | 'TABLE' 'LOCK' TableNameList )
134
+ | 'CHECKSUM' 'TABLE' TableNameList | 'CANCEL' 'DDL' 'JOBS' NumList
135
+ | ( 'CANCEL' | 'PAUSE' | 'RESUME' ) 'DDL' 'JOBS' NumList
136
+ | 'RELOAD' (
137
+ 'EXPR_PUSHDOWN_BLACKLIST'
138
+ | 'OPT_RULE_BLACKLIST'
139
+ | 'BINDINGS'
140
+ | 'STATS_EXTENDED'
141
+ | 'STATISTICS'
142
+ )
143
+ | 'PLUGINS' ( 'ENABLE' | 'DISABLE' ) PluginNameList
144
+ | 'REPAIR' 'TABLE' TableName CreateTableStmt
145
+ | ( 'FLUSH' | 'CAPTURE' | 'EVOLVE' ) 'BINDINGS'
146
+ | 'FLUSH' ('SESSION' | 'INSTANCE') 'PLAN_CACHE'
147
+ | 'SET' 'BDR' 'ROLE' ( 'PRIMARY' | 'SECONDARY' )
148
+ | 'UNSET' 'BDR' 'ROLE'
149
+ )
150
+
151
+ NumList ::=
152
+ Int64Num ( ',' Int64Num )*
153
+
154
+ AdminStmtLimitOpt ::=
155
+ 'LIMIT' LengthNum
156
+ | 'LIMIT' LengthNum ',' LengthNum
157
+ | 'LIMIT' LengthNum 'OFFSET' LengthNum
158
+
159
+ TableNameList ::=
160
+ TableName ( ',' TableName )*
139
161
```
140
162
141
163
## 使用示例
142
164
143
165
执行以下命令,可查看正在执行的 DDL 任务中最近 10 条已经完成的 DDL 任务。未指定 ` NUM ` 时,默认只显示最近 10 条已经执行完的 DDL 任务。
144
166
145
- {{< copyable "sql" >}}
146
-
147
167
``` sql
148
168
ADMIN SHOW DDL jobs;
149
169
```
@@ -168,8 +188,6 @@ ADMIN SHOW DDL jobs;
168
188
169
189
执行以下命令,可查看正在执行的 DDL 任务中最近 5 条已经执行完的 DDL 任务:
170
190
171
- {{< copyable "sql" >}}
172
-
173
191
``` sql
174
192
ADMIN SHOW DDL JOBS 5 ;
175
193
```
@@ -205,8 +223,6 @@ ADMIN SHOW t NEXT_ROW_ID;
205
223
206
224
执行以下命令,可查看 test 数据库中未执行完成的 DDL 任务,包括正在执行中以及最近 5 条已经执行完但是执行失败的 DDL 任务。
207
225
208
- {{< copyable "sql" >}}
209
-
210
226
``` sql
211
227
ADMIN SHOW DDL JOBS 5 WHERE state != ' synced' AND db_name = ' test' ;
212
228
```
0 commit comments