proxysql压测


【1】测试架构

(1.1)机器架构

IP        server-id    db-version  desc

192.168.148.149  1493306    8.0.22    master(gtid)、proxysql 2.2.2-11

192.168.148.176  1793306    8.0.22    slave(gtid)

192.168.148.185  1853306    8.0.22    slave(gtid)

(1.2)mysql 与 proxysql配置

mysql主库执行:

-- mysql主库执行
create user repl@'192.168.191.%' identified by '123456';
grant replication client,replication slave on *.* to repl@'192.168.191.%';

create user proxysql@'192.168.191.%' identified by '123456';
grant all privileges on *.* to proxysql@'192.168.191.%';

create user monitor@'192.168.191.%' identified by '123456';
grant all privileges on *.* to monitor@'192.168.191.%';

mysql从库执行:

change master to
master_host='192.168.191.149',
master_user='repl',
master_password='123456',
master_auto_position=1;

start slave;
set global read_only=1;

proxysql 执行:

# (1)监控
set mysql-monitor_username='monitor';
set mysql-monitor_password='123456';
set mysql-monitor_enabled='true';

UPDATE global_variables SET variable_value='2000' 
WHERE variable_name IN ('mysql-monitor_connect_interval','mysql-monitor_ping_interval','mysql-monitor_read_only_interval');

load mysql variables to runtime; 
save mysql variables to disk;

# (2)用户
insert into mysql_users(username,password,active,default_hostgroup) values('proxysql','123456',1,1);
load mysql users to runtime; 
save mysql users to disk;

【2】1主1从压测

(2.1)proxysql配置

监控和连接相关信息已经在 (1.2)中配置好;

# 服务器
insert into mysql_servers(hostgroup_id,hostname,port) values(1,'192.168.191.149',3306);
insert into mysql_servers(hostgroup_id,hostname,port) values(2,'192.168.191.176',3306); 

# 复制组
insert into mysql_replication_hostgroups(writer_hostgroup,reader_hostgroup) values(1,2);

# 查询规则
insert into mysql_query_rules(rule_id,active,match_pattern,destination_hostgroup,apply) values (1,1,'^select',2,1);
load mysql servers to runtime;
load mysql query rules to runtime;
save mysql servers to disk;
save mysql query rules to disk;

相关