面试真题

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

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

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

按难度

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

分类:数据库 · 难度:中等 · 企业:百度20 道 · 点击进入查看参考答案

中等数据库
如果大量数据写入 MySQL 会发生什么?
结论:大量写入MySQL会导致日志暴增、索引维护重、锁竞争与IO饱和,引发主从延迟。原理:InnoDB写入需记redo/undo日志,更新B+树索引易产生页分裂;高并发插入遇自增锁或间隙锁阻塞;binlog同步造成从库延…
🎤 百度
中等数据库
数据库写入压力大怎么优化?
结论:从架构、存储、SQL、硬件多维度优化写入压力。核心要点:1.批量写入代替单条INSERT,如INSERT VALUES(),(),();2.减少事务开销,合理控制事务大小,避免长事务;3.异步写入:通过消息队列削峰…
🎤 百度
中等数据库
索引生效了还是很慢怎么办?
结论:索引生效仍慢需排查选择性低、回表多、统计信息不准或IO瓶颈。要点:EXPLAIN观察rows与Extra,若Using index condition但回表量大则慢;低选择性索引(如性别)考虑联合或覆盖索引;避免S…
🎤 百度
中等数据库
一图详解MySQL软件架构
结论:MySQL分四层:连接层、服务层、存储引擎层、文件层。要点:连接层(TCP/SSL、认证、线程池);服务层(SQL接口、解析器、优化器、查询缓存);存储引擎层(InnoDB/MyISAM插件,负责数据读写);物理文…
🎤 百度
中等数据库
怎样排查慢查询
结论:排查慢查询结合慢日志与执行计划。要点:开慢日志(slow_query_log=1; long_query_time=1);用mysqldumpslow或pt-query-digest定位SQL;EXPLAIN看ty…
🎤 百度
中等数据库
主从复制延迟的原因?
主从复制延迟核心原因:主库写入与从库重放之间的时间差。主要因素:1. 主库高并发写入,从库SQL线程单线程重放(或并行复制粒度不足)成为瓶颈;2. 网络延迟或带宽限制,binlog传输慢;3. 从库硬件差或同时承担读请求…
🎤 百度
中等数据库
ES(Elasticsearch)相关使用
结论:ES是分布式搜索引擎,基于Lucene,用于全文检索与日志分析。使用要点:1.数据模型:索引(Index)含文档(Document)的JSON,有Mapping映射。2.倒排索引:分词建立词到文档映射实现快搜。3.…
🎤 百度
中等数据库
EXPLAIN 调优
结论:EXPLAIN查看MySQL执行计划,是SQL调优关键。步骤:1.看type访问类型,优到劣const>eq_ref>ref>range>index>ALL,避ALL全表扫;key实际索引;rows扫描行数越小越好…
🎤 百度
中等数据库
Mysql当中主从复制是怎么实现的
核心要点:基于binlog实现,分三步:主库写binlog、从库IO线程拉取至relay log、从库SQL线程重放。原理:主库开启binlog,事务提交时记录变更;从库通过CHANGE MASTER配置主库地址,IO线…
🎤 百度
中等数据库
MySQL 主从复制怎么实现的?
基于binlog实现:主库开启log-bin,事务提交写binlog;从库配置主库地址,IO线程连主库dump线程拉取binlog事件存到本地relay log;SQL线程读取relay log并执行。支持异步复制(默认…
🎤 百度
中等数据库
MySQL数据落盘流程
结论:MySQL数据落盘遵循WAL(写前日志),由InnoDB的redo log、binlog及buffer pool协同。流程:1.数据页读入buffer pool,修改在内存;2.写redo log(物理逻辑日志)到…
🎤 百度
中等数据库
MySQL索引机制与回表时机
结论:MySQL索引用于加速查询,回表指通过二级索引找到主键后再查聚簇索引获取整行数据的过程。核心要点:1.索引机制:InnoDB默认B+树,主键索引(聚簇)叶子节点存完整行数据,二级索引叶子存主键值;2.回表时机:当查…
🎤 百度
中等数据库
Mysql中隔离级别 怎么解决幻读
结论:InnoDB在可重复读(RR)级别通过MVCC快照读和Next-Key Lock当前读解决幻读;串行化通过完全加锁解决。原理:幻读指同一事务内多次范围查询因其他事务插入新行导致结果集变化。RR下,普通SELECT为…
🎤 百度
中等数据库
Mysql中四大特性, 原子性是怎么实现的,持久性是什么实现的
结论:MySQL四大特性为ACID;原子性由undo log实现,持久性由redo log实现。原理:原子性指事务要么全做要么全不做,InnoDB在事务修改前记录undo log(逻辑日志,记录反向操作),回滚时按und…
🎤 百度
中等数据库
Redis 分布式锁相关场景及更好方案
分布式锁用于多进程并发控制,如库存扣减、防重复提交;Redis基础方案用SET key value NX PX 实现,值用唯一标识,释放锁用Lua脚本校验避免误删。问题:锁超时业务未完、客户端阻塞导致误删。更好方案:1.…
🎤 百度
中等数据库
Redis 预检成功,数据库扣减失败怎么办?
结论:Redis预检(如扣减库存)成功但数据库扣减失败,必须补偿回滚或保证最终一致,避免库存不准确。核心处理:1.立即回滚Redis操作:数据库事务失败则对Redis执行反向操作(如DECR回加库存);2.若回滚失败,记…
🎤 百度
中等数据库
Redis缓存和本地缓存该如何取舍?
结论:按一致性、性能、共享需求取舍。要点:本地缓存(Caffeine)优点:进程内微秒级、无网络;缺点:集群不一致、容量小。Redis优点:集中共享、持久化高可用;缺点:毫秒网络开销。取舍:1. 高频只读允许不一致用本地…
🎤 百度
中等数据库
redis三大缓存问题和解决方案
结论:Redis三大缓存问题是穿透、击穿、雪崩,解决方案不同;穿透指查询不存在数据导致缓存无效请求直达数据库,用布隆过滤器拦截非法key或缓存空对象设短过期;击穿指热点key过期瞬间并发打DB,采用分布式锁单线程重建或热…
🎤 百度
中等数据库
缓存数据量很大,达到内存放不下,怎么解决?
结论:采用分布式缓存集群、多级缓存、淘汰压缩、冷热分离。原理:单节点内存受限,用Redis Cluster分片到多机;本地缓存+分布式减轻远端压力;设LRU/LFU淘汰及TTL;value用protobuf压缩;冷数据落…
🎤 百度
中等数据库
User表分表处理后如何根据字段查找到某条数据在哪张表
结论:需依赖分片键和分片路由规则定位物理表。核心要点:若查询条件包含分片键(如user_id),直接应用分片算法计算表名;若不含分片键,需遍历所有分表或借助额外路由表。原理:常见分片策略有哈希取模(user_id % N…
🎤 百度
题目整理自公开面经,答案由校招宝自研生成,仅供参考