mysql性能测试工具mysqlslap的简单使用
-
资源ID:47532499
资源大小:85.51KB
全文页数:6页
- 资源格式: DOCX
下载积分:0金贝
快捷下载
账号登录下载
微信登录下载
微信扫一扫登录
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
|
下载须知 | 常见问题汇总
|
mysql性能测试工具mysqlslap的简单使用
mysqlmysql 性能测试工具性能测试工具 mysqlslapmysqlslap 的简单使用的简单使用mysqlmysqlslapslap近期的面试中,面试官提到了过往项目中的瓶颈在哪里。虽然 mysql 的性能并不是该项目的瓶颈。但是作为技术,mysql 的性能测试并不了解,说来惭愧。回来整理了一下相关性能测试工具,以及简单的使用。介绍介绍mysqlslap,mysqlslap 是 MySQL5.1.4 之后自带的 benchmark 基准测试工具,该工具可以模拟多个客户端同时并发的向服务器发出查询更新,给出了性能测试数据而且提供了多种引擎的性能比较。简单使用参数简单使用参数想要看详细的信息可以 man mysqlslap 或者使用 mysqlslap help 查看concurrency 并发数量,多个可以用逗号隔开engines 要测试的引擎,可以有多个,用分隔符隔开,如engines=myisam,innodbiterations 要运行这些测试多少次auto-generate-sql 用系统自己生成的 SQL 脚本来测试auto-generate-sql-load-type 要测试的是读还是写还是两者混合的(read,write,update,mixed)number-of-queries 总共要运行多少次查询。每个客户运行的查询数量可以用查询总数/并发数来计算debug-info 额外输出 CPU 以及内存的相关信息number-int-cols 创建测试表的 int 型字段数量number-char-cols 创建测试表的 chat 型字段数量create-schema 测试的 databasequery 自己的 SQL 脚本执行测试only-print 如果只想打印看看 SQL 语句是什么,可以用这个选项测试流程测试流程建立测试数据库 database 和待测试的表 tables 根据 table 的结构,利用脚本生成一定数量的有效随机数据 利用 mysqlslap 对相应 query 语句进行测试 结果数据的分析。测试过程测试过程、建表:通过属性查询资源需要两张表:设备表 device 和设备属性对应表deviceattr。device 表对应资源,记录资源的基本信息,如 name,type,group,creator等等;deviceattr 表对应资源和属性的关系,记录每个资源的每个属性和属性值;它们的结构如下所示:通过多个属性组合查询 deviceattr 表,获得相应的 id ,id 即是满足条件的设备id,进而能直接在 device 表中查询得到其基本属性。本次测试的关键语句即是从 deviceattr 表中组合查询出满足条件的 id,故本测试只需要用到 deviceattr 一张表。2、生成随机数据并插入相应的表中:这里编写了几个生成随机数据的 sql 函数 rand_name(),rand_value(),rand_num(),rand_creator(),并编写了存储过程 insert_devattr,用来将一定量数据批量插入deviceattr 表中。然后将整个建表和存储数据的过程写进一个 sql 脚本中,并在 mysql 中运行这个脚本,待测试的表和数据就建立好了。(sql 脚本在附录)如下图所示,生成的 deviceattr 随机数据有 4020 条:3、利用 mysqlslap 进行测试:vcD4NCjxwPtX7uPbK/b7dv+K1xLnYvPyy2df3zqrNqLn9yvTQ1LLp0a/XytS0o6y4w7LZ1/e1xLnYvPxzcWzT777kvs3Kxzo8L3A+DQo8cD5zZWxlY3QgaWQgZnJvbSBkZXZpY2VhdHRyIHdoZXJlIFsgbiBhdHRyIF0gZ3JvdXAgYnkgaWSjuzwvcD4NCjxwPsD9o7qy6dGv07XT0GF0dHIxMLvy1d9hdHRyMjDK9NDUtcTL+dPQ18rUtLXEaWTOqqO6PC9wPg0KPHA+c2VsZWN0IGlkIGZyb20gZGV2aWNlYXR0ciB3aGVyZSBuYW1lID0gJmxzcXVvO2F0dHIxMCZyc3F1bzsgb3IgbmFtZSA9ICZsc3F1bzthdHRyMjAmcnNxdW87IGdyb3VwIGJ5IGlkOzwvcD4NCjxwPtTavajBorrDtP2y4sr9vt2/4rrzo6y+zb/J0tTA+9PDbXlzcWxzbGFwvfjQ0LLiytSjrG15c3Fsc2xhcMP8we7I58/Cy/nKvqO6PC9wPg0KPHA+c2hlbGwgJmx0OyBteXNxbHNsYXAgJm5kYXNoO2NyZWF0ZS1zY2hlbWE9JnJzcXVvO3Rlc3QxJnJzcXVvOyAmbmRhc2g7cXVlcnk9JnJkcXVvO3NlbGVjdCBpZCBmcm9tIGRldmljZWF0dHIgd2hlcmUgbmFtZT0mcnNxdW87YXR0cjEwJnJzcXVvOyBvciBuYW1lPSZyc3F1bzthdHRyMjAmcnNxdW87IGdyb3VwIGJ5IGlkOyZyZHF1bzsgLWMgNTAgLWkgMTAwPC9wPg0KPHA+0tTJz9PvvuSx7cq+o7rKudPDdGVzdDHK/b7dv+KjrMq508NxdWVyecv51ri2qLXE0+5KOssuLK1DUwuPayoreisunRr6Osw7/Su7j2sunRrzEwMLTOoaM8L3A+DQo8cD48aW1nIGFsdD0=“这里写图片描述“ src=“/uploadfile/Collfiles/20180614/20180614092858604.jpg“ />使用的参数 -u 用户名 -p-p 密码密码 由于本人密码带有由于本人密码带有 drop function if exists rand_name; drop function if exists rand_value; drop function if exists rand_num; drop function if exists rand_creator; drop procedure if exists insert_devattr; drop procedure if exists insert_dev;create table device ( id int primary key,14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57name varchar(40), type varchar(40), aquired int, 易火棋牌 http:/www.482223.com groupname varchar(40), creator varchar(40) ); create table attr ( id int primary key, name varchar(40) );create table deviceattr ( id int, name varchar(40), value varchar(40) );delimiter /create function rand_creator() returns varchar(20) begin declare return_str varchar(20) default 'aronhe' declare n int default 0; set n = floor(rand()*10); case n when 0 then set return_str = 'aronhe' when 1 then set return_str = 'eeelin' when 2 then set return_str = 'shadowyang' when 3 then set return_str = 'luzhao' when 4 then set return_str = 'tommyzhang' when 5 then set return_str = 'pillarzou' when 6 then set return_str = 'allenpan' when 7 then set return_str = 'beyondli' when 8 then set return_str = 'minshi' when 9 then set return_str = 'bingchen' else set return_str = 'joyhu' end case; return return_str;58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 10 0end/create function rand_num() returns int begin declare n int default 0; set n = floor(rand()*100); return n; end/create function rand_value() returns varchar(10) begin declare return_str varchar(10) default 'false' declare n int default 0; set n = floor(rand()*10); case when n5 then set return_str = 'true' else set return_str = 'true' end case; return return_str; end/ 杰克棋牌游戏 http:/www.jiekeqipai.netcreate function rand_name() returns varchar(20) begin declare return_str varchar(20) default '' set return_str = concat('attr',floor(rand()*200); return return_str; end/create procedure insert_devattr(in start int,in max int) begin declare i int default 0; repeat set i=i+1; insert into deviceattr values(rand_num(),rand_name(),rand_value(); until i =max end repeat; end/create procedure insert_dev(in start int,in max int)10 1 10 2 10 3 10 4 10 5 10 6 10 7 10 8 10 9 11 0 11 1begin declare i int default 10; repeat set i=i+1; insert into devi