随着系统用户量的不断增加,MySQL 索引的重要性不言而喻,对于后端工程师,只有在了解索引及其优化的规则,并应用于实际工作中后,才能不断的提升系统性能,开发出高性能、高并发和高可用的系统。 今天小编首先会跟大家分享一下MySQL 索引中的各种概念,然后介绍优化索引的若干条规则,最后利用这些规则,针对面试中常考的知识点,做详细的实例分析
1、MySQL 中有哪几种锁?
- 1、表级锁: 开销小, 加锁快; 不会出现死锁; 锁定粒度大, 发生锁冲突的概率最高, 并发度最低。
- 2、行级锁: 开销大, 加锁慢; 会出现死锁; 锁定粒度最小, 发生锁冲突的概率最低, 并发度也最高。/
- 3、页面锁: 开销和加锁时间界于表锁和行锁之间; 会出现死锁; 锁定粒度界于表锁和行锁之间, 并发度一般。
2、MySQL 中有哪些不同的表格?
共有 5 种类型的表格: 1、MyISAM2、Heap 3、Merge 4、INNODB 5、MISAM
3、简述在MySQL 数据库中 MyISAM 和InnoDB 的区别
[图片上传失败...(
image-73b6fa-1618751724750)]
4、MySQL 中InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别?SQL 标准定义的四个隔离级别为:
- 1、read uncommited : 读到未提交数据
- 2、read committed: 脏读, 不可重复读
- 3、repeatable read: 可重读
- 4、serializable : 串行事物
5、CHAR 和VARCHAR 的区别?
- 1、CHAR 和 VARCHAR 类型在存储和检索方面有所不同
- 2、CHAR 列长度固定为创建表时声明的长度, 长度值范围是 1 到 255 当 CHAR 值被存储时, 它们被用空格填充到特定长度, 检索 CHAR 值时需删除尾随空格。
6、主键和候选键有什么区别?
- 表格的每一行都由主键唯一标识,一个表只有一个主键。
- 主键也是候选键。按照惯例, 候选键可以被指定为主键, 并且可以用于任何外键引用。
7、myisamchk 是用来做什么的?

8、如果一个表有一列定义为TIMESTAMP,将发生什么?

9、你怎么看到为表格定义的所有索引?

11、列对比运算符是什么?
在 SELECT 语句的列比较中使用=,<>,<=,<,> =,>,<<,>>,<=>,AND, OR 或 LIKE 运算符。
12、BLOB 和TEXT 有什么区别?

13、MySQL_fetch_array 和MySQL_fetch_object 的区别是什么?

本文深入探讨了MySQL的优化和面试常见问题,包括锁的种类、MyISAM与InnoDB的区别、事务隔离级别、索引优化、数据类型选择等关键知识点。通过对各种场景的分析,揭示了提高数据库性能和确保数据完整性的策略。
最低0.47元/天 解锁文章
71

被折叠的 条评论
为什么被折叠?



