数据库工程师面试题及答案.docxVIP

  • 10
  • 0
  • 约8.93千字
  • 约 9页
  • 2026-03-17 发布于河北
  • 举报

数据库工程师面试题及答案

一、基础理论类

1.什么是ACID原则?实际工作中怎么保障?

答案:ACID是事务的四大特性,分别是原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。

原子性就是事务要么全成,要么全回滚,比如转账,扣钱和加钱必须同时成功或同时失败,不能只扣不加;一致性是事务执行前后数据整体合法,比如转账后两人总余额不变;隔离性是多个事务并发时,互相不干扰,比如A查数据时,B别中途改数据;持久性是事务提交后,数据永久存在,哪怕数据库宕机也不会丢。

实际保障:原子性靠undolog(回滚日志),执行出错就通过日志回滚;一致性是业务逻辑+其他三大特性共同保障,比如代码里加校验;隔离性靠锁(行锁、表锁)和MVCC(多版本并发控制);持久性靠redolog(重做日志),事务提交时先写日志到磁盘,再刷数据文件。

2.数据库索引的作用是什么?常见索引类型有哪些?各自适用场景?

答案:索引核心作用是加快查询速度,减少磁盘I/O,就像书的目录,不用逐页翻找。

常见类型及场景:

1.主键索引(聚簇索引,InnoDB里主键就是聚簇索引):唯一标识数据行,查询效率最高,适用于按主键查询的场景,比如根据用户ID查用户信息,必须建,且主键最好是自增INT,避免页分裂。

2.唯一索引:确保字段值唯一(允许NULL

文档评论(0)

1亿VIP精品文档

相关文档