1.索引的概念 数据库查找时,没有索引的话需要遍历,浪费时间。通过索引能更快定位要要查找的内容的位置,索引就是Java/C里面的数组下标,通过下标直接获取数组的内容。数据库索引的实现有2种,B+树和哈希。 2.索引的优缺点 (1)优点:所有的字段都可以通过添加索引从而提高查找效率。 (2)缺点:创建 ...
分类:
数据库 时间:
2020-05-03 18:19:21
阅读次数:
74
MySQL的逻辑结构 客户端+服务器+存储引擎 存储引擎 查看存储引擎: show engines.我的电脑里默认的是InnoDB; InnoDB和MyISAM索引采用的是B+树, MEMORY采用的是Hash索引. MySql中最常用的的存储引擎是InnoDB和MyISAM. 前者在磁盘中会落2个 ...
分类:
数据库 时间:
2020-04-26 20:44:48
阅读次数:
114
数据库索引 什么是回表 通俗的讲:如果索引的列在select所需获得列中就不需要回表(因为在mysql中索引是根据索引列的值进行排序的,所以索引节点中存在该列中的部分值),如果select所需获得列中有大量的非索引列,索引就需要到表中找到相应的列的信息,这就叫回表。 索引覆盖 如果一个索引包含(或覆 ...
分类:
其他好文 时间:
2020-04-23 10:32:28
阅读次数:
162
一、测试环境部署项目常用命令: 1、ssh 账号名@ip 端口号 #登录远程服务器 2、登录yun账号: su -yun ccpdo su #切换root权限 3、cd 项目所在路径 #进入项目部署的路径 git status #查看git状态 git branch #查看当前git关联分支 git ...
分类:
其他好文 时间:
2020-04-15 18:13:39
阅读次数:
63
MySQL索引 MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用MySQL时主要打交道的索引。 MySQL官方对索引的定义为:索引(Index ...
分类:
数据库 时间:
2020-04-03 12:07:42
阅读次数:
63
B+TreeB+Tree是在B-Tree基础上的一种优化,使其更适合实现外存储索引结构,InnoDB存储引擎就是用B+Tree实现其索引结构。 从上一节中的B-Tree结构图中可以看到每个节点中不仅包含数据的key值,还有data值。而每一个页的存储空间是有限的,如果data数据较大时将会导致每个节 ...
分类:
数据库 时间:
2020-03-29 01:02:54
阅读次数:
90
MySQL常见的两种存储引擎:MyISAM与InnoDB Mysql索引使用的数据结构主要有BTree索引 和 哈希索引 。对于哈希索引来说,底层的数据结构就是哈希表,因此在绝大多数需求为单条记录查询的时候,可以选择哈希索引,查询性能最快;其余大部分场景,建议选择BTree索引。 Mysql的BTr ...
分类:
数据库 时间:
2020-03-27 11:11:43
阅读次数:
127
1. InnoDB存储引擎索引: B+树索引;全文索引;哈希索引 InnoDB引擎支持的哈希索引是自适应的,InnoDB存储引擎会根据表的使用情况自动为表生成哈希索引,不能人为干预是否在一张表中生成哈希索引。 B+树索引,根据键值快速找到数据。B+树索引并不能找到一个给定键值的具体行,B+树索引能找 ...
分类:
数据库 时间:
2020-03-23 00:08:08
阅读次数:
70
Adaptive Hash Index, AHI 场景 比如我们每次从辅助索引查询到对应记录的主键,然后还要用主键作为search key去搜索主键B+tree才能找到记录. 当这种搜索变多了,innoDB引擎会进行优化. 维护索引叶页面中所有记录的索引键值(或键值前缀)到索引叶页面位置的Hash映 ...
分类:
其他好文 时间:
2020-03-08 17:58:48
阅读次数:
79
一起聊聊覆盖索引,辅助索引,唯一索引,Hash索引,B-Tree索引......”到底是些什么东西???? ...
分类:
数据库 时间:
2020-03-07 09:41:09
阅读次数:
71