mysqlslap --auto-generate-sql -uroot -p123456
并发测试,使用–concurrency来模拟并发连接,连接数可以多个,用逗号隔开
mysqlslap --auto-generate-sql --concurrency=100 -uroot -p123456
mysqlslap --auto-generate-sql --concurrency=50,100 -uroot -p123456
使用--iterations模拟迭代测试,用于需要多次执行测试得到平均值。
mysqlslap --auto-generate-sql --iterations=5 -uroot -p123456
使用--engine测试不同的存储引擎的性能进行对比
mysqlslap --auto-generate-sql --concurrency=50,100 --iterations=5 --engine=myisam,innodb -uroot -p123456
--query=name,-q 指定自定义脚本执行测试,例如可以调用自定义的一个存储过程或者sql语句来执行测试。--create-schema 指定自定义的测试数据库名称,
mysqlslap --auto-generate-sql --concurrency=50,100 --create-schema="landclash" --query="call landclash.sp_player_getname(34)" --number-of-queries=5000 -uroot -p123456
Expect。你的那个不叫压力测试。现在所说的压力测试时:多个客户端同时访问你的电脑。
就是让N多个客户端同时来访问你的数据库,但是凭人力是不可能完成的,你总不能找N多哥们一起去网吧给你访问吧。
目前有好多的压力测试软件,可以供你使用。就是一台电脑去压力测试去访问你的数据库,可以设置为在同一时间,发送多个请求,这样的效果看起来就是好像是多个客户端同时来访问你的数据库了。
1、首先使用VMVARE10搭建一个redhat6.5的虚拟机。2、在虚拟redhat6.5上安装ORACLE11G的数据库。
3、使用oewizard导入测试数据,可以根据向导提示进行数据导入。
4、使用swingbench进行压力测试。
测试步骤:
1、导数据之前需要修改temp表空间大小,使其能够容纳下相应的导入数据
create temporarytablespace temp tempfile '/home/oracle/oradata/orcl/temp.dbf' size 1g
alter databasedefault temporary tablespace temp
2、 安装swingbench测试软件,直接解压缩即可运行。
unzip -x swingbench25919.zip
3、进入swingbench/bin目录执行oewizard导入1G测试数据,并修改数据库连接名和DBA密码
wKioL1Qx2h3TrIIGAAGyVq92CVA180.jpg
输入导入数据文件存放位置:
wKiom1Qx2nGTFbZFAAGBnRUybxU038.jpg
选择导入1G数据:
wKioL1Qx2tnyThWoAAE8qLLgIJI464.jpg
数据导完之后在该目录下运行swingbench执行测试,修改数据库连接名,用户连接数设置为300,测试时间设置为10分钟
wKiom1Qx2v6S6yjvAAKAl63J5mg784.jpg
修改Distributed Controls用于测试过程中搜集测试监控信息,修改完之后测试连接是否正常, 并可以统计主机的cpu disk IO 信息
wKioL1Qx24DDSssqAAFmiLc2VSU132.jpg
还可以 拉出AWR报表
wKioL1Qx3O2gzw45AADH_p4CEeQ979.jpg
设置 insert,update ,select的比例
wKioL1Qx3RHB32ITAAEK9ABjiPI261.jpg
设置完成之后,点击左上角绿色按钮执行测试
wKiom1Qx24zgsNQ-AAEJ51YcKSs614.jpg
wKiom1Qx3QaxFssnAAGpJeiYV6Q924.jpg
测试结果可保持为XML文档,
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)