什么是分库分表?何时需要进行分库分表?
日期:2026-07-05 标签:#面试 #八股 #MySQL #分库分表 #架构 一句话答案 分库分表是把单库单表的数据按规则拆到多个库或多张表中,用来缓解单库容量、单表数据量、读写压力和可用性瓶颈;通常在垂直优化、索引优化、缓存、读写分离都无法支撑业务增长时才考虑。 面试口语版 分库分表本质上是数据库层面的水…
阅读全文文章归档
关于前端、工程与日常思考的记录。找到一个主题,开始阅读。
日期:2026-07-05 标签:#面试 #八股 #MySQL #分库分表 #架构 一句话答案 分库分表是把单库单表的数据按规则拆到多个库或多张表中,用来缓解单库容量、单表数据量、读写压力和可用性瓶颈;通常在垂直优化、索引优化、缓存、读写分离都无法支撑业务增长时才考虑。 面试口语版 分库分表本质上是数据库层面的水…
阅读全文日期:2026-07-05 难度:简单 标签:#面试 #八股 #MySQL #数据库 #索引 #VIP 一句话答案 MySQL 常见索引可以按数据结构、功能和字段组合来分:B+ 树索引、哈希索引、全文索引、空间索引;主键索引、唯一索引、普通索引;单列索引、联合索引、前缀索引等。 面试口语版 InnoDB 中最常用…
阅读全文日期:2026-07-05 难度:困难 标签:#面试 #八股 #MySQL #B+树 #索引 #VIP 一句话答案 MySQL 使用 B+ 树索引查询时,会从根节点开始按键值比较定位到子节点,逐层向下直到叶子节点;叶子节点中找到目标索引记录后,如果是聚簇索引可直接拿到整行,如果是二级索引通常还要拿主键回表。 面试…
阅读全文日期:2026-07-05 难度:中等 标签:#面试 #八股 #MySQL #B+树 #索引 #VIP 一句话答案 MySQL 选择 B+ 树,是因为它扇出高、树高低、磁盘 IO 少,叶子节点有序且链表相连,既适合等值查询,也适合范围查询、排序和分页。 面试口语版 数据库索引主要瓶颈是磁盘 IO,所以希望树尽量矮…
阅读全文日期:2026-07-05 难度:中等 标签:#面试 #八股 #MySQL #数据库 #SQL执行过程 #VIP 一句话答案 一条 SQL 在 MySQL 中大致会经过连接器、解析器、预处理器、优化器、执行器,再调用存储引擎读取或修改数据;如果是更新语句,还会涉及 undo log、redo log、binlog…
阅读全文日期:2026-07-05 难度:中等 标签:#面试 #八股 #MySQL #索引 #ICP #VIP 一句话答案 索引下推是 MySQL 在使用二级索引查询时,把部分 WHERE 条件下推到存储引擎层先用索引字段过滤,减少回表次数。 面试口语版 没有索引下推时,MySQL 可能先通过索引找到一批主键,再逐条回表…
阅读全文日期:2026-07-05 难度:简单 标签:#面试 #八股 #MySQL #索引 #最左前缀 #VIP 一句话答案 最左前缀原则是指联合索引按从左到右的字段顺序组织,查询条件必须从索引最左列开始连续匹配,才能充分利用联合索引。 面试口语版 比如有联合索引 (a,b,c),它先按 a 排序,a 相同再按 b 排序…
阅读全文日期:2026-07-05 难度:中等 标签:#面试 #八股 #MySQL #索引 #回表 #VIP 一句话答案 回表是指通过二级索引先查到主键值,再拿主键值回到聚簇索引中查询完整数据行的过程。 面试口语版 在 InnoDB 里,二级索引叶子节点不保存整行数据,只保存索引列和主键值。如果查询字段不在这个二级索引里…
阅读全文日期:2026-07-05 难度:简单 标签:#面试 #八股 #MySQL #数据库 #排序 一句话答案 MySQL 排序主要有两种方式:能利用索引顺序时直接按索引返回;不能利用索引时会执行 filesort,在内存排序缓冲区中排序,数据量过大时可能借助磁盘临时文件。 面试口语版 MySQL 处理 ORDER B…
阅读全文日期:2026-07-05 难度:简单 标签:#面试 #八股 #后端 #数据同步 #数据库 一句话答案 全量同步是把源端某个时点的全部数据完整同步到目标端;增量同步只同步上次同步后发生变化的数据。全量简单可靠但成本高,增量效率高但依赖变更捕获和一致性控制。 面试口语版 全量同步就是从源库把所有数据拉一遍,适合初始…
阅读全文日期:2026-07-05 标签:#面试 #八股 #MySQL #数据库设计 #范式 一句话答案 三大范式分别要求字段原子性、非主键字段完全依赖主键、非主键字段不能传递依赖主键;实际项目中通常先用范式化保证数据一致性和可维护性,再针对高频查询、性能瓶颈和报表场景做可控的反范式冗余。 面试口语版 数据库三大范式主要…
阅读全文日期:2026-07-05 难度:中等 标签:#面试 #八股 #MySQL #日志 #binlog #redoLog #undoLog #VIP 一句话答案 MySQL 常见日志包括 binlog、redo log、undo log、慢查询日志、错误日志、通用查询日志等;其中 binlog 用于归档和复制,red…
阅读全文试试其他关键词,或重置筛选条件。