文档首页/ 数据管理服务 DAS/ API参考/ API(公测中)/ 云DBA/ 新增SQL限流规则 - AddSqlLimitingRecord
更新时间:2025-11-28 GMT+08:00
分享

新增SQL限流规则 - AddSqlLimitingRecord

功能介绍

新增SQL限流规则。

授权信息

账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。

  • 如果使用角色与策略授权,具体权限要求请参见权限和授权项
  • 如果使用身份策略授权,需具备如下身份策略权限。

    授权项

    访问级别

    资源类型(*为必须)

    条件键

    别名

    依赖的授权项

    das:clouddba:createSqlLimitRules

    write

    instance

    -

    -

    -

URI

POST /v3/{project_id}/instances/{instance_id}/sql-limiting/add-sql-limiting-record

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释

租户在某一Region下的项目ID。

获取方法请参见获取项目ID

约束限制:

不涉及。

取值范围:

只能由英文字母、数字组成,且长度为32个字符。

默认取值:

不涉及。

instance_id

String

参数解释:

实例ID。标识实例的唯一标识。

约束限制:

不涉及。

取值范围:

只能由英文字母、数字组成,且长度为32个字符。

默认取值:

不涉及。

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

engine_type

String

参数解释:

数据库引擎类型。

约束限制:

不涉及。

取值范围:

MySQL

默认取值:

不涉及。

type

String

参数解释:

SQL类型。

约束限制:

不涉及。

取值范围:

  • SELECT
  • UPDATE
  • DELETE

默认取值:

不涉及。

max_connection

Integer

参数解释:

最大并发数。

约束限制:

不涉及。

取值范围:

[0, 2^31-1],实际取决于查询。

默认取值:

不涉及。

key_str

String

参数解释:

SQL限流规则。

约束限制:

限流规则以~分隔关键字,例如select~a。规则举例详细说明:例如关键字是"select~a", 含义为:select以及a为该并发控制所包含的两个关键字,~为关键字间隔符,即若执行SQL命令包含select与a两个关键字视为命中此条并发控制规则。

取值范围:

不涉及。

默认取值:

不涉及。

max_waiting

Integer

参数解释:

最大等待时间。

约束限制:

不涉及。

取值范围:

[0, 2^31-1],实际取决于查询。

默认取值:

不涉及。

his_sql_limit_switch

Boolean

参数解释:

历史SQL限流开关。

约束限制:

  • 本开关仅对本条SQL限流规则生效。
  • 开启时,将kill掉命中此条SQL限流规则的已有会话。

取值范围:

  • true
  • false

默认取值:

不涉及。

node_ids

Array of strings

参数解释:

节点ID列表。

约束限制:

不涉及。

取值范围:

只能由英文字母、数字组成,且长度为32个字符。

默认取值:

不涉及。

automaticity

Boolean

参数解释:

是否自动化。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

响应参数

状态码: 200

表3 响应Body参数

参数

参数类型

描述

switch_on

Boolean

参数解释:

开关状态。

取值范围:

不涉及。

retry

Boolean

参数解释:

是否需要重试。

取值范围:

不涉及。

error_msg

String

参数解释:

错误信息。

取值范围:

不涉及。

status

Boolean

参数解释:

状态。

取值范围:

不涉及。

detail_status

String

参数解释:

详细状态。

取值范围:

不涉及。

fail_reason

String

参数解释:

失败原因。

取值范围:

不涉及。

job_id

String

参数解释:

工作流ID。

取值范围:

不涉及。

job_status

String

参数解释:

工作流状态。

取值范围:

不涉及。

请求示例

POST https://das.cn-north-1.myhuaweicloud.com/v3/054e292c9880d4992f02c0196d3ea468/instances/da304cd5bbb944de828759bc7be3d3fein01/sql-limiting/add-sql-limiting-record 
 
{
    "engine_type": "mysql",
    "type": "SELECT",
    "key_str": "select~from~test_table",
    "max_connection": 5,
    "his_sql_limiting_switch": true,
    "duration": -1
}

响应示例

状态码: 200

Success.

{
    "status": true
}

状态码

状态码

描述

200

Success.

400

Client error.

500

Server error.

错误码

请参见错误码

相关文档