Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.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,我最近在两个表中添加了一些非唯一索引。这些表的行数以百万计,包括索引大小在内的大小为100MB。添加新的索引类型索引后,其中一个索引的基数与主键的基数相当,另一列的基数相当低。如果我错了,请纠正我,但我的理解是,索引的基数越高,它在加速where子句查询方面就越有用。因此,由于一个有很高的基数,我认为这应该对查询有明显的影响 无论如何,在添加索引之后,我不确定使用这些列的where查询的速度是否有所不同。然后我多少回想起,在过去,当我添加索引时,它需要一段时间才能影响查询,比如一两天。也许这只是

我最近在两个表中添加了一些非唯一索引。这些表的行数以百万计,包括索引大小在内的大小为100MB。添加新的索引类型索引后,其中一个索引的基数与主键的基数相当,另一列的基数相当低。如果我错了,请纠正我,但我的理解是,索引的基数越高,它在加速where子句查询方面就越有用。因此,由于一个有很高的基数,我认为这应该对查询有明显的影响

无论如何,在添加索引之后,我不确定使用这些列的where查询的速度是否有所不同。然后我多少回想起,在过去,当我添加索引时,它需要一段时间才能影响查询,比如一两天。也许这只是我的想象。在这种情况下,新添加的索引会立即生效吗?无论如何


感谢您抽出时间。

您对表进行了分析以刷新索引了吗?您是否对您关心的查询进行了解释,以了解它们使用的索引?向我们展示查询、索引定义和执行计划,然后我们将能够回答您的问题。