引用:

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  可以用于“ >、

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分析

-

mysql navicat 组合索引_Navicat设置MySQL索引+MySQL索引知识相关推荐

  1. mysql root密码忘记2018_2018-03-28设置及修改mysql用户密码学习笔记

    退出mysql方法 quit或者exit 设置及修改mysqlroot用户密码 安装mysql后,默认管理员root密码为空,这很不安全,需要设置一个密码,在安装mysql单实例后,有个初始优化的一些 ...

  2. mysql 远程虚拟主机_navicat 远程连接虚拟机MYSQL数据库

    1. secureCRT远程虚拟机,输入 netstat -anp| grep 3306 如上图结果中显示mysql 3306前面的ip不是0.0.0.0 2.修改/etc/mysql/mysql.c ...

  3. mysql navicat 组合索引_mysql组合索引与字段顺序

    很多时候,我们在mysql中创建了索引,但是某些查询还是很慢,根本就没有使用到索引! 一般来说,可能是某些字段没有创建索引,或者是组合索引中字段的顺序与查询语句中字段的顺序不符. 看下面的例子: 假设 ...

  4. mysql navicat 设计表_Navicat for MySQL 如何设计报表版面

    原标题:Navicat for MySQL 如何设计报表版面 是一套管理和开发MySQL或MariaDB的理想解决方案,支持单一程序,可同时连接到MySQL和MariaDB.这个功能齐备的前端软件为数 ...

  5. mysql navicat 设计表_Navicat for MySQL 设计报表版面教程

    Navicat for MySQL是一套管理和开发MySQL或MariaDB的理想解决方案,支持单一程序,可同时连接到MySQL和MariaDB.这个功能齐备的前端软件为数据库管理.开发和维护提供了直 ...

  6. mysql navicat关系图_navicat怎么看表关系

    Navicat软件真是一个好东西.今天需要分析一个数据库,然后想看看各个表之间的关系,所以需要查看表与表之间的关系图,专业术语叫做ER关系图. 默认情况下,Navicat显示的界面是这样的: 软件将表 ...

  7. 史上最简单MySQL教程详解(进阶篇)之索引及失效场合总结

    史上最简单MySQL教程详解(进阶篇)之索引及其失效场合总结 什么是索引及其作用 索引的种类 各存储引擎对于索引的支持 简单介绍索引的实现 索引的设置与分析 普通索引 唯一索引(Unique Inde ...

  8. php网站mysql数据库导入工具_phpstudy通过phpMyAdmin导入mysql数据库方法

    不是我们作品的用户,也可联系上面QQ提供有偿人工指导服务 导入Mysql数据库只用导一次,以后项目出问题了,也不用操作数据库了.但是运行程序的时候一定保证phpstudy是启 动状态. 1.a.把电脑 ...

  9. mysql+index组合索引_MySQL 优化之 index merge(索引合并)

    标签: MySQL5.0之前,一条语句中一个表只能使用一个索引,无法同时使用多个索引.但是从5.1开始,引入了 index merge 优化技术,对同一个表可以使用多个索引.理解了 index mer ...

最新文章

  1. [Java][Android] 多线程同步-主线程等待全部子线程完毕案例
  2. python中函数的括号使用
  3. C# 10 完整特性介绍
  4. 同学们,看看这里吧!!!
  5. 盘点技术史:流量运营(PC 时代)
  6. python七巧板三角形_用七巧板拼出14种三角形,这才是图形认知的神器!
  7. keil 快捷键_KEIL 那些编辑技巧与方法
  8. 牛顿插值实验报告C语言,牛顿插值C语言.doc
  9. modprobe命令使用方法
  10. nginx mozilla_Mozilla Firefox 11岁生日快乐!
  11. ES6新特性_let变量声明以及声明特性---JavaScript_ECMAScript_ES6-ES11新特性工作笔记003
  12. kibana常见启动报错
  13. 【Oracle Database】Oracle GoldenGate (single-single)
  14. top conference in AI
  15. 软件架构设计的几点理解
  16. Dalamud:FFXIV插件框架和API-源码
  17. 4WRLE27Q3-600M-4X/MXY/24A1比例先导方向阀
  18. _beginthread 与 _endthread 函数分析 (ReactOS版)
  19. 世嘉MD游戏开发【十四】:SRAM存档和读档
  20. BFS——骑士的拯救行动

热门文章

  1. Linux平台开发技术指南
  2. [Silverlight入门系列]使用MVVM模式(1):MVVM核心概念
  3. 集合框架源码学习之HashMap(JDK1.8)
  4. ERP实施成功与否,企业文化是致命因素?
  5. 大型网站架构系列:分布式消息队列
  6. Linux mail 命令
  7. (2014年2月7日升级)Ubuntu-14.04-Alpha2-32位简体中文优化封装版
  8. [转载] 七龙珠第一部——第125话 神将登场
  9. UCOS在LPC上的移植
  10. PHP CGI 中 fix_pathinfo 引起的安全隐患