MySQL面试题(按高频排序)及详细答案.docxVIP

  • 1
  • 0
  • 约8.8千字
  • 约 10页
  • 2026-06-09 发布于河北
  • 举报

MySQL面试题(按高频排序)及详细答案.docx

MySQL面试题(按高频排序)及详细答案

一、基础必考题(面试必问,占比40%)

1.说说MySQL的存储引擎,InnoDB和MyISAM的核心区别(高频中的高频)

答案:这是最基础也最常问的题,核心区别围绕事务、锁、索引、存储结构这几点,不搞虚的,直接说实际差异:

①事务支持:InnoDB支持ACID事务(原子性、一致性、隔离性、持久性),MyISAM不支持事务,一旦操作失误,数据无法回滚,适合不需要事务的场景(比如日志存储)。

②锁机制:InnoDB支持行级锁(只锁当前操作的行,并发性能好)和表级锁;MyISAM只支持表级锁(操作一张表就锁整张表,并发差,比如多用户同时写一张表,会排队)。

③索引结构:两者都支持B+树索引,但InnoDB的主键索引是聚簇索引(索引和数据存在一起,查询效率高),辅助索引存储的是主键ID;MyISAM的索引和数据分开存储(非聚簇索引),辅助索引存储的是数据地址。

④崩溃恢复:InnoDB有redolog(重做日志)和undolog(回滚日志),崩溃后能恢复数据;MyISAM没有,崩溃后可能丢失数据,需要手动修复。

⑤适用场景:InnoDB适合需要事务、高并发的业务(比如电商订单、用户中心);MyISAM适合读多写少、不需要事务的场景(比如博客文章、静态数据查询)。

2.MySQL的索引分类,聚簇索引和非聚簇索引的区别

答案:先分

文档评论(0)

1亿VIP精品文档

相关文档