Xtradb+Haproxy高可用数据库集群(三)sysbench性能测试篇

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: xtradb sysbench性能测试安装sysbench,最新版本是0.5yum install sysbench -y 初始化测试表sysbench --test=/usr/share/doc/sysbench/tests/db/oltp.

xtradb sysbench性能测试

安装sysbench,最新版本是0.5

yum install sysbench -y

 

初始化测试表

sysbench --test=/usr/share/doc/sysbench/tests/db/oltp.lua --oltp-table-size=1000000 --mysql-table-engine=innodb --mysql-user=sysbench  --mysql-password=sysbench --mysql-port=3306 --mysql-host=10.0.37.123 --mysql-db=test prepare

参数说明:

--oltp-table-size    指定表的大小,即表的行数

--mysql-table-engine:  指定存储引擎,如myisaminnodbheapndbclusterbdbmariafalconpbxt

--mysql-db       指定在哪个数据库创建测试表,默认为sbtest库,需要提前创建好

--test           指定Lua脚本,参数选项大部分同老版本的--test=oltp help

--db-driver      指定驱动,默认为Mysql

--myisam-max-rows:     指定Myisam表的MAX_ROWS选项

--oltp-secondary     测试表将使用二级索引KEY xid(ID) 替代 PRIMARY KEY (ID)innodb引擎内部为每个表创建唯一6字节的主键索引

--oltp-auto-inc    设置id列为auto-incremental,值为onoff,默认为on

 

select测试

sysbench --test=/usr/share/doc/sysbench/tests/db/select.lua   --oltp-table-size=1000000 --mysql-table-engine=innodb --mysql-user=sbtest  --mysql-password=sbpass --mysql-port=3306 --mysql-host=192.168.70.72 --mysql-db=sbtest  --max-requests=0 --max-time=120 --oltp-tables-count=1 --report-interval=10 --num-threads=8  run

参数说明:

  --max-time        来指定测试时长

--oltp-tables-count    指定测试表数量

--max-requests       指定最大请求数,默认100000是不限制

--num-threads        指定线程数

prepare         是一个准备过程,比如测oltp需要load数据到表里

run              是真正的测试过程

cleanup         是清除过程

update测试

sysbench --test=/usr/share/doc/sysbench/tests/db/update_index.lua  --oltp-table-size=1000000 --mysql-table-engine=innodb --mysql-user=sbtest  --mysql-password=sbpass --mysql-port=3306 --mysql-host=192.168.70.72 --mysql-db=sbtest  --max-requests=0 --max-time=120 --oltp-tables-count=1 --report-interval=10 --num_threads=8 run

 

insert测试

sysbench --test=/usr/share/doc/sysbench/tests/db/insert.lua  --oltp-table-size=1000000 --mysql-table-engine=innodb --mysql-user=sbtest  --mysql-password=sbpass --mysql-port=3306 --mysql-host=192.168.70.72 --mysql-db=sbtest  --max-requests=0 --max-time=120 --oltp-tables-count=1 --report-interval=10 --num_threads=8 run

 

测试结果

8线程 120s 插入120s 更新120s
一台 578859 76204 70780
二台 531659 90487 91068
三台 459249 88791 81759
一台不过
haproxy
718150 76268 69842


在写上,过haproxy时,一台与多台差距不大,多台对写性能影响不大。

在读上,按理来说,多台应该性能成倍上升,但从测试结果上看,没什么变化,不知道为什么,有人知道原因还请告知。



相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
相关文章
|
存储 NoSQL Java
高可用mongodb集群(分片+副本):性能测试
高可用mongodb集群(分片+副本):性能测试
669 0
|
5月前
|
SQL 关系型数据库 MySQL
MySQL高可用架构设计:从主从复制到分布式集群
MySQL高可用性涉及主从复制、半同步复制和Group/InnoDB Cluster。主从复制通过二进制日志同步数据,保证故障时可切换。半同步复制确保事务在至少一个从服务器确认后才提交。Group Replication是多主复制,支持自动故障切换。InnoDB Cluster是8.0的集成解决方案,简化集群管理。使用这些技术能提升数据库的稳定性和可靠性。
440 2
|
负载均衡 关系型数据库 MySQL
|
存储 SQL 负载均衡
MySQL高可用九种方案(下)
MySQL高可用九种方案(下)
|
SQL 存储 算法
【MySQL调优、分库分表、读写分离、高可用】
【MySQL调优、分库分表、读写分离、高可用】
232 0
|
关系型数据库 MySQL 数据库
mysql高可用方案-配置主从复制
mysql高可用方案-配置主从复制
153 0
|
关系型数据库 MySQL 测试技术
|
关系型数据库 MySQL 数据库