首页
学习
活动
专区
圈层
工具
发布

#innodb

击穿 MySQL InnoDB MVCC 底层:从 undo log、Read View 到隔离级别的全链路深度拆解

果酱带你啃java

在MySQL的日常使用中,我们几乎每天都在和事务隔离、并发读写打交道。当多个事务同时操作同一行数据时,为什么有的场景会出现脏读、不可重复读,有的场景却能保证数据...

1700

MySQL InnoDB 锁机制全解:行锁 / 表锁 / 间隙锁 / 临键锁底层逻辑与死锁避坑指南

果酱带你啃java

高并发业务场景下,90%的MySQL性能瓶颈、服务阻塞、数据不一致乃至线上故障,都源于对InnoDB锁机制的认知偏差。很多开发者只知道“更新要加行锁”,却不懂锁...

27820

B+Tree数据结构详解

许强爱分享

在前面已经讲过,表空间结构。从Innodb存储引擎的逻辑结构看,所有的数据都被逻辑地放在一个空间内,称之为表空间,表空间又由 段(segment),区(exte...

14410

innodb解析工具--innodb_ruby

许强爱分享

​ innodb存储引擎是个B+Tree存储结构,了解innodb底层的实现,就需要有一个比较可视化的工具来帮助我们理解和拆解复杂的存储文件信息等,最终我找到了...

6910

InnoDB索引深度解析:一级索引与二级索引B+树的Key与Value组成

nobody-nobody

在MySQL的InnoDB存储引擎中,索引是数据查询效率的核心保障。作为MySQL最常用的存储引擎,InnoDB的索引实现基于B+树结构,而其一级索引(聚簇索引...

17710

InnoDB索引深度解析:一级索引与二级索引B+树的Key与Value组成

nobody-nobody

在MySQL的InnoDB存储引擎中,索引是数据查询效率的核心保障。作为MySQL最常用的存储引擎,InnoDB的索引实现基于B+树结构,而其一级索引(聚簇索引...

17710

MySQL 核心内幕:从索引原理、字段选型到日志机制与外键约束,一篇打通数据库任督二脉

stark张宇

北京靠谱前程网络技术有限公司 | Go开发工程师 (已认证)

不管是初识Mysql,还是聊到Mysql的优化,或者是面试中常用到的问题,Mysql的索引能占比非常大,了解和掌握Mysql索引是运用Mysql的关键点,Exp...

36340

MySQL崩溃后启动慢如蜗牛?3招提速InnoDB恢复速度!

俊才

今天想和大家聊一个让无数DBA抓狂的问题:MySQL异常宕机后,重启卡在“InnoDB: Starting crash recovery...”动弹不得,一等就...

13010

MySQL崩溃恢复神器:innodb_force_recovery 参数详解,DBA 必备!

俊才

此时,你的第一反应可能是:“完了,数据是不是丢了?”别慌!MySQL 早已为你准备了一把“救命钥匙”——innodb_force_recovery。

28310

1、mysql索引

许强爱分享

InnoDB是MySQL的默认事务型引擎,也是最重要、使用最广泛的存储引擎。它被设计用来处理大量的短期(short-lived)事务,短期事务大部分情况是正常提...

13810

为什么 InnoDB 中的反向索引扫描更慢?

爱可生开源社区

如果你注意到在 MySQL 中 ORDER BY DESC 查询比 ORDER BY ASC 稍微慢一些,不用担心 —— 这是已知且符合预期的行为。

13310

MySQL,InnoDB,如何调试死锁?(第11讲,超硬核)

架构师之路

区间锁(间隙锁,临键锁)是InnoDB特有施加在索引记录区间的锁,MySQL5.6可以手动关闭区间锁,它由innodb_locks_unsafe_for_bin...

12710

MySQL,InnoDB快照读,在RR和RC下有何差异?(第10讲,超硬核)

架构师之路

MySQL数据库,InnoDB存储引擎,为了提高并发,使用MVCC机制,在并发事务时,通过读取数据行的历史数据版本,不加锁,来提高并发的一种不加锁一致性读(Co...

15410

MySQL,InnoDB究竟如何巧妙实现,4种事务的隔离级别(第9讲,超硬核)

架构师之路

隔离性是指,多个用户的并发事务访问同一个数据库时,一个用户的事务不应该被其他用户的事务干扰,多个并发事务之间要相互隔离。

24610

MySQL,InnoDB的select为什么会阻塞insert?(第8讲,超硬核)

架构师之路

MySQL的InnoDB的细粒度行锁,是它最吸引人的特性之一。InnoDB的细粒度锁,是实现在索引记录上的。

17610

SHOW TABLE STATUS显示行数为0但SHOW INDEX却显示几十万?--MySQL InnoDB 统计信息源码解析

俊才

上述情况是我刚刚做测试时偶尔发现的,数据库版本是MYSQL8.0.39社区版,查询的现象如下:

13210

MySQL,InnoDB的并发插入,使用的是什么锁?(第7讲)

架构师之路

InnoDB里当然也实现了标准的行级锁(row-level locking),共享/排它锁:

16510

数据库圣经--从原理到实战,一文彻底搞懂 InnoDB 索引

Han.miracle

        每⼀个页中即使没有数据也会使用 16KB 的存储空间,同时与索引的B+树中的节点对应,查看页的大小,可以通过系统变量 innodb_page_s...

40410

深度好文:MySQL InnoDB 事务隔离与 MVCC、版本链与 ReadView 原理详解

码哥字节

我去面试的时候滔滔不绝,感觉胜利在握,可是面试官忽然到:“什么是 MVCC,MySQL 有了各种锁?为什么还要射界 MVCC?”

51610

深度好文:MySQL InnoDB 事务隔离与 MVCC、版本链与 ReadView 原理详解

码哥字节

我去面试的时候滔滔不绝,感觉胜利在握,可是面试官忽然到:“什么是 MVCC,MySQL 有了各种锁?为什么还要射界 MVCC?”

51610
领券