Logo

Logo

Navicat设置MySQL索引+MySQL索引知识

Pastore Antonio
Pastore Antonio 2021年01月19日
386 阅读 0 评论 约 1314 字 阅读约 3 分钟

引用:

https://www.cnblogs.com/bypp/p/7755307.html

https://blog.csdn.net/resilient/article/details/82829820

查看当前MySQL存储引擎:

mysql> show engines;

教程:https://www.cnblogs.com/zhming26/p/6322353.html

 

#0 Navicat操作位置:

#1 索引种类:

1. Fulltext 全文本搜索索引:用于搜索长篇文章。

2. Unique 唯一索引:  

  主键索引:primary key :加速查找+约束(不为空且唯一)
  唯一索引:unique:加速查找+约束 (唯一)

3. 联合索引:

    -primary key(id,name):联合主键索引
    -unique(id,name):联合唯一索引
    -index(id,name):联合普通索引

4. Normal 普通索引:加快搜索。

5. Spatial 空间索引。

#2 索引功能

1. 加快搜索;

2. mysql中的primary key,unique,联合唯一也都是索引,这些索引除了加速查找以外,还有约束的功能

#3 索引的两大类型hash与btree

#我们可以在创建上述索引的时候,为其指定索引类型,分两类
hash类型的索引:查询单条快,范围查询慢
btree类型的索引:b+树,层数越多,数据量指数级增长(我们就用它,因为innodb默认支持它)

#不同的存储引擎支持的索引类型也不一样
InnoDB 支持事务,支持行级别锁定,支持 B-tree、Full-text 等索引,不支持 Hash 索引;
MyISAM 不支持事务,支持表级别锁定,支持 B-tree、Full-text 等索引,不支持 Hash 索引;
Memory 不支持事务,支持表级别锁定,支持 B-tree、Hash 等索引,不支持 Full-text 索引;
NDB 支持事务,支持行级别锁定,支持 Hash 索引,不支持 B-tree、Full-text 等索引;
Archive 不支持事务,支持表级别锁定,不支持 B-tree、Hash、Full-text 等索引;

1)索引方法 btree  可以用于“ >、 <  、=”查询 ,如果查id=1000的数据 建立索引后 二分查找最多13次就可以查出相应的数据;

2)hash 不能做order by排序 不能做 用like模糊查询。

#4 慢查询优化的基本步骤

0.先运行看看是否真的很慢,注意设置SQL_NO_CACHE
1.where条件单表查,锁定最小返回记录表。这句话的意思是把查询语句的where都应用到表中返回的记录数最小的表开始查起,单表每个字段分别查询,看哪个字段的区分度最高
2.explain查看执行计划,是否与1预期一致(从锁定记录较少的表开始查询)
3.order by limit 形式的sql语句让排序的表优先查
4.了解业务方使用场景
5.加索引时参照建索引的几大原则
6.观察结果,不符合预期继续从0分析

查看完整代码

橙子主题打折出售

其实我不卖,主要是这里是放广告的,所以就放了一个
毕竟主题都没做完,卖了也是坑.

购买它
部分文章可能存在转载,如果涉及到侵权,请联系删除文章。

探索AIGC相关的精彩内容,共 14 篇文章

MCP | 一文详解什么是 MCP以及 MCP 可以做什么

一、什么是 MCP MCP(Model Context Protocol)是一个专为大型语言模型(L ... Navicat设置MySQL索引+MySQL索引知识

2026-02-14 · Shen, Luke
你的工作流程,值得一个“全自动数字分身”:录制、截图、成文,一气呵成

一、一句话认识 TestFlow Recorder 在数字化工作环境中,如何准确记录操作步骤并生成清 ... Navicat设置MySQL索引+MySQL索引知识

2026-02-14 · Xzavier Aaron
Flowise 前端框架配置指南

用户需求 问题:有没有适合配置 Flowise 的前端框架? 目标:寻找类似 Open WebUI ... Navicat设置MySQL索引+MySQL索引知识

2026-02-14 · Xzavier Aaron
高效AI故障诊断实践:提升企业运维能力

规划阶段 在现代企业的故障诊断过程中,规划阶段是确保诊断工作顺利开展的关键环节。通过系统化的规划,不 ... Navicat设置MySQL索引+MySQL索引知识

2026-02-14 · Shen, Luke