Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySQL如何存储索引?_Mysql_Indexing - Fatal编程技术网

MySQL如何存储索引?

MySQL如何存储索引?,mysql,indexing,Mysql,Indexing,只是个问题。在我的网站上,我的速度明显变慢了。30k行的加载时间超过30秒。我必须说,查询没有经过优化,因此可以触发10k查询,但我发现这需要花费太长时间。。。所以我想,让我们检查一下索引。在查看了一些“问题”表后,我看到我对多列进行了索引,但基数仅显示在1列上,其他索引的基数为0 我做了错误的索引吗?换句话说,我是否应该为每一列创建索引,而不是将它们组合起来?几乎可以肯定的是,您创建了错误的索引。大多数人都有!:-) 没有在多列和单列上创建索引的规则。要创建的最佳索引取决于您运行的查询,而不是

只是个问题。在我的网站上,我的速度明显变慢了。30k行的加载时间超过30秒。我必须说,查询没有经过优化,因此可以触发10k查询,但我发现这需要花费太长时间。。。所以我想,让我们检查一下索引。在查看了一些“问题”表后,我看到我对多列进行了索引,但基数仅显示在1列上,其他索引的基数为0


我做了错误的索引吗?换句话说,我是否应该为每一列创建索引,而不是将它们组合起来?

几乎可以肯定的是,您创建了错误的索引。大多数人都有!:-)

没有在多列和单列上创建索引的规则。要创建的最佳索引取决于您运行的查询,而不是数据库模式

分析查询并确定索引是一个细致的过程。可以使用查看给定查询如何使用现有索引。请务必阅读以下文档:


这些字段是否都具有相同的值?您应该启用慢速日志记录来查找您遇到问题的查询,然后在此处或新问题中解释并发布结果。否,只有1个字段。以这个屏幕截图为例:这是一个预订表,目前包含35.721行。请看一下我的SQL索引教程:-不是一个简短的答案。对不起,谢谢你的回复。我知道我应该对最常用于从表中筛选数据的列建立索引。屏幕截图中的列(参见startpost中的注释)是使用最多的。谢谢你的链接,尽管我对解释语法很熟悉。:)