前言
现在不管是大公司还是小公司,去面试都会问到 MySQL 数据库的知识,大家面试的时候这方面的知识一定要提前做好储备。
2022秋招面试资料合集白嫖:大家可以扫二维码免费领取
1、MySQL中有哪几种锁?
1、表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。
2、行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。
3、页面锁:开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之间,并发度一般。
2、MySQL中有哪些不同的表格?
共有 5 种类型的表格:
- MyISAM
- Heap
- Merge
- INNODB
- ISAM
3、简述在MySQL数据库中MyISAM和InnoDB的区别
MyISAM:
- 不支持事务,但是每次查询都是原子的;
- 支持表级锁,即每次操作是对整个表加锁;
- 存储表的总行数;
一个 MYISAM 表有三个文件:索引文件、表结构文件、数据文件;
采用菲聚集索引,索引文件的数据域存储指向数据文件的指针。辅索引与主索引基本一致,但是辅索引不用保证唯一性。
InnoDb:
- 支持 ACID 的事务,支持事务的四种隔离级别;
- 支持行级锁及外键约束:因此可以支持写并发;
不存储总行数:
一个 InnoDb 引擎存储在一个文件空间(共享表空间,表大小不受操作系统控制,一个表可能分布在多个文件里),也有可能为多个(设置为独立表空,表大小受操作系统文件大小限制,一般为 2G),受操作系统文件大小的限制;
主键索引采用聚集索引(索引的数据域存储数据文件本身),辅索引的数据域存储主键的值;因此从辅索引查找数据,需要先通过辅索引找到主键值,再访问辅索引;最好使用自增主键,防止插入数据时,为维持 B+树结构,文件的大调整。
4、MySQL中InnoDB支持的四种事务隔离级别名称,以及逐级之间的区别?
5、CHAR和VARCHAR的区别?
6、主键和候选键有什么区别?
7、myisamchk是用来做什么的?
8、如果一个表有一列定义为TIMESTAMP,将发生什么?
9、你怎么看到为表格定义的所有索引?
索引是通过以下方式为表格定义的:
SHOW INDEX FROM <tablename>;
10、LIKE声明中的%和_是什么意思?
11、列对比运算符是什么?
在 SELECT 语句的列比较中使用=,<>,<=,<,> =,>,<<,>>,<=>,AND,OR 或 LIKE 运算符。
12、BLOB和TEXT有什么区别?
13、MySQL_fetch_array和MySQL_fetch_object的区别是什么?
14、MyISAM表格将在哪里存储,并且还提供其存储格式?
15、MySQL如何优化DISTINCT?
16、如何显示前50行?
在 MySQL 中,使用以下代码查询显示前 50 行:
SELECT*FROM
LIMIT 0,50;
17、可以使用多少列创建索引?
任何标准表最多可以创建 16 个索引列。
18、NOW()和CURRENT_DATE()有什么区别?
19、什么是非标准字符串类型?
20、什么是通用SQL函数?
1、CONCAT(A, B) – 连接两个字符串值以创建单个字符串输出。通常用于将两个或多个字段合并为一个字段。
21、MySQL支持事务吗?
22、MySQL里记录货币用什么字段类型好
23、MySQL有关权限的表都有哪几个?
24、列的字符串类型可以是什么?
字符串类型是:
1、SET
2、BLOB
3、ENUM
4、CHAR
5、TEXT
25、MySQL数据库作发布系统的存储,一天五万条以上的增量,预计运维三年,怎么优化?
26、锁的优化策略
27、索引的底层实现原理和优化
28、什么情况下设置了索引但无法使用
29、实践中如何优化MySQL
30、优化数据库的方法
31、简单描述MySQL中,索引,主键,唯一索引,联合索引的区别,对数据库的性能有什么影响**(从读写两方面)**
32、数据库中的事务是什么?
事务(transaction)是作为一个单元的一组有序的数据库操作。如果组中的所有操作都成功,则认为事务成功,即使只有一个操作失败,事务也不成功。如果所有操作完成,事务则提交,其修改将作用于所有其他数据库进程。如果一个操作失败,则事务将回滚,该事务所有操作的影响都将取消。
33、SQL注入漏洞产生的原因?如何防止?
34、为表中得字段选择合适得数据类型
35、存储时期
36、对于关系型数据库而言,索引是相当重要的概念,请回答有关索引的几个问题:
4、什么情况下不宜建立索引?
- 对于查询中很少涉及的列或者重复值比较多的列,不宜建立索引。
- 对于一些特殊的数据类型,不宜建立索引,比如文本字段(text)等
37、解释MySQL外连接、内连接与自连接的区别
38、Myql中的事务回滚机制概述
39、SQL语言包括哪几部分?每部分都有哪些操作关键字?
40、完整性约束包括哪些?
41、什么是锁?
42、什么叫视图?游标是什么?
43、什么是存储过程?用什么来调用?
44、如何通俗地理解三个范式?
缺点:数据冗余以及数据异常,数据得修改需要更多的成本
45、什么是基本表?什么是视图?
答:基本表是本身独立存在的表,在 SQL 中一个关系就对应一个表。 视图是从一个或几个基本表导出的表。视图本身不独立存储在数据库中,是一个虚表
46、试述视图的优点?
答:
(1) 视图能够简化用户的操作
(2) 视图使用户能以多种角度看待同一数据;
(3) 视图为数据库提供了一定程度的逻辑独立性;
(4) 视图能够对机密数据提供安全保护。
47、 NULL是什么意思
48、主键、外键和索引的区别?
49、你可以用什么来确保表格里的字段只接受特定范围里的值?
50、说说对SQL语句优化有哪些方法?(选择几条)
👇🏻 添加 博主 获取更多资料👇🏻