面试真题

技术面 + 非技术面高频问题 · 企业真题标题 + 校招宝自研参考答案
面试真题
2508 道
技术岗
641 道
非技术岗
1867 道
当前筛选
74 道

按赛道技术岗以技术方向细分;非技术岗按「结构化 / 半结构化 / 无领导 / HR / 职能」细分

按方向/形式点选即筛,再点「全部」还原

按难度

按企业点选查看该公司全部题目

技术岗 · 分类:数据库 · 难度:中等74 道 · 点击进入查看参考答案

中等数据库
10万条数据分页查询优化方案
结论:避免LIMIT大偏移,改用索引覆盖和游标分页。核心要点:原SQL SELECT * FROM t LIMIT 100000,10会扫描10万行再丢,慢;优化1:子查询定位主键 SELECT * FROM t WHE…
🎤 字节跳动
中等数据库
非聚簇索引为什么要回表?
非聚簇索引(二级索引)的叶子节点不存储完整行数据,仅存储索引列的值和对应的主键(或行指针)。当查询语句所请求的列不能完全由非聚簇索引覆盖时,数据库必须利用叶子中的主键,再去聚簇索引(主键索引,叶子含整行数据)中查找完整记…
🎤 腾讯
中等数据库
乐观锁和悲观锁的策略
结论:悲观锁策略为显式加锁独占;乐观锁策略为版本号/CAS无锁校验。具体:1.悲观锁含数据库行锁(SELECT FOR UPDATE)、Java synchronized/ReentrantLock,进临界区前获锁结束释…
🎤 阿里巴巴
中等数据库
联合索引在什么情况下会失效?
结论:联合索引失效常见于违反最左前缀、对列运算、类型转换、范围查询右侧失效等。要点:1)最左前缀:索引(a,b,c),where b=1或where b=1 and c=2不走索引;2)范围查询:where a>1 an…
🎤 腾讯
中等数据库
慢查询优化怎么做?
结论:慢查询优化需定位瓶颈并针对性调优,核心是使用索引、改写SQL、调结构。要点:1.开启慢查询日志定位耗时SQL;2.用EXPLAIN分析执行计划,关注type、key、rows;3.优化索引:为WHERE、JOIN、…
🎤 腾讯
中等数据库
爬虫反复爬取冷门数据造成热数据在缓存中剔除,从而导致雪崩,如何解决?
结论:因爬虫冷门请求挤占缓存淘汰热数据导致雪崩,需从隔离、淘汰策略、过期控制三方面解决。要点:1.流量隔离:识别爬虫流量(UA/行为)限流或路由至独立缓存区,避免污染业务缓存;2.淘汰策略优化:采用LFU或LRU-K区分…
🎤 Shopee
中等数据库
热key如何处理?
结论:热key处理核心为本地缓存、多副本分散、拆分与限流。原理:热key指超高并发访问的key,集中单节点致负载不均。1.本地缓存:客户端用Caffeine等缓存副本,减少远程调用;2.多副本:将key复制至多个Redi…
🎤 阿里巴巴
中等数据库
如果大量数据写入 MySQL 会发生什么?
结论:大量写入MySQL会导致日志暴增、索引维护重、锁竞争与IO饱和,引发主从延迟。原理:InnoDB写入需记redo/undo日志,更新B+树索引易产生页分裂;高并发插入遇自增锁或间隙锁阻塞;binlog同步造成从库延…
🎤 百度
中等数据库
如何解决Redis缓存穿透问题?
结论:解决Redis缓存穿透(查询不存在数据绕过缓存击打数据库),常用三招:缓存空值、布隆过滤器、接口校验。原理:穿透因缓存与数据库皆无该key,请求每次落到DB;缓存空对象(如NULL)并设短过期(如30s)可拦截重复…
🎤 读书郎
中等数据库
如何理解Buffer Pool
结论:Buffer Pool是InnoDB在内存中缓存数据页和索引页的核心组件,目的是减少磁盘IO提升性能。原理:默认大小为物理内存80%,以16KB页管理;包含free链表(空闲页)、LRU链表(冷热分区,old区防全…
🎤 阿里巴巴
中等数据库
什么是聚簇索引?
结论:聚簇索引(聚集索引)叶子节点直接存储完整数据行,索引顺序与数据物理存储顺序一致,表数据即索引。 核心要点:InnoDB主键索引是聚簇索引,数据按主键B+树有序存放;二级索引叶子存主键值需回表;对比非聚簇索引(如My…
🎤 腾讯
中等数据库
什么是聚集索引和非聚集索引?
结论:聚集索引叶子含整行数据,决定物理顺序;非聚集索引叶子存指针或主键,索引与数据分开。 核心要点:聚集索引表数据按索引键排序,一个表仅一个,InnoDB主键即聚集;非聚集可多个,MyISAM叶子指向数据文件地址,Inn…
🎤 京东
中等数据库
事务的 ACID 特性和隔离级别有哪些?
结论:事务ACID指原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability);隔离级别有读未提交、读已提交、可重复读、串行化四级。核心要点:原子性靠un…
🎤 京东
中等数据库
数据库的事务是什么?MySQL怎么满足持久性的要求?
结论:事务是数据库操作的逻辑单元,满足ACID(原子性、一致性、隔离性、持久性)。持久性指事务提交后结果永久生效,即使故障不丢。MySQL的InnoDB通过WAL(写前日志)保证:事务修改先写内存并记redo log,提…
🎤 元象
中等数据库
数据库索引怎么使用?
结论:索引用于加速查询,应建立在高频查询条件列上,注意最左前缀和选择性。核心要点:1.在WHERE、JOIN、ORDER BY列建索引;2.联合索引遵循最左匹配原则;3.高选择性列(如唯一ID)适合建索引,低选择性(如性…
🎤 京东
中等数据库
数据库写入压力大怎么优化?
结论:从架构、存储、SQL、硬件多维度优化写入压力。核心要点:1.批量写入代替单条INSERT,如INSERT VALUES(),(),();2.减少事务开销,合理控制事务大小,避免长事务;3.异步写入:通过消息队列削峰…
🎤 百度
中等数据库
数据库中的乐观锁是如何实现的?
结论:乐观锁假设并发冲突少,通过版本号或时间戳机制在更新时校验,不加锁。核心要点:1.表中增加version字段(或时间戳);2.读取数据时连带版本号;3.更新时带条件WHERE id=? AND version=?,若…
🎤 网易
中等数据库
索引失效场景有哪些?
结论:常见索引失效场景包括:对索引列进行函数操作或运算;隐式类型转换;模糊查询以%开头;OR连接非索引列;不符合最左前缀原则(联合索引);优化器认为全表更快;使用!=或NOT IN等否定条件;字符集不一致导致转换。原理:…
🎤 腾讯
中等数据库
索引失效的场景?
结论:索引失效指查询未利用B+树索引而走全表。核心场景:索引列参与计算或函数;隐式转换;前导模糊匹配;联合索引未遵循最左匹配;OR含非索引字段;负向查询优化器放弃;统计信息不准。原理:B+树依赖列有序性,上述操作使键值无…
🎤 腾讯
中等数据库
索引生效了还是很慢怎么办?
结论:索引生效仍慢需排查选择性低、回表多、统计信息不准或IO瓶颈。要点:EXPLAIN观察rows与Extra,若Using index condition但回表量大则慢;低选择性索引(如性别)考虑联合或覆盖索引;避免S…
🎤 百度
第 1 / 4 页下一页 ›
题目整理自公开面经,答案由校招宝自研生成,仅供参考