MySQL基于索引的压力测试的实现


Posted in MySQL onNovember 07, 2021

一、模拟数据库数据

1-1 创建数据库及表脚本 - vim slap.sh

#!/bin/bash  
HOSTNAME="localhost" 
PORT="3306" 
USERNAME="root" 
PASSWORD="123" 
DBNAME="testdb" 
TABLENAME="t1" 
#create database 
mysql -h ${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} -e "drop database if exists ${DBNAME}" 
create_db_sql="create database if not exists ${DBNAME}" 
mysql -h ${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} -e "${create_db_sql}" 
#create table 
create_table_sql="create table if not exists ${TABLENAME}(stuid int not null primary key,stuname varchar(20) not null,stusex char(1)   
not null,cardid varchar(20) not null,birthday datetime,entertime datetime,address varchar(100)default null)" 
mysql -h ${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${create_table_sql}" 
#insert data to table 
i="1" 
while [ $i -le 500000 ]  
do  
insert_sql="insert into ${TABLENAME}  values($i,'alexsb_$i','1','110011198809163418','1990-05-16','2017-09-13','testdb')" 
mysql -h ${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${insert_sql}" 
let i++  
done  
#select data  
select_sql="select count(*) from ${TABLENAME}" 
mysql -h ${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${select_sql}"

1-2 执行脚本 

sh slap.sh

1-3 检查数据的可用性

mysql -uroot -p123
select count(*) from testdb.t1;

1-4 在索引优化前后使用mysqlslap进行压力测试

mysqlslap --defaults-file=/etc/my.cnf \
 --concurrency=100 --iterations=1 --create-schema='testdb' \
--query="select * from testdb.t1 where stuname='test_100'" engine=innodb \
--number-of-queries=2000 -uroot -p123 -verbose

MySQL基于索引的压力测试的实现

到此这篇关于MySQL基于索引的压力测试的实现的文章就介绍到这了,更多相关MySQL 索引压力测试内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

MySQL 相关文章推荐
Mysql MVCC机制原理详解
Apr 20 MySQL
MySQL 分页查询的优化技巧
May 12 MySQL
MySQL 数据类型选择原则
May 27 MySQL
浅谈MySQL 亿级数据分页的优化
Jun 15 MySQL
浅析MySQL如何实现事务隔离
Jun 26 MySQL
MySQL Shell import_table数据导入的实现
Aug 07 MySQL
MySQL非空约束(not null)案例讲解
Aug 23 MySQL
MySQL修炼之联结与集合浅析
Oct 05 MySQL
教你使用VS Code的MySQL扩展管理数据库的方法
Jan 22 MySQL
Mysql忘记密码解决方法
Feb 12 MySQL
MySQL运行报错:“Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre”解决方法
Jun 14 MySQL
MySQL深分页问题解决思路
Dec 24 MySQL
基于MySql验证的vsftpd虚拟用户
Nov 07 #MySQL
MySQL悲观锁与乐观锁的实现方案
SpringBoot连接MySQL获取数据写后端接口的操作方法
Mysql排序的特性详情
Nov 01 #MySQL
MySQL分区表实现按月份归类
Nov 01 #MySQL
MySQL数据库10秒内插入百万条数据的实现
MySQL面试题讲解之如何设置Hash索引
You might like
PHP中基于ts与nts版本- vc6和vc9编译版本的区别详解
2013/04/26 PHP
PHP连接SQLServer2005的方法
2015/01/27 PHP
UPUPW 更新 64 位 Apache 系列 PHP 7.0 正式版
2015/12/08 PHP
实例讲解PHP设计模式编程中的简单工厂模式
2016/02/29 PHP
ThinkPHP Where 条件中常用表达式示例(详解)
2017/03/31 PHP
php 比较获取两个数组相同和不同元素的例子(交集和差集)
2019/10/18 PHP
JS获取并操作iframe中元素的方法
2013/03/21 Javascript
js浮点数精确计算(加、减、乘、除)
2013/12/26 Javascript
JQuery弹出层示例可自定义
2014/05/19 Javascript
JavaScript如何实现图片懒加载(lazyload) 提高用户体验(增强版)
2016/11/30 Javascript
详解vue过滤器在v2.0版本用法
2017/06/01 Javascript
SVG动画vivus.js库使用小结(实例代码)
2017/09/14 Javascript
利用jquery和BootStrap实现动态滚动条效果
2018/12/03 jQuery
js获取form表单中name属性的值
2019/02/27 Javascript
详解vue+axios给开发环境和生产环境配置不同的接口地址
2019/08/16 Javascript
vue 子组件和父组件传值的示例
2020/09/11 Javascript
Vue切换Tab动态渲染组件的操作
2020/09/21 Javascript
python使用xauth方式登录饭否网然后发消息
2014/04/11 Python
python中bisect模块用法实例
2014/09/25 Python
Python的净值数据接口调用示例分享
2016/03/15 Python
Python实现的朴素贝叶斯分类器示例
2018/01/06 Python
PyQt实现界面翻转切换效果
2018/04/20 Python
python实现逐个读取txt字符并修改
2018/12/24 Python
解决python有时候import不了当前的包问题
2019/08/28 Python
Django中Q查询及Q()对象 F查询及F()对象用法
2020/07/09 Python
python利用opencv保存、播放视频
2020/11/02 Python
Python实现网络聊天室的示例代码(支持多人聊天与私聊)
2021/01/27 Python
夏威夷航空官网:Hawaiian Airlines
2016/09/11 全球购物
zooplus德国:便宜地订购动物用品、动物饲料、动物食品
2020/05/06 全球购物
医学生求职自荐信
2013/10/25 职场文书
简短大学毕业感言
2014/01/18 职场文书
学校安全生产月活动总结
2014/07/05 职场文书
2014年重阳节活动策划方案书
2014/09/16 职场文书
学生上课说话检讨书
2014/10/25 职场文书
MybatisPlus代码生成器的使用方法详解
2021/06/13 Java/Android
PHP中多字节字符串操作实例详解
2021/08/23 PHP