数据库共127篇

面试题:MySQL 的覆盖索引是什么?

MySQL 的覆盖索引是什么? 覆盖索引(Covering Index) 是 MySQL 中一种优化技术,指查询所需的所有字段都包含在某个索引中,使得 MySQL 可以直接通过索引获取数据,而无需回表查询实际的...
程序百科的头像-程序百科程序百科8个月前
4011

面试题:如果 MySQL 中没有 MVCC,会有什么影响?

如果 MySQL 中没有 MVCC(多版本并发控制),会对数据库的并发性能、隔离级别、一致性读等方面产生显著影响。以下是具体的影响分析: 1. 并发性能急剧下降 问题:MVCC 的核心目标是减少读...
程序百科的头像-程序百科程序百科8个月前
6311

面试题:MySQL 插入一条 SQL 语句,redo log 记录的是什么?

当 MySQL 执行一条插入(INSERT)SQL 语句时,redo log(重做日志)记录的是物理层面的页修改,而不是 SQL 语句本身。具体来说: 1. redo log 记录的内容 redo log 主要记录以下信息: 被修改的...
程序百科的头像-程序百科程序百科9个月前
5310

面试题:如何使用 Redis 快速实现排行榜?

在 Redis 中实现排行榜(Leaderboard)是一个常见的应用场景,得益于 Redis 的高效性和丰富的数据结构支持,特别是有序集合(Sorted Set),我们可以非常方便地创建和管理排行榜。下面将介绍如...
程序百科的头像-程序百科程序百科8个月前
3410

面试题:Redis 的持久化机制有哪些?

Redis 的持久化机制主要有以下三种方式: 1. RDB(Redis Database) 原理 RDB 是通过 快照(Snapshot) 的方式,将 Redis 内存中的数据在指定时间间隔内持久化到磁盘上,生成一个&nbs...
程序百科的头像-程序百科程序百科8个月前
3910

面试题:如何解决 Redis 中的热点 key 问题?

解决 Redis 中的 热点 Key 问题(即某个 Key 被大量并发访问,导致 Redis 节点负载过高甚至崩溃)是高并发场景下的核心挑战之一。以下是常见的解决方案,结合理论与实际场景的分析: 1. 本...
程序百科的头像-程序百科程序百科8个月前
4410

面试题:MySQL 是如何实现事务的?

MySQL 的事务实现主要依赖于 InnoDB 存储引擎,通过 日志系统(Redo Log、Undo Log)、锁机制 和 多版本并发控制(MVCC) 来实现事务的 ACID 特性(原子性、一致...
程序百科的头像-程序百科程序百科8个月前
6210

面试题:请详细描述 MySQL 的 B+ 树中查询数据的全过程

MySQL 的 B+ 树 是 InnoDB 存储引擎实现索引的核心数据结构。查询数据的过程涉及从根节点逐层向下查找,最终在叶子节点定位目标数据。以下是基于 聚簇索引(主键索引) 和&...
程序百科的头像-程序百科程序百科8个月前
8010

面试题:MySQL 的乐观锁和悲观锁是什么?

在 MySQL 中,乐观锁和悲观锁是两种处理并发控制的方法,它们分别适用于不同的场景,并以不同的方式来保证数据的一致性和完整性。 悲观锁(Pessimistic Locking) 概念:悲观锁假设会发生并发冲...
程序百科的头像-程序百科程序百科8个月前
3410

面试题:什么是数据库的游标?

数据库游标是什么? 游标(Cursor) 是数据库中用于逐行处理查询结果集的机制。它像一个指针,指向结果集中的某一行,允许开发者按顺序(或随机)访问、修改结果集中的每一行数据。游标的核心作...
程序百科的头像-程序百科程序百科9个月前
4510