最新 最热

大厂最爱问的MVCC,到底是个啥?

多版本并发控制(MVCC)是一种用于提高数据库并发性能的技术,尤其在处理高并发读写操作时极为有效。MVCC通过维护数据的多个版本来避免读写冲突,使得读操作无需阻塞写操作,写操作也不会影响读操作。下面,我们具体讲解MySQL中I...

2024-09-04
2

mysql启动失败,咋办呢?报错如下:InnoDB: the .ibd file, you can set innodb_force_recovery > 0 in my.cnf

其实错误日志已经告诉我们该怎么做了:InnoDB: the .ibd file, you can set innodb_force_recovery > 0 in my.cnf

2024-08-07
3

MySQL事务(三)InnoDB存储引擎下SQL执行的缓存机制

在 MySQL架构(二)SQL 更新语句是如何执行的?中,小鱼介绍了SQL 更新语句的执行流程,文章中考虑初次介绍MySQL 架构,涉及到服务层的流程并没有展开介绍。...

2024-05-28
2

MySQL 核心模块揭秘 | 17 期 | InnoDB 有哪几种行锁?

除了以上三类,排他锁(X)还包含另一类有点特殊的锁,就是插入意向锁(LOCK_INSERT_INTENTION)。

2024-05-22
2

MySQL 核心模块揭秘 | 16 期 | InnoDB 表锁

作者:操盛春,爱可生技术专家,公众号『一树一溪』作者,专注于研究 MySQL 和 OceanBase 源码。

2024-05-20
2

Innodb加索引,这个时候会锁表吗?

在 MySQL 5.6 之前,InnoDB 在索引构建期间会对表进行排它锁定,这意味着其他会话无法读取或修改表中的数据,从而导致长时间阻塞和性能问题。

2024-05-20
1

InnoDB如何解决脏读、不可重复读和幻读的?

在InnoDB中,采用MVCC解决了脏读和不可重复读的问题,而结合MVCC和间隙锁则解决了幻读。

2024-04-26
1

【MySQL】MySQL锁(四)其它锁概念

好了,锁相关内容的最后一篇文章了。其实最核心的内容,表锁、行锁、读锁、写锁、间隙锁这些重要的内容我们都已经学习过了,特别是间隙锁,是不是感觉非常复杂。放心,今天的内容就比较轻松了。...

2024-04-25
2

MySQL `innodb_flush_log_at_trx_commit` 参数

innodb_flush_log_at_trx_commit 是一个重要的 MySQL 系统变量,它控制着 InnoDB 存储引擎在事务提交时如何刷新日志到磁盘。这个参数的设置直接影响到数据库的持久性(Durability)和性能。...

2024-01-05
1

MySQL 8.0 InnoDB 的统计信息机制优化

MySQL 的InnoDB引擎会维护着用户表每个索引的统计信息,来帮助查询优化器选择最优的执行计划,详细的来说,key的分布情况能决定多表join的顺序,也能够决定查询使用哪一个索引。这些统计信息可以由专门的后台线程刷新,也可以由...

2024-01-04
1