b tree索引

myisam 是通过物理位置来查找引用行的

innodb 是通过主键来查找引用行的

索引优化策略

b-tree索引对数据长度有限制,所以text等比较长的列可以建立前缀索引

btree索引对键值的大小是有限制的

innodb 最大767字节,myisam 1000字节。

大字符串创建索引,不能 很好的提高效率。可以使用前缀索引

为什么选择联合索引

如果同时用到几个列作为查询条件,比每一个列建立单独的索引要快。

什么是覆盖索引

http://wzmtony.blog.163.com/blog/static/20318015620130173619641/

覆盖索引概念:

  MySQL可以利用索引返回SELECT 列表中的字段。而不必根据索引再次读取数据文件。包含所有满足查询需要的数据的索引成为覆盖索引(Covering Index)。也就是平时所说的不需要回表操作。
判断标准:
 在查询前面使用explain,可以通过输出的extra列来判断,对于一个索引覆盖查询,显示为using index,MySQL查询优化器在执行查询前会决定是否有索引覆盖查询。

如果只读取索引就可以查找到所需要的数据的话,就会极大的较少数据的访问量。

处理顺序IO要比随机IO要快

模拟哈希索引步骤

先创建title_md5的列,

然后修改这个字段的值为 MD5(title)

可以创建触发器修改此列

查找的时候

------------------------------------------------------------------------------------------

最新文章

  1. [LeetCode] Word Pattern 词语模式
  2. zoom和transform:scale的区别
  3. How to fix updating ubuntu apt-get problem
  4. pt-find 使用实例
  5. nginx跨域处理
  6. 博客导出工具(C++实现,支持sina,csdn,自定义列表)
  7. SQL server 数据库备份大
  8. 利用Runtime实现简单的字典转模型
  9. git 提交项目代码到码云步骤 以及出现错误解决办法
  10. vscode插件解析-BookMark
  11. html5 浏览文件
  12. tornado 初解
  13. Python 进程池
  14. Ubuntu 16.04配置JDK
  15. vue ie
  16. Spring PropertyResolver 占位符解析(二)源码分析
  17. StackGAN 阅读笔记
  18. myeclipse运行错误
  19. MikroTik RouterOS网址资源收集
  20. 在HTML中引用JavaScript中的变量

热门文章

  1. 树莓派与node.js —— onoff、dht
  2. php字符编码转换之gb2312转为utf8(转)
  3. 【leetcode】409. Longest Palindrome
  4. MySQL中的运算符和时间运算
  5. XXS level5
  6. A Word-Complexity Lexicon and A Neural Readability Ranking Model for Lexical Simplification-paper
  7. RESTful规范(二)
  8. Linux----版本选择
  9. SenjuFamily项目总结 之 Activiti 学习总结(一)
  10. 简单说明 Virtual DOM 为啥快