MySQL 经典面试题分析(值得收藏)
创始人
2024-02-05 04:38:55
0

MySQL是程序员面试必问题目点之一,因为 MySQL 几乎占据了数据库的半壁江山。数据库的核心与原理基本是相通的,所以有了 MySQL 的基础之后,再去熟悉其他数据库也是非常快的,那么让我们一起来了解一下MySQL 。

MySQL 有很多存储引擎(也叫数据引擎),所谓的存储引擎是指用于存储、处理和保护数据的核心服务。也就是存储引擎是数据库的底层软件组织。在 MySQL 中可以使用“show engines”来查询数据库的所有存储引擎,如下图所示:

在上述列表中,我们最常用的存储引擎有以下 3 种:

MySQL 常用的引擎

InnoDB 引擎:mysql 5.1 后默认的数据库引擎,提供了对数据库 acid 事务的支持,并且还提供了行级锁和外键的约束,它的设计的目标就是处理大数据容量的数据库系统。MySQL 运行的时候,InnoDB 会在内存中建立缓冲池,用于缓冲数据和索引。但是该引擎是不支持全文搜索,同时启动也比较的慢,它是不会保存表的行数的,所以当进行 select count(*) from table 指令的时候,需要进行扫描全表。由于锁的粒度小,写操作是不会锁定全表的,所以在并发度较高的场景下使用会提升效率的。

MyIASM 引擎:不提供事务的支持,也不支持行级锁和外键。因此当执行插入和更新语句时,即执行写操作的时候需要锁定这个表,所以会导致效率会降低。不过和 InnoDB 不同的是,MyIASM 引擎是保存了表的行数,于是当进行 select count(*) from table 语句时,可以直接的读取已经保存的值而不需要进行扫描全表。所以,如果表的读操作远远多于写操作时,并且不需要事务的支持的,可以将 MyIASM 作为数据库引擎的首选。


MySQL 的执行流程是这样的,首先客户端先要发送用户信息去服务器端进行授权认证。如果使用的是命令行工具,通常需要输入如下信息:

mysql -h 主机名(IP) -u 用户名 -P 端口 -p

其中:

-h 表示要连接的数据库服务器的主机名或者 IP 信息;

-u 表示数据库的用户名称;

-P 表示数据库服务器的端口号,

小写的 -p 表示需要输入数据库的密码。

整个 SQL 的执行流程,如下图所示:

在知道MySQL 常用的引擎后,下次再碰到面试官问你这个问题时,你就不会不知该如何回答了!还不赶紧收藏点赞,以防找不到我~ 

相关内容

热门资讯

沪光股份将于7月22日召开股东... 金融界7月3日消息,沪光股份发布公告,将于2025年7月22日召开第2次临时股东大会,网络投票同日进...
原创 肖... 7月3日,上海九泽律师事务所的一纸案件通报震动网络。肖战工作室针对新浪微博、今日头条、百度等全平台十...
被停职的佩通坦宣誓就任文化部长... 据新华社消息,当地时间7月3日,代理行使总理职权的泰国副总理兼交通部长素里亚·庄龙琅集率领改组后的新...
K1373次列车被撞脱线,有人... 潇湘晨报消息,7月2日晚,上海铁路局金华车务段发布情况通报称一沪昆线货物列车撞K1373次客车致其脱...
五名共和党议员“倒戈”反对“大... 美国总统特朗普的“大而美”法案在众议院遇阻。 据《卫报》消息,截至美国东部时间3日0时,在关于美国...
列车停运,乘客因闷热砸窗通风是... K1373次列车突发意外停运引发关注。上海铁路局金华车务段7月2日晚发布通报称,7月2日20时28分...
体罚员工学狗爬,“极端人格羞辱... 对极端人格侮辱事件不轻纵,是杜绝类似事件发生的必要举措。 ▲资料图:有网友称,前公司处罚员工的方式...
美联储主席:若无关税政策,我们... 继多次要求美国联邦储备委员会降息遭拒,进而威胁替换现任美联储主席鲍威尔后,美国总统特朗普再次向鲍威尔...
凯龙高科及子公司近12个月诉讼... 凯龙高科(300912)发布公告,截止到2025年7月3日,公司及子公司在过去十二个月内累计诉讼、仲...