Mysql 基准测试

为什么要进行Mysql基准测试?答案显而易见,如果在一个模拟的环境中系统设计能承受住压力并且能满足性能目标,那么产品上线时我们是不是可以更放心了。

1、什么是基准测试

所谓的基准测试就是 制定一系列的标准,在一定的环境上运行,通过结果来评估测试对象的性能。影响性能的主要因素有:吞吐量,延迟时间和可扩展性。

2、基准测试需要遵守的规则

1、应该多次检查输入的数据;
2、应该多次运行基准测试,至少5次;
3、重新启动MySQL服务器以消除任何不必要的缓存因素;
4、数据库管理员要有兴趣、认真对待进程;

3、应该注意的问题

1、在一台单一的虚拟机上运行基准测试;
2、不可忽视不同网络基础设施的影响;
3、使用MySQL服务器默认设置;
4、无需根据服务器配置特定的和独特的业务需求;
5、无法消除缓存问题;
6、运行基准测试时,忽视任何不必要的缓存问题。

4、使用BENCHMARK()函数

Mysql开发团队称,BENCHMARK()函数常被用来测试Mysql进程有多快。

详细功能显示如:BENCHMARK (count, expr): The BENCHMARK ()函数执行的表达式为expr重复计算次数。测试的结果值始终为0。基准测试最重要的数字出现在几秒钟时间内。如下图示例:

QQ截图20150619134116

 

 

 

 

注意以下几点,能获得更准确的结果:

  • 建议多次执行该函数;
  • 允许仅适用scalar表达;
  • 表达式必须返回单个列或单个行;
  • 该功能减少了由于网络或语法分析器而带来的干扰。

5、使用SysBench

SysBench由Mysql开发人员开发,可以对CPU、文件IO、Mysql性能等进行测试。

测试CPU

用于CPU性能基准测试命令显示如下:该命令将启动一个进程并且产出大量的数字。

sysbench --test=cpu --cpu-max-prime=20000 run

最重要的数字是以总的时间(以秒为单位)为主。利用所花费的时间来计算所需要的被测试的计算参数。这一点很重要,你可以用来对比基准测试在横跨多个系统时最有价值的数据。

测试内存

sysbench --test=memory --memory-block-size=8k --memory-total-size=1G

还有很多测试,这里就不一一列举了,了解更多SysBench

JackSun

JackSun

I'm a coder.

You may also like...

1 Response

  1. 麻木堇 says:

    [愤怒]要看蛇精男美照极品写真,就来→ http://sebi.club

Leave a Reply

Your email address will not be published.