我这里的实验环境:
单机proxysql+mgr单主,已经配置好了读写分离策略。这些都不是本文的重点,就一带而过吧。
我下面只贴基于sql指纹的阻断的配置。
我们这里先查看下当前proxysql的 query rule表
</>复制代码
none rule_idactivedigestmatch_patternre_modifiersdestination_hostgroupapply
runtime_mysql_query_rules
rule_id active digest match_pattern re_modifiers destination_hostgroup apply
.FOR $ CASELESS
CASELESS
先重置下统计信息,方便下面的实验结果的查看
</>复制代码
none stats_mysql_query_digest_reset
连接proxysql的sql端口,去执行些sql模拟业务查询操作
</>复制代码
sbtest
id sbtest2 id id
id
rows sec
sbtest
idpad sbtest2 id idpad
id pad
rows sec
sbtest
idpadkfrom sbtest2
pad
pad k
id pad k
rows sec
去proxysql 后台看下捕获到的sql指纹信息如下:
</>复制代码
none hostgroupcount_starsum_timedigestdigest_text stats_mysql_query_digest digest_text
hostgroup count_star sum_time digest digest_text
id sbtest2 id id
idpad sbtest2 id idpad