首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MYSQL面试知识

Q1、mysql数据库是关系型数据库 Q2、存储引擎是InnoDB、MYISAM Q3、InnoDB与MyISAM的区别?...MySQL会根据联合索引的字段顺序,从左到右依次到查询条件中去匹配,如果查询条件中存在与联合索引最左侧字段相匹配的字段,会使⽤该字段过滤⼀批数据.直⾄联合索引中全部字段匹配完成,或者在执⾏过程中遇到范围查询...MySQL的索引使用的是B+Tree。但是存储内容与存储引擎有关 在MyISAM下叶子节点存储的是数据的地址,通过索引找到地址,再通过地址找数据。...mysql实例在挂了或者宕机后,会使用存储引擎中的redo log日志来恢复数据 实例会将磁盘中的redo log加载到buffer pool中恢复,同时在事务操作数据时,通过刷盘机制,来保证buffer...mysql会根据联合索引的字段,从左往右依次匹配查询。遇到范围查询(>、<、between、like)则停止 尽量选择区分度高的列设置为索引。 索引列在查询时不要使用函数计算。

12910

mysql 面试总结

Mysql 的 hash 索引是怎么样,有什么优缺点?...Mysql 里的锁 Mysql 里的锁有哪些? 乐观/悲观锁 乐观锁:在读取数据时会假设各个事务互不影响,它们会处理好属于自己的那部分数据。...存储引擎 Mysql 存储引擎有哪些以及特点? InnoDB: 它是 mysql 的默认存储引擎,能够实现 ACID 特性的事务,并且能提交、回滚、恢复数据,能很好的保障用户数据。...Mysql 的三层架构 连接层: 主要负责连接池、通信协议、认证授权等; SQL 层: 这一层是 mysql 的大脑,通过一系列组件得到数据操作的最优解。 存储层: 负责数据的存储、检索。...[mysql 的 3 层架构] 9. 执行计划是什么?怎么看? 执行计划是 mysql 根据我们的查询语句进行一系列的分析后得到的优化方案。我们可以通过执行计划来获取执行过程。

38201
您找到你想要的搜索结果了吗?
是的
没有找到

Mysql面试一百问

前一阵系统的学习了一下MySQL,也有一些实际操作经验,偶然看到一篇和MySQL相关的面试文章,发现其中的一些问题自己也回答不好,虽然知识点大部分都知道,但是无法将知识串联起来....此文不会事无巨细的从select的用法开始讲解mysql,主要针对的是开发人员需要知道的一些MySQL的知识点,主要包括索引,事务,优化等方面,以在面试中高频的问句形式给出答案.如果您有其他的MySQL...面试题,觉得题目尚有意思或者难度,可以评论题目或者发送邮件至huyanshi2580@gmail.com,我会将其收录进此文并标注您的姓名....MySQL索引原理极其优化 mysql的事务极其隔离级别 索引相关 关于MySQL的索引,曾经进行过一次总结,文章链接在这里 Mysql索引原理及其优化. 1. 什么是索引?...MySQL支持哪些存储引擎?

73030

Mysql面试

MySQL面试Mysql 基本架构 mysql基本架构组成:客户端,Server层和存储引擎层。其中,只有Server层和存储引擎层是属于Mysql。...返回结果 选择执行方案,执行前检查是否有权限等返回错误信息或者执行结果 存储引擎 主要负责存储数据,提供读写接口 支持 innodb,myisam,archive,memory,CSV等不同的存储引擎类型 面试题汇总...14. mysql_fetch_array 和 mysql_fetch_object 的区别是什么? mysql_fetch_array() – 将结果行作为关联数组或来自数据库的常规数组返回。...MYSQL支持事务吗? 在缺省模式下,MYSQL是autocommit模式的,所有的数据库更新操作都会即时提交,所以在缺省情况下,mysql是不支持事务的。...但是如果你的MYSQL表类型是使用InnoDB Tables 或 BDB tables的话,你的MYSQL就可以使用事务处理,使用SET AUTOCOMMIT=0就可以使MYSQL允许在非autocommit

1.1K51

【Java面试总结】MySQL

MySQL 1. 什么是MySQLMySQL 是一种关系型数据库,其默认端口是 3306. 2. 字符集及校对规则 字符集指的是一种从二进制编码到某类字符符号的映射。...MySQL中每一种字符集都会对应一系列的校对规则。 MySQL采用的是类似继承的方式指定字符集的默认值,每个数据库以及每张数据表都有自己的默认值,它们逐层继承。...MySQL的默认隔离级别是什么? SQL 标准定义了四个隔离级别: READ-UNCOMMITTED(读取未提交):最低的隔离级别,允许读取尚未提交的数据变更,可能会导致脏读、幻读或不可重复读。...大表优化 当 MySQL 单表记录数过大时,数据库的CRUD性能会明显下降,一些常见的优化措施如下: 限定数据的范围: 务必禁止不带任何限制数据范围条件的查询语句。...需要注意的一点是:分表仅仅是解决了单一表数据过大的问题,但由于表的数据还是在同一台机器上,其实对于提升MySQL并发能力没有什么意义,所以水平拆分最好分库。 8. 分库分表之后,id 主键如何处理?

46730

MySQL面试

MYSQL题目 MySQL的存储引擎InnoDB和MYISAM的差异点 MyISAM存储引擎:只读型数据引擎,访问速度快 InnoDB存储引擎:事务性数据引擎,支持事务处理 SQL语言包括哪四个部分...那么实际值长度为5 请讲解数据库设计中的三大范式理论 1NF,原子性,确保每列都是不可再分的最小数据单元 2NF,每个表只做一件事,确保表中的列与主键相关 3NF,减少冗余,确保每个列与主键直接相关 MySQL...--分步骤先查询出科目的编号 WHERE cname='Java语言编程' SELECT cid FROM course WHERE cname='MySQL数据库编程'...`score`=temp.s 查询Java语言编程课程比MySQL数据库编程课程成绩高的所有学生(可以直接用课程编号) SELECT sname,score,cid FROM Student JOIN...数据库编程' THEN score END) AS 'MySQL数据库编程', sum(CASE cname WHEN '数据结构' THEN score END) AS '数据结构',

19960

MySQL 面试

MySQL 分析器 在面试中,当涉及到 MySQL 分析器(Analyzer),通常是在谈论 MySQL 查询执行过程中的一个环节。...以下是你可以在面试中讨论的关于 MySQL 分析器的几个关键点: SQL 解析:当一个 SQL 语句提交给数据库后,分析器首先对其进行解析,校验语法是否正确。...面试时可以讨论如何使用EXPLAIN或EXPLAIN ANALYZE命令来输出 MySQL 分析器生成的执行计划。这些命令对于开发人员和数据库管理员来说是优化查询和调试性能问题的有力工具。 24....这里是关于 MySQL 优化器的一些要点,你可以在面试中使用: 生成执行计划:MySQL 优化器在解析了 SQL 语句并进行预处理后,会评估多个可能的执行计划,并选择成本最低的那个。...在准备面试的过程中,展示对 InnoDB 特性的具体理解,尤其是与其他存储引擎(如 MyISAM)的对比,可以帮助面试官评估你对 MySQL 数据库系统的掌握程度。

10310

java架构之路-(面试篇)Mysql面试大全

说一下mysql比较宏观的面试,具体咋写sql的这里就不过多举例了。后面我还会给出一个关于mysql面试优化的试题,这里主要说的索引和B+Tree结构,很少提到我们的集群配置优化方案。...6.MySQL底层实现,MySQL有什么引擎   答:mysql底层采用B+tree的存储结构,也就是只有叶子节点携带真实数据,每个节点大小为16Kb,大致三层的B+tree就可以存2000W左右的数据...在我们的mysql里也是如此,也就是我们的ACID原则。...可以简单说一下可重复读的MVCC机制,面试官也懵圈。 9.如何设计一个高并发的系统(对于mysql来讲)   答:这个后面会结合别的技术来说,只讲mysql不太好说。...总结一下:   只要我们熟知,我们mysql的底层是B+tree的,B+tree是什么样子的,很多面试题都是围绕这个东西来出题的,为什么不为空,空不好找B+tree的位置啊等等。

61410

Mysql实战面试

MySQL 索引 索引是在存储引擎层实现的,而不是在服务器层实现的,所以不同存储引擎具有不同的索引类型和实现。 1. B+Tree 索引 是大多数 MySQL 存储引擎的默认索引类型。...时间和日期 MySQL 提供了两种相似的日期时间类型:DATETIME 和 TIMESTAMP。 1....高性能 MySQL[M]. 电子工业出版社, 2013. 姜承尧. MySQL 技术内幕: InnoDB 存储引擎 [M]....机械工业出版社, 2011. 20+ 条 MySQL 性能优化的最佳经验 服务端指南 数据存储篇 | MySQL(09) 分库与分表带来的分布式困境与应对之策 How to create unique...SQL Azure Federation – Introduction MySQL 索引背后的数据结构及算法原理 MySQL 性能优化神器 Explain 使用分析 How Sharding Works

1.1K30

Mysql高频面试

在缺省模式下,MYSQL 是 autocommit 模式的,所有的数据库更新操作都会即时提交,所 以在缺省情况下,mysql 是不支持事务的。...但是如果你的 MYSQL 表类型是使用 InnoDB Tables 或 BDB tables 的话,你的 MYSQL 就可以 使用事务处理,使用 SET AUTOCOMMIT=0 就可以使 MYSQL...每一个表都不包含其他表已经包含的非主关键字信息 7、mysql 的复制原理以及流程? 答:Mysql 内建的复制功能是构建大型,高性能应用程序的基础。...将 Mysql 的数据 分布到多个系统上去,这种分布的机制,是通过将 Mysql 的某一台主机的数据 复制到其它主机(slaves)上,并重新执行一遍来实现的。...7、查看 mysql 执行日志,看看是否有其他方面的问题。 上面我将 explain 关键字加粗显示,就是很多面试官他并不直接问你 sql 优化,他会问你知道什么是 mysql 的执行计划吗?

81610

MySQL 面试高频一百问

前一阵系统的学习了一下 MySQL,也有一些实际操作经验,偶然看到一篇和 MySQL 相关的面试文章,发现其中的一些问题自己也回答不好,虽然知识点大部分都知道,但是无法将知识串联起来。...此文不会事无巨细的从 select 的用法开始讲解 mysql,主要针对的是开发人员需要知道的一些 MySQL 的知识点,主要包括索引,事务,优化等方面,以在面试中高频的问句形式给出答案。...如果您有其他的 MySQL 面试题,觉得题目尚有意思或者难度,可以留言评论。...MySQL 的事务隔离级别了解吗?」...存储引擎相关 「MySQL 支持哪些存储引擎?」 MySQL 支持多种存储引擎,比如InnoDB,MyISAM,Memory,Archive等等。

82530
领券