SQL黑名单
通过正则匹配的方式拒绝指定SQL
- partition_num, tablet_num, cardinality 可以一起设置,一旦一个查询达到其中一个限制,查询将会被拦截
对SQL规则增删改查
- 创建SQL阻止规则,更多创建语法请参阅
- sql:匹配规则(基于正则匹配,特殊字符需要转译),可选,默认值为 “NULL”
- partition_num: 一个扫描节点会扫描的最大partition数量,默认值为0L
- tablet_num: 一个扫描节点会扫描的最大tablet数量,默认值为0L
- cardinality: 一个扫描节点粗略的扫描行数,默认值为0L
- global:是否全局(所有用户)生效,默认为false
- enable:是否开启阻止规则,默认为true
mysql> select * from order_analysis;
- 查看已配置的SQL阻止规则,不指定规则名则为查看所有规则,具体语法请参阅 SHOW SQL BLOCK RULE
SHOW SQL_BLOCK_RULE [FOR RULE_NAME]
- 修改SQL阻止规则,允许对sql/sqlHash/partition_num/tablet_num/cardinality/global/enable等每一项进行修改,具体语法请参阅
- sql 和 sqlHash 不能同时被设置。这意味着,如果一个rule设置了sql或者sqlHash,则另一个属性将无法被修改
- sql/sqlHash 和 partition_num/tablet_num/cardinality 不能同时被设置。举个例子,如果一个rule设置了partition_num,那么sql或者sqlHash将无法被修改
- 删除SQL阻止规则,支持多规则,以
,
隔开,具体语法请参阅 DROP SQL BLOCK RULR
用户规则绑定
如果配置global=false,则需要配置指定用户的规则绑定,多个规则使用分隔