后端岗位面试题 · 风险判断 · InnoDB
题库中标记为“后端”的结构化面试题。
共 89928 道真题 · 当前筛选命中 116 道 · 更新 2026-08-05
筛选题目已选:风险判断 · InnoDB
考察点
技术栈
第 1 题请讲解一下双写缓冲(Double Write Buffer)和 InnoDB 的 Pool Buffer 各自的作用及其区别。 考察对 InnoDB 存储引擎关键机制(双写缓冲和缓冲池)的理解深度第 2 题请介绍 InnoDB 的锁机制及其主要特性。 考察对 InnoDB 锁类型、隔离级别与事务特性的掌握第 3 题同样的语句“SELECT ... WHERE student_id != 1 FOR UPDATE”(student_id上有索引,InnoDB默认隔离级别)会加什么锁?与等值查询有何不同? 考察范围查询下InnoDB锁范围与全表扫描锁行为的理解第 4 题在可重复读隔离级别下,执行一条 UPDATE 语句时会涉及哪些锁?请说明加锁过程。 考察可重复读隔离级别下 UPDATE 语句的加锁机制与并发控制理解第 5 题简述 MySQL InnoDB 的加锁流程,即一条 SQL 是如何逐步加锁的? 考察对 InnoDB 加锁机制的整体理解,包括锁类型、加锁顺序与优化第 6 题可重复读隔离级别如何解决幻读? 考察数据库隔离级别实现机制与幻读处理边界第 7 题请解释 InnoDB 中的 Next-Key Lock 及其作用。 考察对 InnoDB 行锁与间隙锁结合机制的理解第 8 题请说明MySQL的redo log、undo log和binlog各自的作用,以及它们之间的写入顺序。 考察数据库事务日志机制的理解与顺序第 9 题执行 SELECT ... WHERE a = 1 FOR UPDATE 会在数据库层面加哪些锁?请分别讨论数据存在、数据不存在以及 a 列是否有索引的情况。 考察数据库行锁、间隙锁、索引与锁机制的深入理解第 10 题请详细说明 MySQL InnoDB 中当前读的加锁机制,包括不同索引条件下的加锁范围。 考察对 InnoDB 当前读锁机制、锁粒度及索引影响的理解第 11 题数据库的隔离级别有哪些?分别解决什么问题? 考察对隔离级别的定义、问题和权衡的理解第 12 题当A是非唯一索引,表中仅有 A=1 和 A=10 两条数据时,执行 SELECT * FROM t WHERE A=5 FOR UPDATE 和 SELECT * FROM t WHERE A=6 FOR UPDATE 会互相阻塞吗? 考察非唯一索引下间隙锁的加锁范围与互斥行为第 13 题请介绍一下你们项目使用的数据库,并详细说明 MySQL InnoDB 引擎的特点和工作原理。 考察数据库选型依据及对 InnoDB 核心机制的理解深度第 14 题为什么MySQL(InnoDB)也需要redo log(重做日志)? 考察对InnoDB日志机制与崩溃恢复原理的理解第 15 题请解释数据库中的行锁、间隙锁和临键锁分别是什么,并说明它们的作用。 考察对数据库锁机制的理解,尤其是InnoDB中不同锁类型的区别与用途第 16 题redo log的刷盘机制 考察InnoDB redo log的写入与落盘时机,以及相关配置和故障恢复影响第 17 题如果两个 UPDATE 语句同时执行更新同一行,会发生什么? 考察行锁竞争与事务阻塞机制第 18 题InnoDB 如何解决幻读问题? 考察对 InnoDB 隔离级别、锁机制和一致性读的理解第 19 题在 InnoDB 中,如果 SELECT 一个不存在的数据,是否会产生间隙锁?间隙的范围是如何确定的? 考察对 InnoDB 间隙锁机制及锁范围计算的理解第 20 题在InnoDB默认隔离级别(RR)下,UPDATE语句会加哪些锁?请说明加锁过程和边界情况。 考察InnoDB行锁、间隙锁及隔离级别下的锁行为