登录
首页 >  数据库 >  MySQL

数据库索引

来源:SegmentFault

时间:2023-02-16 15:39:41 188浏览 收藏

知识点掌握了,还需要不断练习才能熟练运用。下面golang学习网给大家带来一个数据库开发实战,手把手教大家学习《数据库索引》,在实现功能的过程中也带大家重新温习相关知识点,温故而知新,回头看看说不定又有不一样的感悟!

数据库索引

  • 为什么使用索引

一般数据量少的情况下,数据加载到内存后进行全表扫描。数据量一大必须加索引(字典)。
  • 什么样的信息能成为索引

能把该记录限定在一定查找范围内的字段。主键、唯一键。
  • 索引的数据结构

生成索引,建立二叉查找树进行二分查找,
生成索引,建立B-Tree,B+-Tree,Hash结构进行查找。
  • 密集索引和稀疏索引的区别

索引模块

  • 如何定位并优化慢查询Sql

- 根据慢日志定位慢查询sql
    show VARIABLES like '%query%'; -- 查询慢查询记录
    show status like '%slow_queries%';
    set global slow_query_log = on; -- 开启慢查询日志
    set global long_query_time = 1; -- 设置慢查询指定的时间为1s

clipboard.png

    explain select ..... -- 执行计划查看sql
    如果explain执行计划中`type字段`是index、all的时候就需要优化了,
    如果`extra字段`是Useing_filesort(文件排序)、Useing_temporary(临时表)也需要使用索引优化。
    

clipboard.png

- 使用explain执行计划分析sql
- 修改sql或者尽量让sql走索引
  • 联合索引的最左匹配原则的成因
  • 索引是建立的越多越好么

本篇关于《数据库索引》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于数据库的相关知识,请关注golang学习网公众号!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>