我的编程空间,编程开发者的网络收藏夹
学习永远不晚

一起了解了解MySQL存储引擎

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

一起了解了解MySQL存储引擎

前言

在日常生活中文件格式有很多种,并且针对不同的文件格式会有对应不同存储方式和处理机制(如:.txt、.pdf、.mp4.......)

针对不同的数据应该有对应的不同的处理机制来存储

存储引擎就是不同的处理机制

一、MySQL主要存储引擎:

。Innodb 

。myisam

。memory

。blackhole

下面我们来一一了解它们


'''
Innodb
是MySQL5.5版本及之后默认的存储引擎
存储数据更加安全
'''

'''
myisam
是MySQL5.5版本之前默认的存储引擎
速度要比Innodb更快,但我们更加注意的是数据的安全
'''

'''
memory
内存引擎(数据全部存放在内存中)断电数据及丢失
'''

'''
blackhole
无论存什么,都会立刻消失(就像黑洞一样)
'''

查看所有存储引擎的sql语句:


show engines;

二、实例介绍它们(不同的存储引擎在存储表的时候的异同点)

首先我们来单独建一个数据库


create database day45

然后切换到该数据库中


use day45;

分别创建四个不同存储引擎的四个表


create table t1(id int) engine=innodb;

create table t2(id int) engine=myisam;

create table t3(id int) engine=blackhole;

create table t4(id int) engine=memory;

 

 创建好四个表后你会在data文件下看到四个不同存储引擎的文件

 t3表之所以没有t3.MYD表数据文件是因为blackhole存储引擎就像黑洞一样,丢一个文件进去就会消失掉,所以不好存储数据到文件里

t4表是memory存储引擎,存储在内存中,是短暂存储数据的,不好存储在硬盘中,因此不存在表数据文件

接下来我们为每个不同存储引擎的表都插入一条数据,看会有怎样的结果:


insert into t1 values(1);

insert into t2 values(1);

insert into t3 values(1);

insert into t4 values(1);

 

 可以看到分别查询每个表的数据时,t3是没有存储数据的,因为t3是blackhole存储引擎,存的数据会立马丢掉,因此select时不会存在任何数据。实验不仅仅是进行到现在,当你重启MySQL再重新查询每个表的数据时你会有新的发现

 

 很明显,t4的表中此时也显示没有存储数据,这是为什么呢?

因为t4引用的是memory存储引擎,是将数据存储在内存中的,而不会永久存储,当关闭MySQL重启后数据就会丢失

到此这篇关于一起了解了解MySQL存储引擎的文章就介绍到这了,更多相关MySQL存储引擎内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

一起了解了解MySQL存储引擎

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

简单了解MySQL存储引擎

1. MySql体系结构 在介绍存储引擎之前先来介绍下MySql的体系结构,以便大家知道存储引擎在MySql整个体系中处于什么位置。下图是官方提供的一张架构图:MySQL体系结构图 从上图可以发现,MySQL由以下几部分组成:连接池组件管理
2022-05-15

面试官问我Mysql的存储引擎了解多少

mysql面试中最常问的问题之一:小伙子,你说一下你们公司用的存储引擎,以及你知道有哪些存储引擎和他们之间的区别?所以下面这篇文章主要给大家介绍了关于Mysql存储引擎的相关资料,需要的朋友可以参考下
2022-11-13

MySQL的存储引擎InnoDB选择了B+ 树

我们知道数据的存储和检索是两个很重要的功能,当我们的数据量大了,怎么能快速的检索数据呢,答案是使用索引,可索引具体的技术实现有很多,选择哪一种呢,我就以mysql为例记录下它为什么选择了B+树作为索引的实现方式。 1.  索引简介   索引是一种用于快速查询行
MySQL的存储引擎InnoDB选择了B+ 树
2015-08-15

MySQL存储过程了解一下

简介存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,它存储在数据库中,一次编译后永久有效,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象。存储过程
MySQL存储过程了解一下
2016-12-29

详解mysql中的存储引擎

mysql存储引擎概述 什么是存储引擎? MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,你能够获得额外的速度
2022-05-24

详解MySQL InnoDB存储引擎的内存管理

存储引擎之内存管理 在InnoDB存储引擎中,数据库中的缓冲池是通过LRU(Latest Recent Used,最近最少使用)算法来进行管理的,即最频繁使用的页在LRU列表的最前段,而最少使用的页在LRU列表的尾端,当缓冲池不能存放新读取
2022-05-13

如何深入理解MySQL的存储引擎技术?

如何深入理解MySQL的存储引擎技术?一、引言MySQL是一种功能强大的关系型数据库管理系统,它支持多种存储引擎技术。存储引擎是MySQL的核心组件之一,它负责将数据存储在硬盘上,并提供数据的读取和写入功能。了解和理解MySQL的存储引擎技
2023-10-22

编程热搜

目录