MySQL面试通关100题

这套面试题涵盖了99%的MySQL知识点,贯穿整个MySQL数据库体系;
大部分都是精挑细选的高频面试题,不仅仅能应对面试官的连环问,更能真真实实的增加自己的知识储备;其中还包含了不少的大厂真题,堪称MySQL面试的全能圣经!

题目答案也都整理好放在最下面啦
1. 索引的基本原理
2. Mysql聚簇和⾮聚簇索引的区别
3. Mysql索引的数据结构,各⾃优劣
4. 索引设计的原则?
5. InnoDB存储引擎的锁的算法
6. 关⼼过业务系统⾥⾯的sql耗时吗?统计过慢查询吗?
对慢查询都怎么优化过?
7. 事务的基本特性和隔离级别
8. ACID靠什么保证的?
9. 分表后⾮sharding_key的查询怎么处理?
10. Mysql主从同步原理
11. 简述MyISAM和InnoDB的区别
12. 简述Mysql中索引类型及对数据库的性能的影响
13. Explain语句结果中各个字段分别表示什么
14. 索引覆盖是什么
15. 最左前缀原则是什么
16. Innodb是如何实现事务的
17. B树和B+树的区别,为什么Mysql使⽤B+树
18. Mysql慢查询该如何优化?
19. 唯一索引比普通索引快吗?为什么?
20. MySQL由哪些部分组成, 分别用来做什么
21. MySQL怎么恢复半个月前的数据
22. 做过哪些MySQL索引相关优化
23. 简要说一下数据库范式
24. 一千万条数据的表, 如何分页查询
25. 订单表数据量越来越大导致查询缓慢, 如何处理
26. Heap表是什么?
27. Mysql 服务器默认端口是什么?
28. 与 Oracle 相比,Mysql 有什么优势?
29. 如何区分 FLOAT 和 DOUBLE?
30. 区分 CHAR_LENGTH 和 LENGTH?
31. 请简洁描述 Mysql 中 InnoDB 支持的四种事务隔离级别名称,
以及逐级之间的区别?
32. 在 Mysql 中 ENUM 的用法是什么?
33. 如何定义 REGEXP?
34. CHAR 和 VARCHAR 的区别?
35. 列的字符串类型可以是什么?
36. 如何获取当前的 Mysql 版本?
37. Mysql 中使用什么存储引擎?
38. Mysql 驱动程序是什么?
39. TIMESTAMP 在 UPDATE
CURRENT_TIMESTAMP 数据类型上做什么?
40. 主键和候选键有什么区别?
41. 如何使用 Unix shell 登录 Mysql?
42. myisamchk 是用来做什么的?
43. MYSQL 数据库服务器性能分析的方法命令有哪些?
44. 如何控制 HEAP 表的最大尺寸?
45. MyISAM Static 和 MyISAM Dynamic 有什么区别?
46. federated 表是什么?
47. 如果一个表有一列定义为 TIMESTAMP,将发生什么?
48. 列设置为 AUTO INCREMENT 时,如何在表中达到最大
49. 怎样才能找出最后一次插入时分配了哪个自动增量?
50. 你怎么看到为表格定义的所有索引?
51. 如何在 Unix 和 Mysql 时间戳之间进行转换?
52. 列对比运算符是什么?
53. 我们如何得到受查询影响的行数?
54. Mysql 查询是否区分大小写?
55. LIKE 和 REGEXP 操作有什么区别?
56. BLOB 和 TEXT 有什么区别?
57. mysql_fetch_array 和 mysql_fetch_object 的区别是什么?
58. 我们如何在 mysql 中运行批处理模式?
59. MyISAM 表格将在哪里存储,并且还提供其存储格式?
60. Mysql 中有哪些不同的表格?
61. ISAM 是什么?
62. 如何输入字符为十六进制数字?
63. NOW()和 CURRENT_DATE()有什么区别?
64. 什么样的对象可以使用 CREATE 语句创建?
65. Mysql 表中允许有多少个 TRIGGERS?
66. 解释访问控制列表
67. mysql 里记录货币用什么字段类型好
68. Mysql 数据表在什么情况下容易损坏?
69. mysql 有关权限的表都有哪几个?
70. Mysql 中有哪几种锁?
71. 简述在MySQL数据库中CHAR和VARCHAR的区别?
72. 如果一个表有一列定义为TIMESTAMP,将发生什么?
73. 你怎么看到为表格定义的所有索引?
74. LIKE声明中的%是什么意思?
75. 列对比运算符是什么?
76. MySQL_fetch_array和MySQL_fetch_object的区别?
77. MyISAM表格将在哪里存储,并且还提供其存储格式?
78. MySQL如何优化DISTINCT?
79. 如何显示前50行?
80. 可以使用多少列创建索引?
81. 什么是非标准字符串类型?
82. 什么是通用SQL函数
83. MySQL支持事务吗?
84. MySQL里记录货币用什么字段类型好?
85. MySQL有关权限的表都有哪几个?
86. 列的字符串类型可以是什么?
87. MySQL数据库作发布系统存储,
一天五万条以上的增量,预计运维三年,怎么优化
88. 锁的优化策略?
89. 索引的底层实现原理和优化?
90. 什么情况下设置了索引但无法使用?
91. 实践中如何优化MysQL?
92. 简单描述MySQL中索引,主键,唯一索引,联合索引的区别,
对数据库性能有什么影响
93. 数据库中的事务是什么?
94. SQL注入漏洞产生的原因?如何防止?
95. 为表中得字段选择合适得数据类型?
96. 对于关系型数据库而言,索引是相当重要的概念,
请回答有关索引的几个问题?
97. 解释MySQL外连接、内连接与自连接的区别?
98. Mysql中的事务回滚机制概述?
99. SQL语言包括哪几部分?每部分都有哪些操作关键字?
100. 完整性约束包括哪些?