搞定这50道面试题,再也不怕面试官问MySQL了!

一般来说,程序员的面试内容分为两部分,一部分与编程相关,另一部分则与数据库相关。而作为数据库中的主流,MySQL更是涉及面试中的诸多高频考点。对于后端人员来说,不需要像专业的DBA那样精通MySQL,但也需要掌握相关的基本内容。在此总结了MySQL面试中常见7大领域的50道经典面试题,以期帮助大家顺利通过面试。

 

1.你知道哪些MySQL存储引擎?

2.常见的存储引擎都适用于哪些场景?

3.InnoDB和MyISAM的区别有哪些?

4、InnoDB和MyISAM,select  count(*)哪个更快,为什么?

5、MyISAM Static和MyISAM Dynamic有什么区别?

6.char和varchar的区别是什么?

7.varchar(10)和int(10)分别有什么含义?

8.MySQL的binlog有几种录入格式,它们之间有什么区别?

9.如何在Unix和MySQL时间戳之间进行转换?

10.怎样才能找出最后一次插入时分配了哪个自动增量?

11.列设置为AUTO INCREMENT时,如果在表中达到最大值,会发生什么情况?

12.MySQL中,如果一个表有一列定义为TIMESTAMP,则会发生什么?

13.如果要存储用户的密码散列,应该使用什么字段进行存储?

14.什么是索引?

15.索引有什么优缺点?

16.索引的数据结构和什么有关?

17.MySQL主要的索引类型有哪些?

18.在建立索引的时候,需要考虑哪些因素?

19.Hash索引和B+树索引有什么区别?

20.非聚簇索引一定会回表查询吗?

21.什么是联合索引?为什么需要注意联合索引中的顺序?

22.怎样知道语句运行很慢的原因?

23.为何会发生针对该列创建了索引但是在查询的时候并没有使用的问题?

24.你对MySQL锁是怎么理解的?

25.加锁有什么好处?

26.Mysql中有哪几种锁?

27.什么是死锁?锁等待?通过数据库哪些表可以监控?

28.MySQL中InnoDB引擎的行锁是如何实现的?

29.你知道哪些优化锁的方法?

30.什么是事务?

31.ACID是什么?

32.事务是如何通过日志来实现的?

33.同时有多个事务在进行会怎么样?

34.MySQL的事务隔离级别有哪些?

35.InnoDB使用的是哪种隔离级别?

36.REPEATABLE READ隔离级别下 MVCC 如何工作?

37.InnoDB 如何开启手动提交事务?

38.在 InnoDB 中设置了 autocommit=0,添加一条信息之后没有手动执行提交操作,请问这条信息可以被查到吗?

39.为什么要尽量设定一个主键?

40.主键使用自增ID还是UUID?

41.字段为什么要求定义为not null?

42.explain出来的各种item的意义是什么?

43.profile的意义以及使用场景有哪些?

44.统计过慢查询吗?对慢查询都怎么优化过?

45.说一说你能想到的sql语句优化,至少五种

46.说一说你能想到的表结构优化,至少五种

47.数据三大范式是什么?

48.超大分页如何处理?

49.MySQL数据库cpu飙升到500%的话,该如何处理?

50.什么是存储过程?

 

答案获取方式:V信扫描下面二维码,关注后回复“mysql”即可~

搞定这50道面试题,再也不怕面试官问MySQL了!_第1张图片

你可能感兴趣的:(SQL,总结)