mysql 添加索引

在做项目的过程中,初期没有考虑索引问题,觉得几万条数据而已,查询能话费多长时间呢。

实际到后期生产前测试的时候,一个分页查询给我整懵逼了,居然花了40秒的时间,还是直接在数据库查询的时间,跑程序更是client连接超时了。

 

这是一个有趣的现象,添加索引的时候索引方法有两种:BTREE和HASH,在这个项目中,添加的索引字段都是具有唯一性的,而且查询也是直接=比较的,

显然hash索引方法更快速,就想着选择hash,结果却是保存的时候直接变成btree了。

这个问题的原因和mysql的引擎有关。默认innoDB,不支持hash方法。

参考文章:https://www.cnblogs.com/snake23/p/9635822.html

http://mrdede.com/?p=1780

https://www.cnblogs.com/liqiangchn/p/9066686.html

 

posted @ 2019-09-12 18:21  Jerryi224  阅读(748)  评论(0编辑  收藏  举报