MySQL如何查询到缺失的索引?然后自动创建索引。

cnwolfs 2017-02-07 01:50:54
就是针对一个数据库中的某些应该创建的索引但是又没有创建,导致为了查询这些数据服务器的资源被严重占用。如何能从统计表中查询到这些,然后创建出应该创建的,但是又没有创建的索引。

在MS SQL中有这样的统计表,看到资料说MySQL的也有,但是没找到更详细的,请多多指教。
...全文
497 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjcxc 2017-02-08
  • 打赏
  • 举报
回复
不过未用和缺少索引还是有很大差别,这种层面是没办法和 SQL Server 比的
rucypli 2017-02-07
  • 打赏
  • 举报
回复
mysql> show variables like '%log_queries_not_using_indexes%'; +-------------------------------+-------+ | Variable_name | Value | +-------------------------------+-------+ | log_queries_not_using_indexes | OFF | +-------------------------------+-------+ 1 row in set (0.00 sec) 有个这个参数 动态打开就行set global log_queries_not_using_indexes =on;然后没有走索引的查询全部写入慢查询日志 前提是你慢查询日志也是打开的 日志可以人肉看 也可以用工具pt-query-digest分析
致命的西瓜 2017-02-07
  • 打赏
  • 举报
回复
应该创建的索引但是又没有创建...没有这种表的,只能对慢查询进行解析优化,手动添加索引

56,912

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧