我有一个包含很多字段的 InnoDB 表,其中一个是 32 字节的唯一哈希(典型的 md5 结果)。
我必须通过该哈希进行大量查询,但我的表开始变大(500.000 条记录),并且此搜索需要很多时间:
SELECT id FROM `table` WHERE `key`='Bj8DzS7RmCG41nLdgOp0kEhNtrfPo3KF'
这花了大约 0.7 秒
我可以创建这个“散列”32 字节 varchar 列的索引,但是这个表增长了很多,如果我必须优化表(重新索引),它需要很多时间(大约 10 分钟)我的情况),锁定所有其他实时查询。
那么,优化必须通过 32 字节 varchar 字段搜索的查询的最佳方法是什么?