获取诊断结果
功能介绍
获取SQL诊断结果。
调试
您可以在API Explorer中调试该接口。
URI
GET /v3/{project_id}/connections/{connection_id}/tuning/{message_id}/show-tuning-result
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
message_id |
是 |
String |
参数解释: 诊断信息ID。 获取方法请参见5.2.30-执行SQL诊断。 约束限制: 不涉及。 取值范围: 只能由英文字母、数字组成,且长度为24个字符。 默认取值: 不涉及。 |
|
project_id |
是 |
String |
参数解释: 租户在某一Region下的项目ID。 获取方法请参见获取项目ID。 约束限制: 不涉及。 取值范围: 只能由英文字母、数字组成,且长度为32个字符。 默认取值: 不涉及。 |
|
connection_id |
是 |
String |
参数解释: 数据库用户ID。用户使用数据库账号与数据库建立的连接ID(数据库用户ID由注册数据库用户接口创建)。 取值范围: 只能由英文字母、数字、中划线组成,且长度为36个字符的UUID。 |
请求参数
无。
响应参数
状态码: 200
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
tune_result |
AdviceResult object |
参数解释: 诊断结果。 取值范围: 不涉及。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
message_id |
String |
参数解释: 诊断信息ID。 取值范围: 不涉及。 |
|
status_code |
String |
参数解释: 状态码。 取值范围: 不涉及。 |
|
error_code |
String |
参数解释: 错误码。 取值范围: 不涉及。 |
|
error_message |
String |
参数解释: 错误信息。 取值范围: 不涉及。 |
|
index_advice |
Array of IndexAdviceInfo objects |
参数解释: 索引建议。 取值范围: 不涉及。 |
|
tuning_advice |
Array of strings |
参数解释: 诊断建议。 取值范围: 不涉及。 |
|
formatted_sql |
String |
参数解释: 格式化SQL。 取值范围: 不涉及。 |
|
original_sql |
String |
参数解释: 原始SQL。 取值范围: 不涉及。 |
|
explain |
Array of Explain objects |
参数解释: 执行计划。 取值范围: 不涉及。 |
|
tb_pos_infos |
Array of TbPosInfo objects |
参数解释: 表位置信息。 取值范围: 不涉及。 |
|
feedback_infos |
FeedbackInfo object |
参数解释: 反馈信息。 取值范围: 不涉及。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
schema_name |
String |
参数解释: Schema名。 取值范围: 不涉及。 |
|
table_name |
String |
参数解释: 表名。 取值范围: 不涉及。 |
|
index_name |
String |
参数解释: 索引名。 取值范围: 不涉及。 |
|
columns |
Array of strings |
参数解释: 列。 取值范围: 不涉及。 |
|
unique |
Boolean |
参数解释: 是否唯一。 取值范围: 不涉及。 |
|
track_id |
String |
参数解释: 追踪ID。 取值范围: 不涉及。 |
|
quality |
Object |
参数解释: 质量。 取值范围: 不涉及。 |
|
ddl_add_index |
String |
参数解释: DDL需要添加的索引。 取值范围: 不涉及。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
id |
Integer |
参数解释: SELECT子句的编号。 取值范围: 不涉及。 |
|
select_type |
String |
参数解释: SELECT子句的类型。 取值范围: 不涉及。 |
|
table |
String |
参数解释: SQL优化器选择的表JOIN顺序。 取值范围: 不涉及。 |
|
type |
String |
参数解释: 查找表中行的访问类型。 (从好到坏依次为:null>system>const>eq_ref>ref>range>index>all) 取值范围: 不涉及。 |
|
possible_keys |
String |
参数解释: 有助于高效查找行的索引。 取值范围: 不涉及。 |
|
key |
String |
参数解释: 出于最小化查询成本考虑,SQL优化器实际使用的索引。 取值范围: 不涉及。 |
|
key_len |
String |
参数解释: Key列所示索引的长度(字节)。 取值范围: 不涉及。 |
|
ref |
String |
参数解释: 在使用Key列所示索引查找数据时用到的列或常量。 取值范围: 不涉及。 |
|
rows |
Long |
参数解释: Key列所示索引的长度(字节)。 取值范围: 不涉及。 |
|
filtered |
Double |
参数解释: 引擎层扫描数据后根据额外的where条件过滤后剩下值的百分比。 取值范围: 不涉及。 |
|
extra |
String |
参数解释: SQL解析的额外信息。
取值范围: 不涉及。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
origin_name |
String |
参数解释: 原始名称。 取值范围: 不涉及。 |
|
name |
String |
参数解释: 名称。 取值范围: 不涉及。 |
|
start |
Integer |
参数解释: 开始。 取值范围: 不涉及。 |
|
end |
Integer |
参数解释: 结束。 取值范围: 不涉及。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
id |
String |
参数解释: 编号。 取值范围: 不涉及。 |
|
project_id |
String |
参数解释: 项目ID。 取值范围: 不涉及。 |
|
message_id |
String |
参数解释: 任务消息唯一ID。 取值范围: 不涉及。 |
|
feedback_grade |
String |
参数解释: 反馈等级。 取值范围: 不涉及。 |
|
feedback_content |
String |
参数解释: 反馈内容。 取值范围: 不涉及。 |
|
gmt_created |
Long |
参数解释: 创建时间。 取值范围: 不涉及。 |
|
gmt_modified |
Long |
参数解释: 修改时间。 取值范围: 不涉及。 |
请求示例
无。
响应示例
{
"tune_result": {
"message_id": "6507f5070cf2476b18473d9b",
"status_code": "0000",
"error_message": "Success",
"formatted_sql": "SELECT *\nFROM test_tb",
"original_sql": "select * from test_tb",
"tuning_advice": [
"最外层Select未指定Where条件,可能返回比预期更多的行。"
],
"explain": [{
"id": 1,
"select_type": "SIMPLE",
"type": "ALL",
"rows": 100512,
"filtered": 100
}],
"tb_pos_infos": [{
"origin_name": "test_tb",
"name": "test_tb",
"start": 14,
"end": 21
}],
"feedback_infos": {}
}
}
状态码
|
状态码 |
描述 |
|---|---|
|
200 |
Success. |
|
400 |
BadRequest. |
|
500 |
InternalServerError. |
错误码
请参见错误码。