索引

二叉查找树

B-Tree

定义:

B+-Tree

B+树是B树的变体,其定义基本与B树相同,除了:

优点:

Hash索引

缺点:

BitMap索引

密集索引与稀疏索引

InnoDB

问题

  1. 如何定位并优化慢查询
    • 根据慢日志定位慢查询sql
      • 开启慢查询日志set global slow_query_log = on;
      • 设置慢查询时间set global long_query_time = 1;
    • 使用explain等工具分析sql
      • type:找到数据行的方式
      • extra
    • 修改sql或者尽量让sql走索引
  2. 联合索引的最左匹配原则
  3. 索引是建立得越多越好码
    • 数据量小的表不需要建立索引,建立索引会增加额外的索引开销
    • 数据变更需要维护索引,因此更多的索引意味着更多的维护成本
    • 更多的索引意味着y更多的空间

发表评论

发表
Table of Contents