几个参数(参考http://dev.mysql.com/doc/refman/5.7/en/replication-options-slave.html)
- sync_master_info:每间隔多少事务刷新master.info,如果是table(innodb)设置无效,每个事务都会更新
- sync_relay_log_info:每间隔多少事务刷新relay-log.info,如果是table(innodb)设置无效,每个事务都会更新
- master_info_repository:记录主库binlog的信息,可以设置FILE(master.info)或者TABLE(mysql.slave_master_info)
- relay_log_info_repository:记录备库relaylog的信息,可以设置FILE(relay-log.info)或者TABLE(mysql.slave_relay_log_info)
测试环境:
- 测试工具:sysbench
- 测试语句:sysbench --test=/usr/share/doc/sysbench/tests/db/oltp.lua --mysql-table-engine=innodb --oltp-table-count=1 --rand-init=on --num-threads=256 --oltp-table-size=10000000 --rand-type=special --rand-spec-pct=100 --oltp-read-only=off --mysql-user=xxx--mysql-host=x.x.x.x --mysql-password=xxx--mysql-db=test --max-requests=0 --max-time=3600 run
- mysql版本:5.7.12-5-log Percona Server (GPL)
- 机器配置:40core,128G mem,15K raid10
- 测试说明:主备实例独享物理机,未开启多线程复制,且数据全部在内存中,压力测试将备库出现延迟的情况下输出TPS,是为测试结果
table | 2400 |
file && 1 | 1200 |
file && 10 | 2100 |
file && 100 | 2400 |
file && 1000 | 2450 |
file && 10000(default) | 2500 |