MySQL 数据库性能小测

myISAM:不支持数据库事务,但是性能比innoDB强很多,如果你的数据库多表操作比较多,为了确保数据一致性,不建议使用myISAM引擎

innoDB:支持数据库事务,多表操作的数据一致性有保证,但是在性能方面和myISAM引擎比就差太多了


数据插入方面:


110多秒插入600w数据,myISAM引擎

        关于二者性能差距,在数据插入方面就体现的淋漓尽致,同样结构的表,使用存储过程的循环操作插入同样规则的数据,innoDB花了600秒+才插入不到8000条数据,被我手动结束了插入;而在myISAM表里面,只花了110多秒钟就插入了超过600w条数据,这个性能差距真是......额=_=,叼。


数据查询方面:

        这里我使用的是myISAM引擎表来查询,在没有建立索引的情况下,从600w行查询一个指定的phone(有重复),结果如下:

MySQL 数据库性能小测_第1张图片
耗时:1.026s

在建立了phone字段的索引之后,再次使用该语句查表,结果如下:

MySQL 数据库性能小测_第2张图片
耗时:0.001s

暂时就酱,接着研究......


补充点,myISAM转innoDB之后的测试:

未索引的phone字段查询耗时:

MySQL 数据库性能小测_第3张图片
耗时:3.060s,约myISAM引擎下的3倍

索引后phone字段查询耗时:

MySQL 数据库性能小测_第4张图片
耗时:0.001s,和myISAM引擎下表现一致

补充测试,在myISAM引擎下,对于单个重复数据很多字段建立索引,查询性能并没有提升,反而下降;对id建立索引,然后在600w数据里limit100w条数据,性能不升反降。

你可能感兴趣的:(MySQL 数据库性能小测)