MySQL 5.6 vs MySQL 5.5 性能对比初步测试结果
在MySQL 推出第一个5.6的GA版本后,我们对5.6进行了简单的性能对比测试。测试的基本思路是在同一台服务器上(保证硬件环境完全一样),先后安装MySQL 5.6和5.5,使用sysbench工具进行同样的压力测试,对比结果。
第一次对比测试
服务器配置:8核CPU+16G内存的HP360服务器
测试压力:sysbench的oltp的性能测试,测试表数据量5000万
Read_only结果:
Read_write结果:
这里出现了一个比较奇怪的现象,MySQL5.6的read only测试的结果反而要比MySQL5.5差了10%左右。Percona公司的 Peter Zaitsev在测试时也有这个现象, Peter在其测试报告里没有分析出具体是什么原因导致这个结果,只是表示还需要一段时间才能更好的了解MySQL5.6的一些原理。不过在read write上5.6倒是体现出明显的优势。
第二次对比测试
服务器配置:64核CPU+64G内存的HP580服务器
测试压力:sysbench的oltp的性能测试,测试表数据量5000万
Read_only结果:
Read_write结果:
在这次测试中,无论是只读还是读写,MySQL5.6的性能都明显好于MySQL5.5,尤其在128线程的读写模式下,MySQL5.6的性能几乎6倍于MySQL5.5。我们猜测MySQL 5.6在多CPU核数的利用上进行了优化,因此在硬件配置好的机器上更能体现出优势。
不过,在这次的测试中,MySQL5.6在读写模式下会产生大量的死锁(5.5并没有):
read-write(5.6) |
16 Threads |
32 Threads |
64 Threads |
128 Threads |
deadlocks avg(max) |
111.67(125) |
357.67(363) |
2740(7087) |
1205(3211) |
据MySQL官方说法是在InnoDB内部改进了锁机制,但为什么会产生大量死锁,原因还不清楚。
总的来说,MySQL5.6在InnoDB的性能提升上还是让人有惊喜的,而且还有了等待已久的Online DDL功能,估计我们接下去也会把升级5.6的计划提上日程。
已有 0 人发表留言,猛击->> 这里<<-参与讨论
ITeye推荐