查看执行时走的索引:

explain SELECT count(*)

FROM tb_task

WHERE  create=0  and create_time < '2017-07-10 22:00:00' ;

结果:

+----+-------------+-------------+-------+-------------------------+------------+---------+------+------+-----------+

| id | select_type | table       | type  | possible_keys       | key       | key_len | ref  | rows | Extra

+----+-------------+-------------+-------+-------------------------+------------+---------+------+------+-----------+

如果没有走 key=null 或者不是自己预想的索引!

此时可以强制指定走索自己建立的  force index(idx_create_time)

explain SELECT count(*)

FROM tb_task force index(idx_create_time)

WHERE  create=0  and create_time < '2017-07-10 22:00:00' ;

如果key依然不是自己指定的索引!!就有问题了

原因:

堆积量太大  MySQL内部计算cost 走索引不合理(因为:正常的数据量超过20%的全表数据对于走索引反而是更不好的)

解决方案:

清洗掉索引键命中的脏数据或者无效的数据!

mysql --force 无效_【技能库】--mysql 索引失效 force index也失效-- 原因解决方案(256)...相关推荐

  1. mysql停止主从_不停止mysql服务配置主从

    不影响主库线上的服务前提下,增加从库,前提是线上的主库配置中已经开启binlog并且指定了server-id. linux主192.168.0.70 版本Centos6.7 nginx1.10 php ...

  2. mysql 树形结构_再读MySQL索引-《高性能MySQL》索引手记

    最近工作中经常和MySQL打交道,当数据量小的时候,不同查询方式以及是否使用索引并无大碍,当数据量随着业务的成长急剧加速时,索引的重要性不言而喻. 本篇文章以<高性能MySQL>中的索引章 ...

  3. mysql 存储过程无效_用VC通过DLL包连接MySQL,执行存储过程后,再执行其他查询无效?解决方法...

    用VC通过DLL包连接mysql,执行存储过程后,再执行其他查询无效? MYSQL mysql; mysql_init(&mysql); mysql_real_connect(&mys ...

  4. mysql fnv算法_《高性能MySQL》读书笔记之创建高性能的索引

    索引是存储引擎用于快速找到记录的一种数据结构.索引优化是对查询性能优化的最有效手段.索引能够轻易将查询性能提高几个数量级.创建一个最优的索引经常需要重写查询. 5.1索引基础 在MySQL中,存储引擎 ...

  5. mysql数据库算法_数据库:MySQL索引背后的数据结构及算法原理【转】

    原文:http://blog.codinglabs.org/articles/theory-of-mysql-index.html 摘要 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话 ...

  6. mysql dump 导出表_误删库,别跑路!教你一招MySQL 数据恢复

    日常工作中,总会有因手抖.写错条件.写错表名.错连生产库造成的误删库表和数据的事情发生.但是,如果每次删库都跑路的话,怕是再也不好找工作了吧!所以,删库跑路不是上上策. 1.前言 数据恢复的前提的做好 ...

  7. mysql 时间小于_删库不必跑路,自己动手MySQL数据恢复,真香~~

    背景 今天项目上需要对MySQL进行数据修复,通过比较各种方案和工具,准备使用binlog2sql工具进行"数据闪回",具体怎么使用呢,安排. MySQL数据库准备 以恢复某个库的 ...

  8. linux mysql恢复数据_删库不跑路详解MySQL数据恢复

    作者:程淇铭 出处:https://segmentfault.com/a/1190000020116271 日常工作中,总会有因手抖.写错条件.写错表名.错连生产库造成的误删库表和数据的事情发生,那么 ...

  9. mysql 什么树_搞懂MySQL InnoDB B+树索引

    一.InnoDB索引 InnoDB支持以下几种索引: B+树索引 全文索引 哈希索引 本文将着重介绍B+树索引.其他两个全文索引和哈希索引只是做简单介绍一笔带过. 哈希索引是自适应的,也就是说这个不能 ...

  10. mysql ifnull 无效_关于MySql中使用IFNULL()函数失效的问题。

    今天在学习时,碰到一个问题:在联表查询取得结果后,如果取得的结果是空值,则给一个默认值,如果不是空值,则返回这个值. 下面我们来看看业务场景: 在menu表中: 存储的是前端页面的菜单配置,注意成员权 ...

最新文章

  1. QIIME 2用户文档. 21图形界面q2studio(2019.7)
  2. DSP/BIOS实时操作系统中PIP对象多任务间传递数据示例程序
  3. SQL注入1-5_cookie基于base64的注入
  4. int 范围_Java学习之随机生成5个(范围1——33)不同数字的思考
  5. 虚实结合:无需人工标注的可泛化行人再辨识
  6. 冒泡排序,选择排序,插入排序
  7. C语言基础--字符串
  8. 【软件测试】Homework 1 Briefly describe an error
  9. python删除指定日期前的备份文件
  10. java xml 字符串转对象_java读取xml文件并转换成对象,并进行修改
  11. redhat初始化yum源,使用阿里云yum源
  12. 20200815每日一句
  13. html手机背景音乐,HTML插入背景音乐方法【全】
  14. 柯尔莫哥洛夫最后的问题
  15. 愿你与生活交手多年,依然满怀新鲜,
  16. 转:马明哲:拥有执行力才能让你强大
  17. CKEditor 4.12.1富文本编辑器的配置与使用(详细版)
  18. 基于sinc的音频重采样(一):原理
  19. 深信服上网行为管理(AC)、安全网关(SG)学习笔记
  20. Python爬虫编程思想(133):项目实战--利用Appium抓取微信朋友圈信息

热门文章

  1. Golang包管理工具glide简介
  2. OpenGL蓝宝书第五章代码勘误以及惯性坐标系去解释模型变换:Pyramid.cpp
  3. Ubuntu设置中文
  4. 【万里征程——Windows App开发】如何使用粘贴板
  5. C语言的那些小秘密之【内存分配】
  6. Java不适合于作为主要编程教学语言 -- 孟岩
  7. 使用信息架构视图访问数据库元数据
  8. Atiit 如何手写词法解析器
  9. Atitit Atitit.软件兼容性原理----------API兼容 Qa7
  10. Atitit. null错误的设计 使用Optional来处理null