本文转载自:http://blog.chinaunix.net/uid-26896862-id-3188313.html
近期需要对mysql数据库做一些性能方面的测试。首先分享一些常用的工具的使用说明。
获取源码:
yum install bzr
bzr branch lp:~percona-dev/perconatools/tpcc-mysql
编译TPCC-MySQL:
cd tpcc-mysql/src
make all
编译常见问题:
1、 找不到mysql的头文件。
解决:export C_INCLUDE_PATH=$MYSQL_HOME/include
2、 找不到mysql_config程序
解决:export PATH=$MYSQL_HOME/bin:$PATH
3、 运行时找不到mysql库
解决:export LD_LIBRARY_PATH=$MYSQL_HOME/lib
加载数据
创建库
mysql>create database tpcc300;
创建表:
shell>mysql tpcc300 < create_table.sql
添加外键:
shell>mysql tpcc300 < add_fkey_idx.sql
加载数据:
1、单进程加载:
shell>./tpcc_load localhost tpcc300 root "" 300
|主机||数据库||用户||密码||warehouse|
2、并发加载:(推荐,但需要修改一下)
shell>./load.sh tpcc300 300
|数据库||warehouse|
测试
./tpcc_start -h localhost -d tpcc300 -u root -w 300 -c 32 -r 300 -l 7200 >> mysql_tpcc_20120412
参数说明:
-h:测试主机
-d:测试的数据库
-u:测试的用户
-p:测试用户的密码
-w:测试的warehouse数
-c:测试的连接线程数
-r:预热时间
-l:测试时间
测试结果分析
cd scripts
./analyse.sh /tmp/ mysql_tpcc_20120412 > mysql_tpcc_20120412.res
将mysql_tpcc_20120412.res导入excel,然后就可以进行画图。
注:近期参加MySQL运维学习,老师推荐该文章作为学习和技术提高的扩展阅读,先记录到自己的博客中,随后慢慢消化、学习、提高。本文与MySQL数据库 “压力测试”主题有关。