验证读写分离及负载均衡
- 创建测试数据库和测试表。
- 连接MySQL数据库。
1
/usr/local/mysql/bin/mysql -uroot -p123456 -S /data/mysql/run/mysqlm.sock
- 创建测试数据库和测试表。
1 2 3 4 5 6 7
create database sysbench; use sysbench; CREATE TABLE `test1` ( `id` bigint(20) NOT NULL, `report_serverid` varchar(100) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
- 确认数据是否同步到从库1。
1 2 3 4
/usr/local/mysql/bin/mysql -uroot -p123456 -S /data/mysql/run/mysqls.sock show databases; use sysbench; show tables;
- 确认数据是否同步到从库2。
1 2 3 4
/usr/local/mysql/bin/mysql -uroot -p123456 -S /data/mysql/run/mysqls2.sock show databases; use sysbench; show tables;
- 连接MySQL数据库。
- 启动MySQL Router。
1
mysqlrouter &
- 验证MySQL Router端口是否正常启动。
1 2
netstat -an|grep 6446 netstat -an|grep 6447
回显内容与图片内容一致,则表示已正常启动。
- 执行查询测试。
- 编辑文件。
1
vim /home/read_6446.sh
- 添加如下内容。
1 2 3 4 5
#!/bin/bash for i in {1..1000} do /usr/local/mysql/bin/mysql -uroot -p123456 -P6446 -h127.0.0.1 -e "select @@server_id" done
- 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。
- 执行读请求脚本。
1
sh /home/read_6446.sh
写端口(6446端口)读请求都在PRIMARY节点上,符合预期。
- 编辑文件。
1
vim /home/read_6447.sh
- 添加如下内容。
1 2 3 4 5
#!/bin/bash for i in {1..1000} do /usr/local/mysql/bin/mysql -uroot -p123456 -P6447 -h127.0.0.1 -e "select @@server_id" done
- 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。
- 执行读请求脚本。
1
sh /home/read_6447.sh
读端口(6447端口)在两台SECONDARY节点上轮询,符合预期。
- 编辑文件。
- 执行写入测试。
- 编辑文件。
1
vim /home/write_6446.sh
- 添加如下内容。
1 2 3 4 5
#!/bin/bash for i in {1..1000} do /usr/local/mysql/bin/mysql -uroot -p123456 -P6446 -h127.0.0.1 -Dsysbench -e "insert into test1(id,report_serverid) values($i,@@server_id)" done
- 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。
- 执行写请求脚本。
1
sh /home/write_6446.sh
- 确认测试数据。
1
/usr/local/mysql/bin/mysql -uroot -p123456 -P6446 -h127.0.0.1 -Dsysbench -e "select * from test1"
写端口(6446端口)写的请求都在PRIMARY节点上,测试符合预期。
- 通过6447端口写入测试。
1
/usr/local/mysql/bin/mysql -uroot -p123456 -P6447 -h127.0.0.1 -Dsysbench -e "insert into test1(id,report_serverid) values(1001,@@server_id)"
- 编辑文件。
父主题: 部署MySQL Router