
# 执行SQL诊断 - DiagnoseSQLStatements
#### 功能介绍
用于执行SQL诊断。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/DAS/doc?api=CreateTuning)中调试该接口。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-das/das_01_0130.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                       | 访问级别  | 资源类型（\*为必须）                                        | 条件键 | 别名 | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | das:clouddba:sqlDiagnosis | write | connection instance | -   | -  | -      |
     
  
 
#### URI
POST /v3/{project_id}/connections/{connection_id}/tuning/create-tuning
表1路径参数 
| 参数            | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| project_id    | 是    | String | **参数解释**： 租户在某一Region下的项目ID。 获取方法请参见[获取项目ID](https://support.huaweicloud.com/api-das/das_01_0036.html)。 **约束限制：** 不涉及。 **取值范围：** 只能由英文字母、数字组成，且长度为32个字符。 **默认取值：** 不涉及。 |
| connection_id | 是    | String | **参数解释：** 数据库用户ID。用户使用数据库账号与数据库建立的连接ID（数据库用户ID由[注册数据库用户](https://support.huaweicloud.com/api-das/das_01_0019.html)接口创建）。 **取值范围：** 只能由英文字母、数字、中划线组成，且长度为36个字符的UUID。                                                                                                                                                        |
   
#### 请求参数
表2请求Body参数 
| 参数            | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|:---|
| database_name | 是    | String | **参数解释：** 数据库名称。 **约束限制：** 仅支持MySQL实例的数据库。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                  |
| schema_name   | 否    | String | **参数解释：** Schema名称。 **约束限制：** 仅支持MySQL实例的数据库。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                   |
| sql_script    | 是    | String | **参数解释：** SQL脚本。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                          |
| node_type     | 否    | String | **参数解释：** 节点类型。 **约束限制：** 不涉及。 **取值范围：** - master：主节点  - slave：副节点  - readreplica：只读节点   **默认取值：** 不涉及。 |
| node_id       | 否    | String | **参数解释：** 节点ID，实例节点的唯一标识。可通过查看实例详情节点列表获取节点ID信息。 **约束限制：** 不涉及。 **取值范围：** 只能由英文字母、数字组成，且长度为36个字符。 **默认取值：** 不涉及。                                                                                                                                                                                 |
   
#### 响应参数
**状态码： 200**
表3响应Body参数 
| 参数             | 参数类型             | 描述                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|
| message_id     | Array of strings | **参数解释：** 诊断信息ID。                                                                                                                                                                                                                                                                 |
| status         | Boolean          | **参数解释：** 状态。 **取值范围：** - true：任务创建成功  - false：任务创建失败   |
| quota_exceeded | Boolean          | **参数解释：** 诊断配额状态。 **取值范围：** 不涉及。                                                                                                                                                                                    |
   
#### 请求示例
执行SQL诊断。
```
POST https://das.cn-north-1.myhuaweicloud.com/v3/054c630ff780d4cc2f40c00d7f6fb21d/connections/{connection_id}/tuning/create-tuning 
 
{ 
  "database_name" : "string", 
  "schema_name" : "string", 
  "sql_script" : "string" 
}
```
#### 响应示例
```
{
"message_id": [
"6507f5070cf2476b18473d9b"
],
"status": true,
"quota_exceeded": false
}
```
#### 状态码
| 状态码 | 描述                   |
|:---|:---|
| 200 | Success.             |
| 400 | BadRequest.          |
| 500 | InternalServerError. |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-das/das_01_0035.html)。
