mysql - 如何识别 MySQL 数据库中未使用的索引?

标签 mysql optimization indexing

我最近完全重写了一个大型项目。在这样做的过程中,我整合了大量的随机 MySQL 查询。我确实记得在开发以前的代码库的过程中,我一时兴起创建了索引,而且我确信有很多不再使用了。

有没有办法监控 MySQL 的索引使用情况,以确定哪些索引正在使用,哪些没有?

最佳答案

我不认为这些信息在现有的 MySQL 安装中可用。

Percona 为 MySQL 制作工具和补丁来收集索引使用数据。

见:

另见:

您可能还对名为 MySQLIndexAnalyzer 的 Java 应用程序感兴趣,这有助于找到冗余 索引。但是这个工具不知道哪些索引未被使用。

关于mysql - 如何识别 MySQL 数据库中未使用的索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3243475/

相关文章:

python - 合并具有不同索引的 pandas 系列(在一个索引上对齐)

PHP永不重复的随机数

MySQL 在 LOCATE 中使用用户定义的变量时出现非法的排序规则混合

mysql - 如何子查询正确的结果

javascript - 代码运行速度太慢

c++ - 查找一个数字是否是其他数字的公倍数

postgresql - Postgres不会根据where子句中id的具体值来使用索引

sql - SQLite使用自动索引代替我自己的索引

mysql - SQL Server无法使用 "import Data"函数

java - 根据条件替换第一个和最后一个字符(哪种方法更快)?