MySQL数据库的常见考点

文章详细介绍了ACID事务的四大特性,包括事务的持久性和原子性,以及MVCC的原理和实现,如undolog、readview。同时,探讨了并发事务可能引发的问题和不同的事务隔离级别。此外,还深入讲解了索引的概念、优缺点及不同类型的索引结构,如B-Tree和Hash索引,并涉及锁机制,如共享锁和排他锁在数据库操作中的应用。
摘要由CSDN通过智能技术生成


1、ACID

image-20230201110516214

事务原理

image-20230201183115209

事务持久性

image-20230201184355749

事务原子性

image-20230201184847275

MVCC基本概念

image-20230201185341645

MVCC基本原理

image-20230201185547843

undo log

image-20230201193124540

undo log版本链

image-20230201193916668

readview

image-20230201195741866

MVCC实现原理

image-20230201200202115

RC读已提交

image-20230201201859451

RR可重复读

image-20230201202757006

MVCC实现原理

image-20230201202953875

总结

image-20230201203504311

2、并发事务引发的问题

image-20230201111810443

3、事务隔离级别

image-20230201112426384

注意:事务隔离级别越高,数据越安全,但性能越低

image-20230201114502158

4、索引

4.1、索引概述

image-20230201121618812

4.2、索引优缺点

image-20230201121723698

4.3、索引结构
二叉树

image-20230201122729877

B-Tree树

image-20230201124016293

B+Tree树

image-20230201125911225

B+Tree优化

image-20230201130137365

Hash索引

image-20230201155613366

Hash索引的特点

image-20230201160329135

面试题

image-20230201161040465

索引分类

image-20230201162108409

image-20230201162309066

聚集索引和二级索引

image-20230201162522169

回表查询

image-20230201162713316

InnoDB主键索引的B+tree高度为多高呢?

image-20230201163329831

索引语法

image-20230201164342554

慢查询日志

image-20230201170827235

SQL性能分析

image-20230201171916941

explain执行计划

image-20230201175550239

image-20230201175947637

共享锁

共享锁,又称读锁、S锁。上厕所就相当于修改操作。当事务给行加了共享锁,此时行只能进行读操作,而不能进行写操作。别的事务也只能给其加共享锁,不能加排他锁。

排他锁

排他锁,又称写锁、X锁。当加了排他锁之后,就相当于把洗手间的门关上了,别人不能进去洗手、化妆之类的。也就是说不能进行写操作以及读操作,其他事务不能给其再加锁了。

对于排他锁大家的理解可能就有些差别,我当初就犯了一个错误,以为排他锁锁住一行数据后,其他事务就不能读取和修改该行数据,其实不是这样的。排他锁指的是一个事务在一行数据加上排他锁后,其他事务不能再在其上加其他的锁。

mysql InnoDB引擎默认的修改数据语句,update,delete,insert都会自动给涉及到的数据加上排他锁,select语句默认不会加任何锁类型,如果加排他锁可以使用select …for update语句,加共享锁可以使用select … lock in share mode语句。

所以加过排他锁的数据行在其他事务种是不能修改数据的,也不能通过for update和lock in share mode锁的方式查询数据,但可以直接通过select …from…查询数据,因为普通查询没有任何锁机制。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值