MMR全程Multi-Range Read,5.6新特性 当表很大的时候,使用二级索引进行范围的读取行回表导致磁盘的随机访问。 原理: 先查询满足条件的索引元组,然后按照数据行ID进行排序,对排序后的元组回表检索数据行 使用场景: 可以基于InnoDB和MyISAM引擎进行优化 可以基于集群多范围索引扫描表 使用MRR的时候,Extra 显示Using MRR select * from user where uid > 100 在没有MMR的情况下 先获取数据集,然后根据集合回表,返回满足的数据 使用MMR情况下 先获取数据集,然后对数据集排序(主键排序),最后回表查询完整行