tencent cloud

数据库智能管家 DBbrain

动态与公告
产品动态
公告
产品简介
产品概述
产品功能
产品优势
应用场景
功能列表
地域列表
购买指南
操作指南
访问管理
自建数据库接入
实例概览
实例管理
监控告警
健康报告及 Kill 会话报告管理
MySQL/TDSQL-C 诊断优化
TDSQL MySQL/MariaDB 诊断优化
分布式缓存数据库(Distributed Cache)诊断优化
MongoDB 诊断优化
全链路分析
实践教程
如何解决 MySQL 实例 CPU 使用率高问题
如何解决 MySQL 实例锁冲突问题
如何解决 Distributed Cache 实例 CPU 使用率高问题
如何解决 MongoDB 实例 CPU 使用率高问题
如何解决 MongoDB 节点 Oplog 保存时间太短
API 文档
History
Introduction
Introduction
API Category
Making API Requests
Session Killing APIs
Exception Detection APIs
Other APIs
Redis related APIs
Health Report Email Sending APIs
Space Analysis APIs
Slow Log Analysis APIs
Security Audit APIs
Database Audit APIs
Data Types
Error Codes
DBbrain APIs 2019-10-16
常见问题
自建数据库问题
MySQL 性能问题
产品常见问题
服务等级协议
词汇表
联系我们

SQL 限流

PDF
聚焦模式
字号
最后更新时间: 2025-07-29 16:33:30

功能描述

SQL 限流功能适用于流量过高引起的 CPU 消耗过大的场景。通过创建 SQL 限流任务,用户可自主设置 SQL 类型、最大并发数、限流时间、SQL 关键词,来控制数据库的请求访问量和 SQL 并发量,从而达到服务的可用性。
说明:
SQL 限流支持云数据库 MongoDB 4.0和7.0版本。
SQL 限流中被拒绝语句的错误码显示为SQL rejected by CDB_SQL_FILTER

创建 SQL 限流

1. 登录 DBbrain 控制台
2. 在左侧导航栏,选择诊断优化
3. 在页面上方选择 MongoDB 数据库类型及实例 ID,选择实时会话页签。
4. 在页面下方可选择 SQL 限流 模块。



5. 创建限流任务。
说明:
SQL 限流需要数据库账号认证授权。
5.1 请单击登录,输入数据库账号和密码,单击确定。



5.2 在页面中单击创建任务,配置以下参数,单击确定

SQL 类型:包含 find、insert、update、delete。
最大并发数:SQL 最大并发数,当包含关键词的 SQL 达到最大并发数时会触发限流策略。如果该值设为0,则表示限制所有匹配的 SQL 执行。
执行方式:支持定时关闭手动关闭
限流时间:选择定时关闭时,需选择 SQL 限流的生效时间。
SQL 关键词:需要限流的 SQL 关键词,当包含多个关键词时,需要以英文逗号分隔,逗号分隔的条件是逻辑与的关系,且逗号不能作为关键词。
6. 查看 SQL 限流任务状态和详情。
单击操作列的详情,可以查看 SQL 限流详情。
限流任务开启后,若还在所设置的限流时间以内,列表中的状态为运行中,单击操作列的关闭,可以提前关闭限流任务,状态列将变为已终止
限流任务开启后,若自动达到所设定的限流时间,列表中的状态将变为已终止
单击操作列的删除,可以对状态为已终止已完成的限流任务进行删除。

SQL 限流案例及效果

数据库流量过高,导致实例 CPU 消耗过大。
1. 通过控制台 MongoTop 获取表级流量统计,从 MongoTop 可以看出 test11 表流量过高,假设业务主要流量为 test.test10 表的读流量,test.test11 为异常流量。



2. 随后开启 SQL 限流任务,对 test.test11 表进行限流。
3. 限流前后 CPU 性能趋势图如下,可看出限流后 CPU 消耗迅速下降。



帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈