云数据库RDS for MySQL自治限流和SQL限流
简介
SQL限流
针对新上业务不能及时发包优化的SQL和突发流量导致CPU等资源100%瓶颈的场景,SQL限流功能通过控制既定SQL规则的并发度协助业务侧及时流控,保证核心业务的稳定运行。
自治限流
流量高峰常常是不可预测的,这给运维带来非常大的工作负担。为了防止出现问题不能够立即响应解决的情况,自动化的运维保障工具应运而生。自治限流功能自动检测到数据库CPU利用率等异常,根据既定业务优先级进行限流处理,保证核心业务的稳定运行。
用户可以根据业务情况,按照数据库或者用户进行限流。将非核心数据库或非核心用户业务配置为限流对象,可以保障核心业务不受影响。
须知
云数据库 RDS for MySQL实例状态为“正常”和“存储空间满”时可以进行扩容。
云数据库 RDS for MySQL实例最大可自动扩容至4000GB。
如果是主备实例,针对主实例设置自动扩容时,会同时对其备实例生效
云数据库RDS for MySQL配置SQL限流和自治限流
SQL限流约束限制
1.当SQL语句匹配多条限流规则时,优先生效最新添加的规则,之前的规则不再生效。
2.SQL限流规则关键字有顺序要求,只会按顺序匹配。如:a~and~b 只会匹配 xxx a>1 and b>2,而不会匹配 xxx b>2 and a>1。
3.SQL语句并发控制旨在解决用户某类突发的过高并发的SQL导致MySQL实例不稳定场景。
4.若复制时延过大,云数据库RDS for MySQL只读实例新增或删除限流规则时,不会立刻生效。
5.以下场景不受SQL限流的限制:
−系统表不限制。
−不涉及数据查询的不限制,如select sleep(xxx);。
−root账号在特定的RDS for MySQL版本范围内不限制。
配置SQL限流
操作步骤
步骤 1登录管理控制台。
步骤 2单击管理控制台左上角的,选择区域和项目。
步骤 3选择“数据库 > 云数据库 RDS”,进入RDS信息页面。
步骤 4在云数据库RDS for MySQL“实例管理”页面,选择目标实例,单击DS for MySQL实例名称,进入实例的“基本信息”页签。
步骤 5在左侧导航栏选择“智能DBA助手 > 历史诊断”。
步骤 6选择“全量SQL > SQL限流”。
步骤 7在“SQL限流”页面,开启SQL限流开关。
步骤 8单击“新建SQL限流规则”,选择需要限流的SQL类型、关键字以及最大并发数。
说明:云数据库RDS for MySQL关键字规则举例详细说明:例如关键字是"select~a",含义为:select以及a为该并发控制所包含的两个关键字,~为关键字间隔符,即若执行SQL命令包含select与a两个关键字视为命中此条并发控制规则。
云数据库RDS for MySQL最大并发数:即满足同一规则的语句最大并发数,超过最大并发数会被拒绝执行。
步骤 9确认无误后,单击“确定”。
步骤 10如果不需要此条限制,在SQL限流列表单击“删除”。在弹框中单击“确定”。
----结束
配置自治限流
操作步骤
步骤 1登录管理控制台。
步骤 2单击管理控制台左上角的,选择区域和项目。
步骤 3单击页面左上角的,选择“数据库 > 云数据库 RDS”,进入RDS信息页面。
步骤 4在云数据库RDS for MySQL“实例管理”页面,选择目标实例,单击实例名称,进入实例的“基本信息”页签。
步骤 5在左侧导航栏选择“智能DBA助手 > 历史诊断”。
步骤 6选择“全量SQL > 自治限流”。
说明:云数据库RDS for MySQL“自治限流”模块为付费的高级智能运维包功能,请您先升级运维包。
步骤 7单击“升级”,在弹框中,了解云数据库RDS for MySQL增值功能以及费用说明。
步骤 8升级云数据库RDS for MySQL运维包后,单击,设置实例限流范围、限流时间、限流策略,当相关条件满足时会自动流控,保证核心业务运行稳定。
步骤 9自动流控后,可以结合业务情况判断是否需要kill会话,具体请参见实时会话。
----结束
云数据库RDS for MySQL常见问题
云数据库RDS for MySQL常见问题
专题内容推荐
活动对象:华为云电销客户及渠道伙伴客户可参与消费满送活动,其他客户参与前请咨询客户经理
活动时间: 2020年8月12日-2020年9月11日
活动期间,华为云用户通过活动页面购买云服务,或使用上云礼包优惠券在华为云官网新购云服务,累计新购实付付费金额达到一定额度,可兑换相应的实物礼品。活动优惠券可在本活动页面中“上云礼包”等方式获取,在华为云官网直接购买(未使用年中云钜惠活动优惠券)或参与其他活动的订单付费金额不计入统计范围内;