关于mysql:搜遍全网整理的MySQL面试题附答案

33次阅读

共计 3681 个字符,预计需要花费 10 分钟才能阅读完成。

我把所有 Java 相干的面试题和答案都整顿成了 PDF,并且带书签目录,浏览起来十分不便

面试题及答案 PDF 下载 :https://www.hicxy.com/?p=2645

面试题及答案 PDF 下载 :https://www.hicxy.com/?p=2645

面试题及答案 PDF 下载 :https://www.hicxy.com/?p=2645

1. 列值为 NULL 时,查问是否会用到索引?

在 MySQL 里 NULL 值的列也是走索引的。当然,如果打算对列进行索引,就要尽量避免把它设置为可空,MySQL 难以优化援用了可空列的查问, 它会使索引、索引统计和值更加简单。

2. 说一说三个范式

第一范式(1NF): 数据库表中的字段都是繁多属性的,不可再分。这个繁多属性由根本类型形成,包含整型、实数、字符型、逻辑型、日期型等。
第二范式(2NF): 数据库表中不存在非关键字段对任一候选关键字段的局部函数依赖(局部函数依赖指的是存在组合关键字中的某些字段决定非关键字段的状况),也即所有非关键字段都齐全依赖于任意一组候选关键字。
第三范式(3NF): 在第二范式的根底上,数据表中如果不存在非关键字段对任一候选关键字段的传递函数依赖则合乎第三范式。所谓传递函数依赖,指的是如 果存在 ”A → B → C” 的决定关系,则 C 传递函数依赖于 A。因而,满足第三范式的数据库表应该不存在如下依赖关系:关键字段 → 非关键字段 x → 非关键字段 y

3. innodb 引擎的个性

  • 插入缓冲(insert buffer)
  • 二次写 (double write)
  • 自适应哈希索引 (ahi)
  • 预读 (read ahead)

4. 下面提到了 B + 树在满足聚簇索引和笼罩索引的时候不须要回表查问数据, 什么是聚簇索引?

在 B + 树的索引中, 叶子节点可能存储了以后的 key 值, 也可能存储了以后的 key 值以及整行的数据, 这就是聚簇索引和非聚簇索引. 在 InnoDB 中, 只有主键索引是聚簇索引, 如果没有主键, 则筛选一个惟一键建设聚簇索引. 如果没有惟一键, 则隐式的生成一个键来建设聚簇索引.

当查问应用聚簇索引时, 在对应的叶子节点, 能够获取到整行数据, 因而不必再次进行回表查问.

5. 你们数据库是否反对 emoji 表情,如果不反对,如何操作?

如果是 utf8 字符集的话,须要降级至 utf8_mb4 方可反对

前面的问题,大家能够先本人独立思考一下。

另外我把所有 Java 相干的面试题和答案都整理出来了,给大家参考一下

面试题及答案 PDF 下载 :https://www.hicxy.com/?p=2645

面试题及答案 PDF 下载 :https://www.hicxy.com/?p=2645

面试题及答案 PDF 下载 :https://www.hicxy.com/?p=2645

6. 索引分类

7. 怎么解决这些问题呢?MySQL 的事务隔离级别理解吗?

8. 一个 6 亿的表 a,一个 3 亿的表 b,通过外间 tid 关联,你如何最快的查问出满足条件的第 50000 到第 50200 中的这 200 条数据记录。

9. MyISAM 索引实现?

10. 索引的应用场景

11. MyISAM 存储引擎利用场景有哪些?

12. 同时有多个事务在进行会怎么样呢?

13. 什么是 MySQL?

14. 索引是什么?有什么作用以及优缺点?

15. 对 MySQL 的锁理解吗?

16. 应用 MySQL 视图有何长处?

17. myisamchk 是用来做什么的?

18. 那么在哪些状况下会产生针对该列创立了索引然而在查问的时候并没有应用呢?

19. 如果要存储用户的明码散列, 应该应用什么字段进行存储?

20. MySQL 复制基本原理流程

21. 关系型数据库有什么劣势?

22. Explain 性能剖析

23. MySQL 索引的注意事项

24. MySQL 的复制原理以及流程

25. SQL 语句有哪些分类?

26. MySQL 中有哪几种锁?

27. 索引对性能的影响:

28. 内连贯分为三类

29. 索引的类型

30. 全连贯(FULL JOIN)

31. MySQL 的 binlog 有有几种录入格局? 别离有什么区别?

32. 存储期间

33. 以下三条 sql 如何建索引,只建一条怎么建?

34. 创立索引的语法

35. MySQL 中 varchar 与 char 的区别以及 varchar(50) 中的 50 代表的涵义

36. 锁机制与 InnoDB 锁算法

37. 并发事务带来哪些问题?

38. 超大分页怎么解决?

39. 什么是存储过程?

40. InnoDB 引擎的四大个性是什么?

41. 数据库删除操作中的 delete、drop、truncate 区别在哪?

42. 触发器的应用场景

43. 简略形容 MySQL 中,索引,主键,惟一索引,联结索引的区别,对数据库的性能有什么影响?

44. 应用索引查问肯定能进步查问的性能吗?为什么

45. SQL 语句优化的一些办法?

46. SELECT COUNT(*) 在哪个引擎执行更快?

47. varchar(10) 和 int(10) 代表什么含意?

48. CHAR 和 VARCHAR 的区别?

49. 什么是 SQL

50. 锁的优化策略

51. MySQL 事务处理

52. 外连贯(LEFT JOIN/RIGHT JOIN)

53. 如何优化 SQL

54. MySQL 都有哪些锁呢? 像下面那样子进行锁定岂不是有点妨碍并发效率了?

55. SQL 注入破绽产生的起因?如何避免?

56. 主键应用自增 ID 还是 UUID?

57. 索引的区别

58. MySQL 锁机制

59. B-Tree 和 B+Tree

60. 做过哪些 MySQL 索引相干优化

61. 什么是存储过程?有哪些优缺点?

62. 什么是 MySql 视图?

63. 如果一个表有一列定义为 TIMESTAMP,将产生什么?

64. MySQL 里记录货币用什么字段类型好

65. 什么是事务?

66. 关怀过业务零碎外面的 sql 耗时吗? 统计过慢查问吗? 对慢查问都怎么优化过?

67. 索引的优缺点

68. 存储引擎常用命令

69. InnoDB 存储引擎利用场景是什么?

70. MySQL 索引的创立准则

71. Innodb 应用的是哪种隔离级别呢?

72. 非聚簇索引肯定会回表查问吗?

73. 为什么用 B+ 树做索引而不必哈希表做索引?

74. MySQL 中 varchar 与 char 的区别以及 varchar(50) 中的 50 代表的涵义

75. MySQL 存储引擎类型有哪些?

76. MySQL 由哪些局部组成, 别离用来做什么

77. MyISAM 存储引擎个性有哪些?

78. 简略说一说 drop、delete 与 truncate 的区别

79. 惟一索引比一般索引快吗, 为什么

80. 什么是关系型数据库?

81. 字段为什么要求定义为 not null?

82. 如何在 MySQL 种获取以后日期?

83. ACID 是什么? 能够具体说一下吗?

84. MyISAM 索引与 InnoDB 索引的区别?

85. Hash 索引和 B + 树所有有什么区别或者说优劣呢?

86. 以下语句是否会利用索引:SELECT FROM users WHERE YEAR(adddate) < 2007;

87. 请阐明 InnoDB 和 MyISAM 的区别

88. 创立的索引有没有被应用到? 或者说怎么才能够晓得这条语句运行很慢的起因?

89. Myql 中的事务回滚机制概述

90. 在建设索引的时候, 都有哪些须要思考的因素呢?

91. innodb 的事务与日志的实现形式

92. MySQL 中的 varchar 和 char 有什么区别.

93. 数据库的乐观锁和乐观锁是什么?

94. 横向分表和纵向分表, 能够别离举一个适宜他们的例子吗?

95. 优化数据库的办法

96. MySQL 数据库作公布零碎的存储,一天五万条以上的增量,预计运维三年, 怎么优化?

97. 简略形容 MySQL 中,索引,主键,惟一索引,联结索引的区别,对数据库的性能有什么影响(从读写两方面)

98. 请阐明 varchar 和 text 的区别

99. InnoDB 和 MyISAM 有什么区别?

100. MySQL 有哪些数据类型?

101. 什么是视图?以及视图的应用场景有哪些?

102. 超键、候选键、主键、外键别离是什么?

103. int(10) 和 bigint(10) 能存储的数据大小一样吗?

104. 解释 MySQL 外连贯、内连贯与自连贯的区别

105. MySQL 的罕用操作

106. MySQL 索引的原理

107. FLOAT 和 DOUBLE 的区别是什么?

108. 索引是个什么样的数据结构呢?

109. 索引的根底

110. MySQL 如何保障复制过程中数据一致性及缩小数据同步延时

111. 什么状况下设置了索引但无奈应用

112. 创立 MySQL 联结索引应该留神什么?

113. VARCHAR(50) 能寄存几个 UTF8 编码的汉字?

114. 为什么要尽量设定一个主键?

115. MySql 服务默认端口号是多少?

116. 联结索引是什么? 为什么须要留神联结索引中的程序?

117. 怎么看到为表格定义的所有索引?

118. MySQL 反对哪些存储引擎?

119. 存储过程和函数如同差不多,你说说他们有什么区别?

120. UNION 与 UNION ALL 的区别?

121. 联结查问(UNION 与 UNION ALL)

122. MySQL 数据库 cpu 飙升到 500% 的话他怎么解决?

123. drop、delete 与 truncate 别离在什么场景之下应用?

124. 什么是触发器,MySQL 中都有哪些触发器?

125. 六种关联查问

正文完
 0