调用GetRequestDiagnosisResult接口,查询SQL诊断的结果。
接口说明
使用该接口需满足以下前提条件:
-
在使用 SDK 调用 DAS 服务时,需要将地域指定为 cn-shanghai。
-
该接口不支持查询自动 SQL 优化的诊断结果
-
本接口适用的数据库引擎为:
- RDS MySQL
- RDS PostgreSQL
- RDS SQL Server
- PolarDB MySQL 版
- PolarDB PostgreSQL 版(兼容 Oracle)
- 云数据库 MongoDB 版
说明
RDS PostgreSQL 实例内核小版本为 20220130 及以上。查看和升级内核小版本,请参见升级内核小版本。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action
元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:
- 对于必选的资源类型,用前面加 * 表示。
- 对于不支持资源级授权的操作,用
全部资源
表示。
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
---|---|---|---|---|
hdm:GetRequestDiagnosisResult | get | *全部资源 * |
| 无 |
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
InstanceId | string | 是 | 实例 ID。 | rm-0iwhhl8gx0ld6**** |
NodeId | string | 否 | 节点 ID。 说明
对于 PolarDB MySQL 版、PolarDB PostgreSQL 版(兼容 Oracle)和云数据库 MongoDB 等集群实例,需要提供节点 ID。
| 202**** |
MessageId | string | 是 | 诊断 ID, CreateRequestDiagnosis 接口返回的诊断唯一标识。 说明
当 MessageId 为自动 SQL 优化的诊断 ID 时,该接口无法返回诊断结果
| 61820b594664275c4429**** |
SqlId | string | 否 | SQL 模板 ID。 说明
此参数是 DAS 控制台调用 API 时使用,用户使用此 API 时无需传入。
| None |
Source | string | 否 | 任务来源。 说明
此参数是 DAS 控制台调用 API 时使用,用户使用此 API 时无需传入。
| None |
返回参数
示例
正常返回示例
JSON
格式
{
"Message": "Successful",
"RequestId": "800FBAF5-A539-5B97-A09E-C63AB2F7****",
"Data": {
"messageId": "61820b594664275c4429****",
"uuid": "hdm_51fe9bc19ec413f4d530431af87a****",
"accountId": "2093****",
"sqlId": "0c95dae3afef77be06572612df9b****",
"engine": "MySQL",
"dbSchema": "das",
"param": {
"": ""
},
"state": 2,
"result": {
"endTime": 1636354256000,
"errorCode": "0001",
"errorMessage": "TFX成功",
"estimateCost": {
"cpu": 1.7878745150389268,
"io": 9.948402604746128,
"rows": 8.889372575194633
},
"improvement": 12933.97,
"indexAdvices": [
{
"columns": [
"work_no"
],
"ddlAddIndex": "ALTER TABLE `test`.`work_order` ADD INDEX `idx_workno` (`work_no`)",
"indexName": "idx_workno",
"schemaName": "test",
"tableName": "work_order",
"unique": false
}
],
"ip": "****.mysql.rds.aliyuncs.com",
"messageId": "6188c8cb2f1365b16aee****",
"port": 3306,
"sqlTag": {
"PRED_EQUAL": "Y",
"CNT_QB": 1,
"CNT_TB": 1
},
"startTime": 1636354252000,
"success": true,
"support": true,
"tuningAdvices": []
},
"gmtCreate": 1633071840000,
"gmtModified": 1633071850000
},
"Code": 200,
"Success": true
}
错误码
HTTP status code | 错误码 | 错误信息 | 描述 |
---|---|---|---|
400 | InvalidParams | The request parameters are invalid. | 请求参数错误 |
403 | NoPermission | You are not authorized to do this action. | 没有权限执行该操作 |
访问错误中心查看更多错误码。
变更历史
变更时间 | 变更内容概要 | 操作 |
---|
暂无变更历史