mysql 基准测试

mysql 基准测试


基准测试策略

集成式(将整个应用包括mysql作为整体)、单组件式(单独测试mysql系统)

基准测试指标

吞吐量、响应时间、扩展性、并发性

基准测试工具

集成测试工具:ab、http_load、JMeter  
但组件测试工具:mysqlslap、sysbench、database test suite、mysql benchmark suit、super smack

基准测试样例

1)http_load

urls.txt=>
    http://www.mysqlperformanceblog.com/  
    http://www.mysqlperformanceblog.com/page/2  
    http://www.mysqlperformanceblog.com/mysql-patches/  
    http://www.mysqlperformanceblog.com/msyql-performance-presentations/  
    http://www.mysqlperformanceblog.com/2006/09/06/slow-query-log-analyzes-tools/  
循环读取访问url连接。测试最快访问速度
 $ http_load -parallel 1 -seconds 10 urls.txt  
 =>测试结果
5个并发用户,循环方式读取url连接,测试访问速度  
  $http_load -parallel 5 -seconds 10 urls.txt
按访问比率测试相关结果(按每秒5次请求计)
  $http_load -rate 5 -seconds 10 urls.txt
仿真更多负载,将访问比率提高到每秒20个请求。  
  $http_load -rate 20 -seconds 10 urls.txt 

2)使用sysbench
  oltp 基准测试可以仿真事务处理的工作负荷。
    准备测试用表
    $sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test --mysql-user=root repare    
    以8个并发线程,只读模式,运行基准测试60秒  
    $sysbench --test=oltp --oltp=table-size=1000000 --mysql-db=test --mysql-user=root -- max-time=60 --oltp-read-only=on --max-requests=0 --num-threads=8 run  
   运行显示:
    事务数总计  
    每秒事务处理量  
    每请求的统计信息  
    线程公平性统计信息,用来表示仿真的工作负荷如何被“公平”分配
3)数据库测试工具集中的dbt2 TPC-C
    准备数据  
    src/datagen -w 10 -d /mnt/data/dbt2-w10  
    加载数据到mysql数据库  
    scripts/mysql/mysql_load_db.sh -d dbt2w10 -f /mnt/data/dbt2-w10 -s /var/lib/mysql/mysql.sock  
    运行基准测试  
    run_mysql.sh -c 10 -w 10 -t 300 -n dbt2w10 -u root -o /var/lib/mysql/mysql.sock -e  
  运行显示  
    显示每分钟系统可以处理的事务数,数字越大越好  
4)mysql基准测试集  
    运行全部测试
$ cd /usr/share/mysql/sql-bench/ sql-bench$ ./run-all-tests --server=mysql --user=root --log --fast

你可能感兴趣的:(mysql 基准测试)