【MySQL】专题

38 阅读2分钟

面试题目:

MySQL 的查询流程具体是?一条SQL语句在MySQL中如何执行的?

说说MySQL有哪些存储引擎?都有哪些区别?

CHAR 和 VARCHAR 的区别?

列的字符串类型可以是什么?

BLOB和TEXT有什么区别?

说说你对 MySQL 索引的理解?

数据库索引的原理,为什么要用 B+树,为什么不用二叉树?

聚集索引与非聚集索引的区别?

InnoDB引擎中的索引策略,了解过吗?

创建索引的方式有哪些?

为什么Mysql索引要用B+树不是B树?

为什么MySQL索引中用B+tree,不用B-tree 或者其他树,为什么不用 Hash 索引

聚簇索引/非聚簇索引,MySQL 索引底层实现,叶子结点存放的是数据还是指向数据的内存地址,使用索引需要注意的几个地方?

使用索引查询一定能提高查询的性能吗?为什么?

count(*) 和 count(1)和count(列名)区别

MySQL中 in和 exists 的区别?

UNION和UNION ALL的区别?

事务的隔离级别有哪些?MySQL的默认隔离级别是什么?

什么是幻读,脏读,不可重复读呢?

MySQL事务的四大特性以及实现原理

MVCC熟悉吗,它的底层原理?

事务是如何通过日志来实现的,说得越深入越好。

MySQL 有多少种日志吗?

数据库的乐观锁和悲观锁?

MySQL 中有哪几种锁,列举一下?

MySQL中InnoDB引擎的行锁是怎么实现的?

MySQL 间隙锁有没有了解,死锁有没有了解,写一段会造成死锁的 sql 语句,死锁发生了如何解决,MySQL 有没有提供什么机制去解决死锁

日常工作中你是怎么优化SQL的?

SQL优化的一般步骤是什么,怎么看执行计划(explain),如何理解其中各个字段的含义?

如何写sql能够有效的使用到复合索引?

一条sql执行过长的时间,你如何优化,从哪些方面入手?

什么是最左前缀原则?什么是最左匹配原则?

随着业务的发展,业务越来越复杂,应用的模块越来越多,总的数据量很大,高并发读写操作均超过单个数据库服务器的处理能力怎么办?

说说分库与分表的设计

主从复制基本原理?

百万级别或以上的数据如何删除?


juejin.cn/post/685003…