MySQL 面试题共74篇

MySQL 是主流的开源关系型数据库管理系统,是后端开发者必备的技能。MySQL 面试的重点包括数据表设计、SQL 查询、索引优化、事务管理、锁机制、存储引擎(如 InnoDB)、高并发处理和性能调优等。

面试题:MySQL 中 int(11) 的 11 表示什么?

在 MySQL 中,INT(11) 的括号内的数字(如这里的 11)实际上并不表示该整数类型可以存储的数值范围。 对于 INT 类型来说,它占用4个字节,无论你指定的宽度是多少,其能够存储的数值范围都是固...
程序百科的头像-程序百科程序百科34天前
4515

面试题:在 MySQL 中,你使用过哪些函数?

作为开发者,我在 MySQL 中经常使用以下各类函数: 一、字符串函数 基础处理函数: CONCAT(str1, str2,...) - 字符串连接 SUBSTRING(str, pos, len) - 提取子串 TRIM([BOTH|LEADING|TRAILING]...
程序百科的头像-程序百科程序百科1个月前
306

面试题:MySQL 中长事务可能会导致哪些问题?

在 MySQL 中,长事务(长时间运行的事务)可能会对数据库性能、稳定性和一致性造成多方面的影响。以下是长事务可能导致的主要问题及解决方案: 1. 锁等待和死锁 问题: 锁资源占用:长事务会长...
程序百科的头像-程序百科程序百科34天前
296

面试题:MySQL 三层 B+ 树能存多少数据?

MySQL 三层 B+ 树存储容量分析 要计算 MySQL 中三层 B+ 树能存储多少数据,我们需要考虑以下几个关键因素: 1. B+ 树结构特点 非叶子节点:只存储键值和指针(不存储实际数据) 叶子节点:存储...
程序百科的头像-程序百科程序百科1个月前
5215

面试题:从 MySQL 获取数据,是从磁盘读取的吗?(buffer pool)

1. 核心结论 不一定。MySQL 的数据读取优先从内存中的 Buffer Pool 获取,只有在 Buffer Pool 缺失时才从磁盘读取。 Buffer Pool 是 InnoDB 存储引擎的核心组件,通过缓存数据页(16KB)和索引...
程序百科的头像-程序百科程序百科36天前
206

面试题:MySQL InnoDB 引擎中的聚簇索引和非聚簇索引有什么区别?

MySQL InnoDB 引擎中聚簇索引与非聚簇索引的区别 1. 定义与核心特性 特性聚簇索引(Clustered Index)非聚簇索引(Non-Clustered Index / 二级索引)定义数据行的物理存储顺序与索引的逻辑顺序...
程序百科的头像-程序百科程序百科34天前
4515

面试题:MySQL 中 EXISTS 和 IN 的区别是什么?

在 MySQL 中,EXISTS 和 IN 都是用于子查询的关键字,但它们的工作机制和使用场景有所不同。 EXISTS 功能:EXISTS 用于检测子查询是否返回行。如果子查询返回一行或多行,则 EXISTS 的结果为 TR...
程序百科的头像-程序百科程序百科1个月前
2314

面试题:MySQL 中 count(*)、count(1) 和 count(字段名) 有什么区别?

在 MySQL 中,COUNT(*)、COUNT(1) 和 COUNT(字段名) 都是用于计算行数的聚合函数,但它们之间有一些细微的区别: 1. COUNT(*) 作用:计算表中所有行的数量,包括含有 NULL 值的行。 性能:MySQL...
程序百科的头像-程序百科程序百科34天前
2713

面试题:数据库的三大范式是什么?

数据库的三大范式是数据库设计中用于减少数据冗余、提高数据一致性和完整性的规范规则。以下是它们的详细说明: 1. 第一范式(1NF) 定义:表中的每一列都是不可分割的原子值(最小单元),即字...
程序百科的头像-程序百科程序百科1个月前
2914

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

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