如何通过 explain 判断使用二级索引之后,是否还存在回表操作?
表结构 {代码...} 查询的 sql {代码...} 使用 explain 分析的结果idselect_typetablepartitionstypepossible_keyskeykey_lenrefrowsfilteredExtra1SIMPLEkeywordtask indexidx_created_at,idx_track_source_id_created_at_len_parse_result_listidx_track_source_id_created_at_len_parse_result_list14 13432415450.0Us...
2 回答1.6k 阅读✓ 已解决
@joyqi 有这么一个参数 innodb_data_file_path,指定innodb创建时候的数据文件大小,那个 “多余”的值貌似是 (申请的数据文件大小 - (索引大小 + 数据大小)),所以应该是越多数据,这个“多余”就越小。在命令行上,敲 show table status \G 是 Data_free那个值。
所以,这个值无所谓,翻译的比较二,不是“多余”是“空余”。还有,这个值是可以配的,在innodb_data_file_path里,但是这个值过小,会有问题,在扩展的时候。