有了MySQL (InnoDB),我知道索引会减慢更新查询的速度。我想知道是否会发生这种情况,而不管更新的是哪些字段。
例如,如果我有一个包含20个字段的表,其中的前10个字段在单个索引或覆盖索引中都被引用,那么对其他10个非索引字段的更新速度是否会受到影响?
发布于 2014-11-22 04:01:24
首先,看看InnoDB体系结构(来自Percona的首席技术官Vadim )
更新索引列时,更改必须通过此体系结构迁移,如下所示:
.ibd
如果您正在更新非索引列,唯一的瓶颈将是通过写I/O线程将脏页中的刷新更改转移到.ibd文件。非索引列将不涉及索引更改缓冲。
如果您有MySQL 5.5/5.6,您可能希望增加诺姆b和诺姆b,以提高写入性能。
https://dba.stackexchange.com/questions/83331
相似问题