2013-11-20 27 views
0

我目前正在为将有8个表和约3-4,000行的项目设计数据库。许多表格有许多用于搜索结果的非唯一字段,但并非所有表格都在任何时候使用。如何设置MySQL索引以获得最佳结果

所以,我的问题是,我应该如何设置表上的索引?我应该为每个可搜索字段创建1个索引,还是应创建包含所有可搜索字段的单个索引?只是有时我会使用所有的字段进行搜索,有时候,我只会使用1或2个字段。

附加

目前,我所有的表都使用的是InnoDB存储,但可以在任何时候

回答

2

没有一般配方或银弹改变;只有一个经验法则:创建有用的索引

哪些有用的候选索引完全取决于您的数据以及您在其上运行的查询类型。有些有单列,其他有多列(顺序也是,顺便说一句,顺便说一句),它只是取决于你做什么...

2

3-4000行不是一个真正重要的数据库大小。作为一般规则,您应该查看哪些字段最经常搜索并将其编入索引。索引每个字段是矫枉过正的。添加索引通常是您在稍后获得有关系统如何响应日常使用情况或响应影响性能的数据库大小增长的一些反馈时所查看或重新访问的内容。

多关键指标应谨慎选择。

相关问题