mysql常用数据模型(MySQL数据库基于sysbench实现OLTP基准测试)
mysql常用数据模型
MySQL数据库基于sysbench实现OLTP基准测试sysbench是一款非常优秀的基准测试工具,它能够精准的模拟MySQL数据库存储引擎InnoDB的磁盘的I/O模式。因此,基于sysbench的这个特性,下面利用该工具,对MySQL数据库支撑从简单到复杂事务处理工作负载的基准测试与验证。
测试场景一、OLTP读基准测试
1) 准备数据
sysbench --test=oltp --mysql-table-engine=innodb --oltp-table-size=100000
--mysql-db=cbusdb --mysql-user=root prepare
2) OLTP随机读一致性业务场景测试验证
time sysbench --test=oltp --oltp-table-size=100000 --mysql-db=cbusdb
--mysql-user=root --max-time=60 --oltp-read-only --max-requests=0 --num-threads=8 run
以上测试模拟并发8个线程,最大请求10000次/秒,持续60秒对单表数据集10w条数据量的表进行随机读操作,测试结果如下所示:
通过模拟8个并发用户在数据量10w条的表上进行一致性读操作并结合上图,分析得出如下结论:
1) 60秒内共执行读请求766094次,更新及其他类型的请求109442次,QPS:12765;
2) 60s内共执行事务操作54721,TPS:911,成功率100%;
3) 每个事务执行最小时间2.98ms,最大时间184.5ms,平均执行时间8.76ms。
以上测试结果运行环境基本配置信息:
1) 虚拟机2颗CPU、2G内存,20G存储空间;
2) MySQL数据库参数未优化、调整。
测试场景二、OLTP混合类型负载测试
模拟OLTP随机读、写(更新、删除、插入):
sysbench --test=oltp --mysql-table-engine=innodb --oltp-table-size=10000
--mysql-db=cbusdb --mysql-user=root --max-time=60
--oltp-nontrx-mode=update_key --max-requests=0 --num-threads=8 run
测试结果如下所示:
通过模拟8个并发用户在数据量10w条的表上模拟复杂的混合性工作负载测试并结合上图,分析得出如下结论:
1) 60秒内共执行读请求233268次,写请求83260次,其他类型的请求:33309,QPS:5273;
2) 60s内共执行事务操作16647,TPS:277,锁冲突造成的死锁的数量15个,事务的成功率99.91%;
3) 每个事务执行最小时间8.19ms,最大时间1299.78ms,平均执行时间28.82ms。
以上测试结果运行环境基本配置信息:
1) 虚拟机2颗CPU、2G内存,20G存储空间;
2) MySQL数据库参数未优化、调整。
sysbench详细介绍
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持开心学习网。
原文链接:http://m.blog.chinaunix.net/uid-25723371-id-5598952.html
- 阿里云mysql配置升级注意事项(详解如何在阿里云上安装mysql)
- 用mysql语句写python学生管理系统(Python基于mysql实现学生管理系统)
- mysql数据库的备份与恢复的方法(详解Mysql之mysqlbackup备份与恢复实践)
- docker查找redis配置文件(解决docker重启redis,mysql数据丢失的问题)
- mysql清空数据库所有表格(MySQL用truncate命令快速清空一个数据库中的所有表)
- centos7离线安装mysql5.7(CentOS7.5 安装MySql的教程)
- mysql5.7.24rpm安装(MySQL系列-YUM及RPM包安装v5.7.34)
- Mysql官方性能测试工具mysqlslap的使用简介(Mysql官方性能测试工具mysqlslap的使用简介)
- mysql架构示意图(MySQL创建横向直方图的解决方案)
- mysql连接查询原理(MySQL连接查询你真的学会了吗?)
- 终于有人将mysql 索引讲清楚了(MySQL 索引的一些细节分享)
- phpstudy怎么升级mysql(phpStudy中升级MySQL版本到5.7.17的方法步骤)
- 查看mysql支持的字符集(不可忽视的MySQL字符集)
- thinkphp5怎么设置默认返回(thinkphp5.1框架实现格式化mysql时间戳为日期的方式小结)
- mysql8.0安装教程win10(Windows10下mysql 8.0.22 安装配置方法图文教程)
- mysql实现数据的备份的命令(Windows下MySQL定时备份脚本的实现)
- 来了 成都轨道交通5条线路刷新 进度条(成都轨道交通5条线路刷新)
- 一部手机两套系统 OPPO Find X3的正确打开方式你知道吗(一部手机两套系统)
- OPPO用户看过来 汇总几个春节实用技巧,轻松搞定多设备联动玩法(汇总几个春节实用技巧)
- 北京旅游攻略(北京旅游攻略5日游及其花费)
- 四川旅游攻略(四川旅游攻略自由行攻略)
- 上海迪士尼攻略(上海迪士尼攻略旅游)
热门推荐
- css3盒子布局(CSS3弹性伸缩布局之box布局)
- nginx怎么配置静态资源(nginx实现发布静态资源的方法)
- 无法启动sql serveragent(SQL Agent服务无法启动的解决方法)
- laravel常用的辅助函数介绍(Laravel向公共模板赋值方法总结)
- win7 ftp服务器怎么搭建(win7下利用IIS搭建FTP服务器)
- dockergitlab自动化教程(docker+gitlab+jenkins从零搭建自动化部署)
- vue实现聊天(Vue+ssh框架实现在线聊天)
- 抖音上很火的表白程序链接(我喜欢你 抖音表白程序python版)
- 前端常见的面试题
- 宝塔面板7.8.0软件商店打不开(宝塔BT面板专业版付费和免费版有什么区别?)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9