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 相关文章推荐
jdbc使用PreparedStatement批量插入数据的方法
Apr 27 MySQL
MySQL sql_mode修改不生效的原因及解决
May 07 MySQL
MySQL时间盲注的五种延时方法实现
May 18 MySQL
新手必备之MySQL msi版本下载安装图文详细教程
May 21 MySQL
MySQL中datetime时间字段的四舍五入操作
Oct 05 MySQL
mysql中整数数据类型tinyint详解
Dec 06 MySQL
一文弄懂MySQL索引创建原则
Feb 28 MySQL
提高系统的吞吐量解决数据库重复写入问题
Apr 23 MySQL
解决Mysql报错 Table 'mysql.user' doesn't exist
May 06 MySQL
MySQL数据库实验实现简单数据库应用系统设计
Jun 21 MySQL
MySQL的意向共享锁、意向排它锁和死锁
Jul 15 MySQL
MySQL事务的ACID特性以及并发问题方案
Jul 15 MySQL
基于MySql验证的vsftpd虚拟用户
Nov 07 #MySQL
MySQL悲观锁与乐观锁的实现方案
SpringBoot连接MySQL获取数据写后端接口的操作方法
Mysql排序的特性详情
Nov 01 #MySQL
MySQL分区表实现按月份归类
Nov 01 #MySQL
MySQL数据库10秒内插入百万条数据的实现
MySQL面试题讲解之如何设置Hash索引
You might like
星际争霸 Starcraft 编年史
2020/03/14 星际争霸
php $_ENV为空的原因分析
2009/06/01 PHP
php skymvc 一款轻量、简单的php
2011/06/28 PHP
PHP中使用unset销毁变量并内存释放问题
2012/07/05 PHP
jQuery+PHP+ajax实现微博加载更多内容列表功能
2014/06/27 PHP
两个php日期控制类实例
2014/12/09 PHP
php 广告点击统计代码(php+mysql)
2018/02/21 PHP
PHP使用glob方法遍历文件夹下所有文件的实例
2018/10/17 PHP
php文件包含的几种方式总结
2019/09/19 PHP
在textarea中屏蔽js的某个function的javascript代码
2007/04/20 Javascript
iframe异步加载实现点击左边菜单加载右边内容实例讲解
2013/03/04 Javascript
js动态添加事件并可传参数示例代码
2013/10/21 Javascript
禁止空格提交表单的js代码
2013/11/17 Javascript
javascript函数作用域学习示例(js作用域)
2014/01/13 Javascript
javascript轻量级模板引擎juicer使用指南
2014/06/22 Javascript
jQuery实现的简洁下拉菜单导航效果代码
2015/08/26 Javascript
基于jQuery仿淘宝产品图片放大镜特效
2020/10/19 Javascript
Bootstrap3制作自己的导航栏
2016/05/12 Javascript
Vue异步组件使用详解
2017/04/08 Javascript
使用Node.js实现RESTful API的示例
2017/08/01 Javascript
详解适配器在JavaScript中的体现
2018/09/28 Javascript
实例分析vue循环列表动态数据的处理方法
2018/09/28 Javascript
在NPM发布自己造的轮子的方法步骤
2019/03/09 Javascript
python数组复制拷贝的实现方法
2015/06/09 Python
python监控进程脚本
2018/04/12 Python
深入理解Django-Signals信号量
2019/02/19 Python
Python常用数据类型之间的转换总结
2019/09/06 Python
实现Python与STM32通信方式
2019/12/18 Python
pytorch标签转onehot形式实例
2020/01/02 Python
办理护照介绍信
2014/01/16 职场文书
幼儿园义卖活动方案
2014/01/17 职场文书
婚前协议书范本
2014/04/15 职场文书
MySQL8.0.24版本Release Note的一些改进点
2021/04/22 MySQL
解决Goland 同一个package中函数互相调用的问题
2021/05/06 Golang
Spring mvc是如何实现与数据库的前后端的连接操作的?
2021/06/30 Java/Android
《辉夜大小姐想让我告白》第三季正式预告
2022/03/20 日漫