面试题库

全部 Django Elasticsearch FastAPI Flask Function Call JVM Java IO Java 后端 Java 基础 Java 并发 Java 新特性 Java 集合 JavaWeb Kafka LLM LangChain LangGraph MongoDB MyBatis MySQL Netty Nginx Python RAG RabbitMQ Redis RocketMQ Spring Spring AI SpringBoot SpringCloud SpringMVC ZooKeeper 分布式 后端技术 大厂面经 大数据 微服务 提示词工程 操作系统 数据库 数据结构 智能体 海康威视2026秋季社招专项 消息队列 监控运维 算法 系统设计 缓存 计算机基础 计算机网络 设计模式 面试题 高可用 高并发
MySQL 中等

一致性非锁定读(consistent read)与半一致性读有何区别?后者在什么语句下出现?

MySQL 中等

更新主键在 MVCC 中如何体现?为什么它本质是"删除旧记录 + 插入新记录"?

MySQL 中等

一个事务修改记录时,旧版本是何时写入 undo log 的?UPDATE 对 undo log 的写入流程是怎样的?

MySQL 困难

为什么说 InnoDB 的 MVCC 是"基于 undo log 的伪 MVCC",与 PostgreSQL 的 MVCC 有何本质区别?

MySQL 中等

MVCC 在 READ UNCOMMITTED 与 SERIALIZABLE 级别下是否生效?各是什么行为?

MySQL 困难

二级索引上是否也保存了版本信息?二级索引如何借助聚簇索引完成 MVCC 回表判断?

MySQL 中等

长事务为什么会导致 undo log 无法被 purge?如何定位持有最老 ReadView 的事务?

MySQL 困难

purge 线程是如何清理过期的 undo 版本链的?清理时机与 undo 页的复用机制是什么?

MySQL 中等

为什么 MVCC 的读是"无锁"的?它的代价是什么(undo 膨胀、purge 负担)?

MySQL 困难

MVCC 与乐观锁、悲观锁是什么关系?MVCC 属于无锁并发控制吗?

MySQL 中等

当前读(SELECT ... FOR UPDATE / UPDATE / DELETE)为什么走的是最新已提交版本而不是快照?

MySQL 中等

可重复读为什么能在同一事务多次读之间保持一致?ReadView 复用是关键吗?