Querying the SQL Execution Plan (GET Request)
Function
This API is used to query a SQL execution plan. Currently, this function is supported only for MySQL DB instances.
URI
GET /v3/{project_id}/instances/{instance_id}/sql/explain
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
project_id |
Yes |
String |
Project ID. To obtain this value, see Obtaining a Project ID. |
instance_id |
Yes |
String |
Instance ID. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
db_user_id |
Yes |
String |
Database user ID. |
database |
Yes |
String |
Database name. |
sql |
Yes |
String |
SQL statement. |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
Yes |
String |
User token. |
X-Language |
No |
String |
Language. Enumerated values:
|
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
execution_plans |
Array of execution plan objects |
SQL execution plan list. |
error_message |
String |
Error message displayed if the SQL execution fails. |
Parameter |
Type |
Description |
---|---|---|
id |
String |
ID. |
select_type |
String |
Type of the SELECT clause. |
table |
String |
Database table. |
partitions |
String |
Partitions from which records would be matched by the query. |
type |
String |
Access type. |
possible_keys |
String |
Keys (index) that can be used. |
key |
String |
Key (index) that is used. |
key_len |
String |
Length of the key that is used. |
ref |
String |
Column or constant used along with the key to select rows. |
rows |
String |
Number of rows that MySQL considers it must check when executing a query |
filtered |
String |
Estimated percentage of table rows that are filtered by the table condition. |
extra |
String |
Other information. |
Status code: 400
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. Minimum length: 8 characters Maximum length: 36 characters |
error_msg |
String |
Error message. Minimum length: 2 characters Maximum length: 512 characters |
Status code: 500
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. Minimum length: 8 characters Maximum length: 36 characters |
error_msg |
String |
Error message. Minimum length: 2 characters Maximum length: 512 characters |
Example Request
Querying the SQL execution plan (GET request)
GET https://das.cn-north-1.myhuaweicloud.com/v3/054e292c9880d4992f02c0196d3ea468/instances/da304cd5bbb944de828759bc7be3d3fein01/sql/explain?db_user_id=2c250598-1e3c-4d31-bc19-be1d866247e6&database=abc&sql=select 1
Example Response
Status code: 200
{ "execution_plans" : [ { "id" : "1", "select_type" : "SIMPLE", "table" : "", "partitions" : "", "type" : "", "possible_keys" : "", "key" : "", "key_len" : "", "ref" : "", "rows" : "", "filtered" : "", "extra" : "No tables used" } ] }
Status Codes
Status Code |
Description |
---|---|
200 |
Success |
400 |
Bad request |
500 |
Internal server error |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot