我這里的實驗環境:
單機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