2、唯一索引:与普通索引类似,但具有唯一性约束。 3、主键索引:特殊的唯一索引,不允许有空值。 4、复合索引:将多个列组合在一起创建索引,可以覆盖多个列。 5、外键索引:只有InnoDB类型的表才可以使用外键索引,保证数据的一致性、完整性和实现级联操作。 6、全文索引:MySQL 自带的全文索引只能用于 InnoDB、MyISAM ,...
事务A select lock in share mode时,事务B对同一个ID select lock in share mode时不会阻塞,因为select lock in share mode是共享锁 事务A select lock in share mode时,事务B对同一个ID update会阻塞,因为共享锁和排他锁互斥 事务A update时,事务B对同一个id update会阻塞,因为排他锁和排他锁互斥 事务...
所以在需要查询数据的情况下每次的磁盘的IO跟树高有直接的关系,但是从另一方面来说,由于数据都被放到了叶子节点,所以放索引的磁盘块锁存放的索引数量是会跟这增加的,所以相对于B树来说,B+树的树高理论上情况下是比B树要矮的。B+树一定是检索到叶子节点才能取到数据,而B树在索引中数据满足了当前查询语句所需要的...
MySQL是一个开源的关系型数据库管理系统,可以在多个平台上运行。下面是一些关于MySQL的定义、数据的存储、锁、索引、事务与隔离的基本知识点:1、 定义:MySQL是一种开源的关系型数据库管理系统,由MySQL AB开发,现在属于Oracle Corporation旗下产品。它支持多种操作系统,并且可以用多种编程语言进行开发。2、数据的...
MySQL索引、事务、锁、MVCC简述 一、索引 1.1 执行计划 Explain 1.2 索引结构 1.2.1 Hash 1.2.2 二叉搜索树 1.2.3 平衡二叉搜索树(AVL) 1.2.4 多叉平衡搜索树 1.2.4.1 B-Tree 1.2.4.2 B+Tree 1.2.5 B-Tree与B+ Tree的区别 1.3 Myisum与InnoDB的区别 ...
MySQL可以使用多个字段同时建立一个索引,叫做联合索引。在联合索引中,如果想要命中索引,需要按照建立索引时的字段顺序挨个使用,否则无法命中索引。 在创建多列索引时,我们根据业务需求,where子句中使用最频繁的一列放在最左边,因为MySQL索引查询会遵循最左前缀匹配的原则,即最左优先,在检索数据时从联合索引的最左边开始匹...
一、索引解决了什么问题 1,提升了查询效率,它就像字典的目录,让我们可以快速查找到想要的数据。 2,提高了CPU使用率,由于索引的数据结构是b+树,带着排序功能,所以一定程度上可以达到此目的。 hash 属于无序的数据结构。当进行范围查找的时候无效。 mysql 的索引类型跟存储引擎是相关的,innodb 存储引擎数据文件跟索引...
insert : 会将插入的数据的创建 事务ID A 弄成当前insert的事务ID update: 会弄新的一条数据但是创建ID不一样,原来那条数据的结束ID变成当前事务ID delete: 将当前数据的结束ID变成当前事务ID 索引 普通索引 在某个列字段建立索引,会建立一棵B+树,用来查询 ...
B站讲的最好的MySQL数据库教程,包含所有干货内容,mysql基础入门-索引-锁-事务-进阶-SQL优化-工具拓展全部讲明白,一周学完,让你少走99%弯路!共计76条视频,包括:【MySQL基础篇】01.数据库三大范式是什么、【MySQL基础篇】02.数据库表的连接方式、【MySQL基础篇】03.当
二.事务 (1)回滚(rollback) (2)事务的操作 (3)事务的四大特性 三.MySQL的四个隔离级别 一.索引 索引:本质上相当于书的目录 目的:加快查询速度 缺点:增高了增删改的开销(此时进行增删改,就需要调整已经创建好的索引(目录)) 提高了空间开销 使用:查看索引,创建索引,删除索引 ...