Documentation Home
MySQL 8.3 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 40.8Mb
PDF (A4) - 40.9Mb
Man Pages (TGZ) - 294.0Kb
Man Pages (Zip) - 409.0Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb
Excerpts from this Manual

MySQL 8.3 Reference Manual  /  Optimization  /  Optimizing for MEMORY Tables

10.7 MEMORY表的优化

考虑使用 MEMORY 表来存储非关键数据,该数据经常被访问,且是只读或很少更新的。在实际工作负载下,benchmark 应用程序与等效的 InnoDBMyISAM 表,以确认任何额外的性能是否值得失去数据的风险,或者在应用程序启动时从基于磁盘的表复制数据的开销。

要获得最佳的 MEMORY 表性能,请检查每个表的查询类型,并指定每个关联索引的类型,或者是 B 树索引或哈希索引。在 CREATE INDEX 语句中,使用 USING BTREEUSING HASH 子句。B 树索引对于通过操作符 >BETWEEN 进行大于或小于比较的查询非常快。哈希索引仅对通过 = 操作符或 IN 操作符查找单个值或受限值集的查询非常快。为什么 USING BTREE 通常比默认的 USING HASH 更好,见 第 10.2.1.23 节,“避免全表扫描”。对于不同类型的 MEMORY 索引的实现细节,见 第 10.3.9 节,“B 树和哈希索引的比较”