Consulta información sobre plantillas SQL con base en los datos de gobernanza de consultas.
Si utiliza un SDK de Alibaba Cloud, asegúrese de que la versión de aliyun-sdk-core sea posterior a la V2.1.8. Se recomienda usar la versión más reciente.
La versión del SDK de Database Autonomy Service (DAS) debe ser V2.1.8 o posterior.
Si utiliza un SDK para llamar a las operaciones de API de DAS, establezca el ID de región en cn-shanghai.
-
Esta operación admite los siguientes motores de base de datos:
ApsaraDB RDS for MySQL
PolarDB for MySQL
ApsaraDB RDS for PostgreSQL
Parámetros de solicitud
| Parámetro | Tipo | Obligatorio | Ejemplo | Descripción |
| Action | String | Sí | GetQueryOptimizeDataStats | La operación que desea ejecutar. Establezca el valor en GetQueryOptimizeDataStats. |
| Engine | String | Sí | MySQL | El motor de base de datos. Valores válidos:
|
| InstanceIds | String | No | rm-2ze8g2am97624**** | Los ID de las instancias. Separe varios ID con comas (,). |
| TagNames | String | No | None | Un parámetro reservado. |
| Keywords | String | No | select update | Las palabras clave de las plantillas SQL. Separe varias palabras clave con espacios. |
| LogicalOperator | String | No | or | La relación lógica entre varias palabras clave. Valores válidos:
|
| Rules | String | No | DAS_NOT_IMPORTANT | Las etiquetas utilizadas para filtrar plantillas SQL. Separe varias etiquetas con comas (,). Para obtener más información, consulte Gobernanza de consultas. |
| DbNames | String | No | testdb01 | El nombre de la base de datos por consultar. |
| Time | String | Sí | 1642953600000 | El intervalo de tiempo de la consulta. Especifique la hora en formato de marca de tiempo UNIX. Unidad: milisegundos. |
| PageSize | String | No | 10 | El número máximo de entradas por devolver en cada página. Valor predeterminado: 10. |
| PageNo | String | No | 1 | El número de página por devolver. Las páginas comienzan en la 1. Valor predeterminado: 1. |
| OrderBy | String | No | count | El campo para ordenar las entradas devueltas. Valor predeterminado: count. Valores válidos:
|
| Asc | String | No | true | Especifica si se deben ordenar las entradas devueltas en orden ascendente. Valor predeterminado: true. Valores válidos:
|
| OnlyOptimizedSql | String | No | false | Especifica si se deben consultar únicamente las plantillas SQL que requieren optimización. Valor predeterminado: false. Valores válidos:
|
| SqlIds | String | No | 2e8147b5ca2dfc640dfd5e43d96a**** | El ID de la plantilla SQL. Consulte el ID de una plantilla mediante la operación GetQueryOptimizeExecErrorStats. |
| Region | String | No | cn-china | La región donde reside la instancia. Valores válidos:
Este parámetro solo surte efecto cuando InstanceIds se deja vacío. Si deja InstanceIds vacío, el sistema obtiene los datos de la región configurada en Region. De forma predeterminada, Region se establece en cn-china. Si especifica InstanceIds, Region no surte efecto y el sistema obtiene los datos de la región donde reside la primera instancia especificada. Nota Si sus instancias residen en regiones dentro de China continental, establezca este parámetro en cn-china. |
| User | String | No | testUser | La cuenta de la base de datos por consultar. |
Parámetros de respuesta
| Parámetro | Tipo | Ejemplo | Descripción |
| Code | String | 200 | El código de estado HTTP devuelto. |
| Message | String | Successful | El mensaje devuelto para la solicitud. |
| Data | Object | Los detalles de las plantillas SQL. | |
| Total | Long | 10 | El número total de entradas devueltas. |
| PageNo | Integer | None | Un parámetro reservado. |
| PageSize | Integer | None | Un parámetro reservado. |
| Extra | String | None | Un parámetro reservado. |
| List | Array of QueryOptimizeDataStats | La información sobre las plantillas SQL. | |
| InstanceId | String | rm-2ze8g2am97624**** | El ID de la instancia. |
| Dbname | String | testdb01 | El nombre de la base de datos a la que pertenece la plantilla SQL. |
| SqlId | String | 2e8147b5ca2dfc640dfd5e43d96a**** | El ID de la plantilla SQL. |
| SqlType | String | INSERT | El tipo de sentencia SQL. |
| Psql | String | select 1 | La plantilla SQL. |
| SqlSample | String | select 2 | La consulta de ejemplo que tardó más en ejecutarse. |
| Count | Integer | 100 | El número de veces que se ejecutó la plantilla SQL. |
| MaxQueryTime | double | 1.1 | El tiempo de ejecución de consulta más largo. Unidad: segundos. |
| AvgQueryTime | double | 1.1 | El tiempo promedio de ejecución de la consulta. Unidad: segundos. |
| MaxLockTime | double | 0.1 | El tiempo de espera de bloqueo más largo. Unidad: segundos. |
| AvgLockTime | double | 0.1 | El tiempo promedio de espera de bloqueo. Unidad: segundos. |
| MaxRowsExamined | Long | 100000 | La mayor cantidad de filas examinadas. |
| AvgRowsExamined | double | 100.1 | El promedio de filas examinadas. |
| MaxRowsSent | Long | 10000 | La mayor cantidad de filas devueltas. |
| AvgRowsSent | double | 100.1 | El promedio de filas devueltas. |
| MaxRowsAffected | Long | 10000 | La mayor cantidad de filas afectadas por la plantilla SQL. Nota Si no se recopila este parámetro, se devuelve -1. |
| AvgRowsAffected | double | 100.1 | El promedio de filas afectadas por la plantilla SQL. Nota Si no se recopila este parámetro, se devuelve -1. |
| RuleList | Array of Rules | La información sobre las etiquetas. | |
| Name | String | DAS_NOT_IMPORTANT | El nombre de la etiqueta. Para obtener más información, consulte Gobernanza de consultas. |
| Type | String | Predefined | El tipo de etiqueta. Valores válidos:
|
| User | String | testUser | La cuenta de la base de datos. |
| RequestId | String | B6D17591-B48B-4D31-9CD6-9B9796B2**** | El ID de la solicitud. |
| Success | String | true | Indica si la solicitud se completó correctamente. Valores válidos:
|
Ejemplos
Solicitudes de ejemplo
http(s)://das.cn-shanghai.aliyuncs.com/?Action=GetQueryOptimizeDataStats
&Engine=MySQL
&InstanceIds=rm-2ze8g2am97624****
&TagNames=None
&Keywords=select update
&LogicalOperator=or
&Rules=DAS_NOT_IMPORTANT
&DbNames=testdb01
&Time=1642953600000
&PageSize=10
&PageNo=1
&OrderBy=count
&Asc=true
&OnlyOptimizedSql=false
&SqlIds=2e8147b5ca2dfc640dfd5e43d96a****
&Region=cn-china
&User=testUser
&Common request parameters
Respuestas exitosas de ejemplo
Formato XML
HTTP/1.1 200 OK
Content-Type:application/xml
<GetQueryOptimizeDataStatsResponse>
<Code>200</Code>
<Message>Successful</Message>
<Data>
<Total>10</Total>
<Extra>None</Extra>
<List>
<InstanceId>rm-2ze8g2am97624****</InstanceId>
<Dbname>testdb01</Dbname>
<SqlId>2e8147b5ca2dfc640dfd5e43d96a****</SqlId>
<SqlType>INSERT</SqlType>
<Psql>select 1</Psql>
<SqlSample>select 2</SqlSample>
<Count>100</Count>
<MaxQueryTime>1.1</MaxQueryTime>
<AvgQueryTime>1.1</AvgQueryTime>
<MaxLockTime>0.1</MaxLockTime>
<AvgLockTime>0.1</AvgLockTime>
<MaxRowsExamined>100000</MaxRowsExamined>
<AvgRowsExamined>100.1</AvgRowsExamined>
<MaxRowsSent>10000</MaxRowsSent>
<AvgRowsSent>100.1</AvgRowsSent>
<MaxRowsAffected>10000</MaxRowsAffected>
<AvgRowsAffected>100.1</AvgRowsAffected>
<RuleList>
<Name>DAS_NOT_IMPORTANT</Name>
<Type>Predefined</Type>
</RuleList>
</List>
</Data>
<RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>
<Success>true</Success>
</GetQueryOptimizeDataStatsResponse>
Formato JSON
HTTP/1.1 200 OK
Content-Type:application/json
{
"Code" : "200",
"Message" : "Successful",
"Data" : {
"Total" : 10,
"Extra" : "None",
"List" : [ {
"InstanceId" : "rm-2ze8g2am97624****",
"Dbname" : "testdb01",
"SqlId" : "2e8147b5ca2dfc640dfd5e43d96a****",
"SqlType" : "INSERT",
"Psql" : "select 1",
"SqlSample" : "select 2",
"Count" : 100,
"MaxQueryTime" : 1.1,
"AvgQueryTime" : 1.1,
"MaxLockTime" : 0.1,
"AvgLockTime" : 0.1,
"MaxRowsExamined" : 100000,
"AvgRowsExamined" : 100.1,
"MaxRowsSent" : 10000,
"AvgRowsSent" : 100.1,
"MaxRowsAffected" : 10000,
"AvgRowsAffected" : 100.1,
"RuleList" : [ {
"Name" : "DAS_NOT_IMPORTANT",
"Type" : "Predefined"
} ]
} ]
},
"RequestId" : "B6D17591-B48B-4D31-9CD6-9B9796B2****",
"Success" : "true"
}
Códigos de error
|
Código de estado HTTP |
Código de error |
Mensaje de error |
Descripción |
|
400 |
InvalidParams |
The request parameters are invalid. |
El mensaje de error devuelto porque los parámetros de solicitud especificados no son válidos. |
Para obtener una lista de códigos de error, consulte Códigos de error del servicio.