用户登录
用户注册

分享至

大型互联网必问的MySQL面试题:MySQL存储与索引+事务和锁+性能优

  • 作者: 浪浪浪里个浪
  • 来源: 51数据库
  • 2021-09-03

前言

日常开发中,数据库的 SQL 编写基本占到了 30% 的工作量,但因为 SQL 没写好而造成的功能异常和性能缺少而造成的 Bug 远超过了30%。数据库之高性能 MySQL 实战演练系列通过实际业务场景复杂 SQL 的编写来带领大家解决工作中让开发者欲罢不能的三大痛点:高并发场景下的数据一致性问题、企业复杂的查询和聚合统计、数据集中导致的 IO 吞吐下降。

今互联网行业用的最多就是 MySQL,然而对于高级 Web 面试者,尤其对于寻找 30k 下工作的求职者,很多 MySQL 相关知识点基本都会涉及,并且由于是讲解面试题,可能会比较由浅入深,问答互动的方式,穿插讲解知识点。所以我总结了一些常见高频率的知识点,希望对大家有点帮助哈。废话不多说,开启问答面试之旅及文末分享一些免费的架构学习资料。

MySQL存储与索引有关问题

MySQL 有哪些存储引擎啊?都有什么区别?

Float、Decimal 存储金额的区别?

Datetime、Timestamp 存储时间的区别?

Char、Varchar、Varbinary 存储字符的区别?

什么是索引?

对比一下B+树索引和 Hash索引?

MySQL索引类型有?

如何管理 MySQL索引?

对Explain参数及重要参数的理解?

索引利弊是什么及索引分类?

二叉树的转置是什么?

聚簇索引和非聚簇索引的区别?

B+tree 如何进行优化?索引遵循哪些原则?存储引擎会进行哪些自动优化?到底何时索引会失效?

索引与锁有什么关系?

还有什么其他的索引类型,各自索引有哪些优缺点?

MySQL事务和锁有关问题

谈谈对Innodb事务的理解?

说说数据库事务特点及潜在问题?

什么是MySQL隔离级别?

有多少种事务失效的场景,如何解决?

一致性非锁定读和一致性锁定读是什么?

Innodb如何解决幻读?

讲讲Innodb行锁?

死锁及监控是什么?

自增长与锁 ,锁的算法,锁问题,锁升级是什么?

乐观锁的线程如何做失败补偿?

高并发场景(领红包)如何防止死锁,保证数据一致性?

谈谈MySQL的锁并发?

MySQL性能优化有关问题

回表和集群因子是什么?

讲讲表与表之间的关系?

了解查询优化器模块;

查询优化的基本思路是什么?

说说MySQL读写分离、分库分表?

Query语句对数据库性能有什么影响?

Schema设计对系统性能有什么影响?

硬件环境对数据库的性能有什么影响?

表结构对性能有什么影响?

浅谈索引优化?

JOIN的原理是什么?

说说Sql优化的几点原则?

MySQL表设计及规范?

说说MySQL几种存储引擎应用场景?

MySQL常用优化方式有哪些?

MySQL常用监控?

MySQL瓶颈分析?

MySQL的系统学习方法

学习数据库知识,或者狭义说学习mysql,其学习过程比较曲折,没人谁能告诉你,只要看过某几本书,掌握好哪些知识就算是精通、掌握mysql了。知识面是非常广,知识点是零散的,不像学习编程语言那么系统、那么直接明了。 这也是感觉比较迷茫的地方,怎样才能系统学习??因此分享一下总结的MySQL的学习思路导图给有需要的朋友!

?

最后

我把这些实际遇到的MySQL面试题及常见问题的答案总结了一下,由于文字过多,就单独做了一个文档。以及准备了一些更多关于Kafka、Mysql、Tomcat、Docker、Spring、MyBatis、Nginx、Netty、Dubbo、Redis、Netty、Spring cloud、分布式、高并发、性能调优、微服务等架构面试题和架构资料在群里免费分享,如有需要的朋友的可以来免费领取,同时可以点下喜欢和关注,以后还会分享更多干货的!

关注我,私信回复“Mysql

软件
前端设计
程序设计
Java相关