在各类技术岗位面试中,似乎与 MySQL 相关问题经常被问到。无论你面试开发岗位或运维岗位,面试官总会问你几道MySQL数据库的问题。经常有小伙伴询问如何应对 MySQL 面试题。其实很多面试题都是大同小异的,提前做准备还是很有必要的。

本篇文章就列举一些常见的MySQL面试题,一起来学习下吧。

1.什么是关系型数据库?谈谈你对 MySQL 的认识。

这是一道基础题,考察面试者对数据库的了解程度,一般可以简单讲下自己的认知,有条理即可。比如:

关系型数据库是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据。关系型数据库最大的特点是支持事务。常见的关系型数据库有 MySQL、Oracle、SQLServer 等。MySQL 是当下最流行的开源数据库。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,使得很多公司都采用 MySQL 数据库以降低成本,目前被广泛地应用在 Internet 上的中小型网站中,尤其适用于 OLTP 领域。

2.MySQL 常见的存储引擎有哪些,有什么区别?

这个问题也经常被问到,和『InnoDB 与 MyISAM 引擎的区别』问题相似。

常见的几种存储引擎:

●InnoDB: MySQL 默认的存储引擎,支持事务、MVCC、外键、行级锁和自增列。

●MyISAM: 支持全文索引、压缩、空间函数、表级锁,不支持事务,插入速度快。

●Memory: 数据都在内存中,数据的处理速度快,但是安全性不高。

●ARCHIVE: 常用于历史归档表,占用空间小,数据不能更新删除。

●InnoDB 与 MyISAM 引擎的几点区别:

●InnoDB 支持事务,MyISAM 不支持事务。

●InnoDB 支持外键,而 MyISAM 不支持。

●InnoDB 不支持全文索引,而 MyISAM 支持。

存储结构不同,MyISAM 表分为 frm MYD MYI 三个,InnoDB 一般分为 frm ibd 两个。

3.说说常用的几种字段类型。

这个问题考察面试者对 MySQL 字段类型的了解程度,可以延伸出很多小问题,例如 char 与 varchar 的区别。

常用的字段类型分类:

数值型:

mysql 数据库面试 mysql数据库面试常问问题_MySQL


字符串类型:

mysql 数据库面试 mysql数据库面试常问问题_数据库_02