- 规则依照rule_id从小到大开始匹配, 一旦匹配将不再继续往下匹配(个人实践)
- 支持规则链条: 比如第一条规则命中后, 继续执行第二条规则. 第一条规则设置mirror_flagOUT, 第二条规则设置flagIN. 两者完全相等.
| rule_id | active | username | schemaname | flagIN | client_addr | proxy_addr | proxy_port | digest | match_digest | match_pattern | negate_match_pattern | re_modifiers | flagOUT | replace_pattern | destination_hostgroup | cache_ttl | cache_empty_result | cache_timeout | reconnect | timeout | retries | delay | next_query_flagIN | mirror_flagOUT | mirror_hostgroup | error_msg | OK_msg | sticky_conn | multiplex | gtid_from_hostgroup | log | apply | comment |
+---------+--------+----------+------------+--------+-------------+------------+------------+--------+-----------------+---------------+----------------------+--------------+---------+-----------------+-----------------------+-----------+--------------------+---------------+-----------+---------+---------+-------+-------------------+----------------+------------------+------------------------------------+------------------------------------+-------------+-----------+---------------------+-----+-------+---------+
| 70 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | LOAD LABEL | NULL | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 101 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 71 | 1 | NULL | NULL | 101 | NULL | NULL | NULL | NULL | LOAD LABEL | NULL | 0 | CASELESS | NULL | NULL | 2 | NULL | NULL | NULL | NULL | NULL | NULL | 5000 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
- 规则添加完成后, 执行保存命令方可生效
load mysql query rules to runtime;
save mysql query rules to disk;
- 我用过的demo
| rule_id | active | username | schemaname | flagIN | client_addr | proxy_addr | proxy_port | digest | match_digest | match_pattern | negate_match_pattern | re_modifiers | flagOUT | replace_pattern | destination_hostgroup | cache_ttl | cache_empty_result | cache_timeout | reconnect | timeout | retries | delay | next_query_flagIN | mirror_flagOUT | mirror_hostgroup | error_msg | OK_msg | sticky_conn | multiplex | gtid_from_hostgroup | log | apply | comment |
+---------+--------+----------+------------+--------+-------------+------------+------------+--------+-----------------+---------------+----------------------+--------------+---------+-----------------+-----------------------+-----------+--------------------+---------------+-----------+---------+---------+-------+-------------------+----------------+------------------+------------------------------------+------------------------------------+-------------+-----------+---------------------+-----+-------+---------+
| 70 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | LOAD LABEL | NULL | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 101 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 71 | 1 | NULL | NULL | 101 | NULL | NULL | NULL | NULL | LOAD LABEL | NULL | 0 | CASELESS | NULL | NULL | 2 | NULL | NULL | NULL | NULL | NULL | NULL | 5000 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 80 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | CREATE TABLE | NULL | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | 3 | NULL | NULL | NULL | 2 | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 90 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | DROP TABLE | NULL | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | 3 | NULL | NULL | NULL | 2 | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 100 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | ALTER TABLE | NULL | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 102 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 101 | 1 | NULL | NULL | 102 | NULL | NULL | NULL | NULL | ALTER TABLE | NULL | 0 | CASELESS | NULL | NULL | 2 | NULL | NULL | NULL | NULL | NULL | NULL | 5000 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 110 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | ALTER DATABASE | NULL | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | 3 | NULL | NULL | NULL | 2 | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 120 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | CREATE DATABASE | NULL | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | 3 | NULL | NULL | NULL | 2 | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 121 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | DROP DATABASE | NULL | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | 3 | NULL | NULL | NULL | 2 | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 130 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | CREATE ROLE | NULL | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | 3 | NULL | NULL | NULL | 2 | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 131 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | DROP ROLE | NULL | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | 3 | NULL | NULL | NULL | 2 | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 140 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | CREATE USER | NULL | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | 3 | NULL | NULL | NULL | 2 | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 141 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | DROP USER | NULL | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | 3 | NULL | NULL | NULL | 2 | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 150 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | GRANT | NULL | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | 3 | NULL | NULL | NULL | 2 | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 151 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | REVOKE | NULL | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | 3 | NULL | NULL | NULL | 2 | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 160 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | NULL | insert | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 2 | doris禁止使用insert | doris禁止使用insert | NULL | NULL | NULL | NULL | 1 | NULL |
| 170 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | EXPORT TABLE | NULL | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
| 991 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | NULL | kerberos | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 2 | doris禁止使用kerberos关键字 | doris禁止使用kerberos关键字 | NULL | NULL | NULL | NULL | 1 | NULL |
| 1000 | 1 | NULL | NULL | 0 | NULL | NULL | NULL | NULL | . | NULL | 0 | CASELESS | NULL | NULL | 1 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | 2 | NULL | NULL | NULL | NULL | NULL | NULL | 1 | NULL |
+---------+--------+----------+------------+--------+-------------+------------+------------+--------+-----------------+---------------+----------------------+--------------+---------+-----------------+-----------------------+-----------+--------------------+---------------+-----------+---------+---------+-------+-------------------+----------------+------------------+------------------------------------+------------------------------------+-------------+-----------+---------------------+-----+-------+---------+
全部评论