MySQL面试题纯享版

基础内容

1、MySQL的架构分层

2、一条 SQL 查询语句的执行流程

3、如何查看 MySQL 服务被多少个客户端连接了?

4、 空闲连接会一直占用着吗?

5、MySQL 的连接数有限制吗?

6、 怎么解决长连接占用内存的问题?

7、执行器与存储引擎交互的三种方式是什么?

获取答案


索引

1、什么是索引?

2、索引的分类有哪些?

3、联合索引的最左匹配规则与范围查询的关系

4、什么时候适用索引?

5、什么时候不需要创建索引?

6、有什么优化索引的方法?

7、详细说说EXPLAIN语句查询结果中各字段的含义

8、count()函数的效率比较

获取答案


事务

1、事务与存储引擎的关系

2、事务的特性

3、事务特性的实现方式

4、并行事务会引发什么问题?

5、事务的隔离级别有哪些?

6、MySQL的InnoDB引擎是怎么解决幻读问题的?

7、四种隔离级别具体是如何实现的呢?

8、具体谈谈Read View

9、可重复读隔离级别下完全解决幻读了嘛?

获取答案


1、MySQL 有哪些锁?

2、MySQL是怎么加行锁的?

3、next-key lock退化场景是怎么样的(唯一等值、唯一范围、不唯一等值、不唯一范围)

获取答案


日志

1、为什么需要 undo log?

2、为什么需要 Buffer Pool?

3、Buffer Pool 缓存什么?

4、为什么需要 redo log ?

5、什么是 redo log?

6、产生的 redo log 是直接写入磁盘的吗?

7、redo log 什么时候刷盘?

8、redo log 文件写满了怎么办?

9、redo log和 binlog的区别

10、如果不小心整个数据库的数据被删除了,能使用 redo log 文件恢复数据吗?

11、主从复制的流程是怎么样的?

12、从库是不是越多越好?

13、MySQL 主从复制还有哪些模型?

14、binlog 什么时候刷盘?

15、一条Update语句的完整过程

16、为什么需要两阶段提交?

17、什么是两阶段提交?

18、分析两阶段提交下异常重启不会导致主从数据不一致。

19、事务没提交的时候,redo log 会被持久化到磁盘吗?这样会不会有问题?

20、两阶段提交存在什么问题?

21、怎么解决两阶段提交的问题?

22、详细说说两阶段提交的流程。

23、组提交发现MySQL的IO还是很高,有什么办法优化?

获取答案

相关推荐
KIN_DIN42 分钟前
SQL 查询最新的一条记录
数据库·sql
m0_706653231 小时前
Python生成器(Generator)与Yield关键字:惰性求值之美
jvm·数据库·python
wangmengxxw1 小时前
SpringAI-mysql
java·数据库·人工智能·mysql·springai
Coder_Boy_1 小时前
基于SpringAI的在线考试系统-数据库设计核心业务方案
java·数据库·spring boot·ddd·tdd
机器视觉知识推荐、就业指导2 小时前
Qt 元对象系统:机制、组成与典型用法
数据库·qt
qq_423233902 小时前
实战:用Python开发一个简单的区块链
jvm·数据库·python
信创天地2 小时前
国产化数据库深度运维:性能调优与故障排查实战指南
运维·数据库·安全·elk·自动化·rabbitmq
eWidget3 小时前
Shell输入输出(一):echo/printf输出,格式控制与颜色设置
运维·数据库·运维开发
a程序小傲3 小时前
得物Java面试被问:流批一体架构的实现和状态管理
java·开发语言·数据库·redis·缓存·面试·架构
Jess073 小时前
MySQL操作库 —— 库的操作
数据库·mysql