![]() |
1
3
先前的回答是错误的,他认为这会降低性能。恰恰相反。 下面是一篇冗长但内容丰富的文章,以及为什么以及如何在MySQL中进行分区: http://dev.mysql.com/tech-resources/articles/partitioning.html 如前所述,分区通常用于将类似的数据分组在一起。这样,当您决定归档或完全销毁一个分区时,您的表就不会变得支离破碎。然而,这并不影响性能,实际上可以提高性能。看吧,不仅仅是删除,片段、更新和插入也可以做到这一点。通过对数据进行分区,您将指导RDBMS操作和查询数据的标准(不明确)。 |
![]() |
2
1
编辑: 无声的歌是正确的。禁用/启用键仅适用于myisam,而不是innodb。我不知道,但我去看了医生。 http://dev.mysql.com/doc/refman/5.1/en/alter-table.html#id1101502 . 更新任何索引都可能会减慢速度。您可以在执行更新时禁用索引并将其重新打开,以便可以为整个表生成一次索引。 ALTER TABLE foo DISABLE KEYS; LOAD DATA INFILE ... ; ALTER TABLE ENABLE KEYS; 这将导致索引一次更新而不是每行更新一次。这也会导致更均衡的btree索引。 |
![]() |
3
0
MySQL5.6没有改进 “MySQL可以应用分区修剪来选择、删除和更新语句。当前无法修剪INSERT语句。“ http://dev.mysql.com/doc/refman/5.6/en/partitioning-pruning.html |
![]() |
4
-5
如果列插入检查(例如主键)被索引,那么这只会降低速度:MySQL将不得不另外决定分区。 只有添加索引才能改进所有查询。当您有大量很少使用的非常旧的数据(如年份<2000)时,分区很有用:那么为该数据创建一个分区就更好了。 干杯! |
![]() |
hello_programmers · Mysql从其他表输出一列 2 年前 |
![]() |
Community wiki · 这个MySQL语句出了什么问题? 2 年前 |
![]() |
Community wiki · 优化从同一表中提取的多列的查询 2 年前 |
![]() |
Popo · Sql查询:返回数据库中不可用的where条件 2 年前 |
|
Hamdan Nuramdani · 对账单中一周内不同表中的数据求和 2 年前 |
|
Kugelfisch · 用php为数据库加密数据 2 年前 |