MySQL进阶学习--day01

存储引擎介绍

  • 1. MySQL体系结构
  • 2. 存储引擎介绍
    • 2.1 存储引擎操作
    • 2.2 示例演示

1. MySQL体系结构

MySQL体系结构图

  1. 连接层(Connection Layer):连接层主要负责与客户端建立连接,并进行用户身份验证和权限验证。在这一层,MySQL 接收来自客户端的连接请求,并分配线程、维护连接池以及管理连接的生命周期。连接层还负责处理客户端发送的 SQL 查询语句,并将查询传递给服务层的分析器进行处理。

  2. 服务层(Server Layer):服务层包括了查询缓存、分析器、优化器和执行器等组件。在服务层中,MySQL 首先通过分析器对客户端发送的 SQL 查询语句进行解析和语法检查,然后交由优化器进行查询优化,选择最佳的执行计划。最后,执行器负责执行查询,并将结果返回给客户端。

  3. 引擎层(Engine Layer):引擎层是 MySQL 中非常重要的一部分,它包括了不同的存储引擎,如 InnoDB、MyISAM、Memory 等。每种存储引擎都有自己的特点和适用场景,用户可以根据需求选择合适的存储引擎。引擎层负责数据的存储和检索,它和服务层之间通过 API 接口进行通信。

  4. 存储层(Storage Layer):存储层是 MySQL 中最底层的一部分,它实际上负责了数据的物理存储和检索。存储层通过文件系统等方式将数据存储在磁盘上,并提供相应的读写操作。存储层通常由存储引擎来实现,不同的存储引擎会有不同的存储方式和特性。

2. 存储引擎介绍

存储引擎是MySQL数据库的核心,我们需要在合适的场景使用合适的存储引擎,接下来就来介绍一下存储引擎。

存储引擎就是存储数据、建立索引、更新/查询数据等技术的实现方式 。存储引擎是基于表的,而不是基于库的,所以存储引擎也可被称为表类型。我们可以在创建表的时候,来指定选择的存储引擎,如果没有指定将自动选择默认的存储引擎。

以下是关于存储引擎的一些操作:

2.1 存储引擎操作

  1. 建表时指定存储引擎
CREATE TABLE 表名(
字段1 字段1类型 [ COMMENT 字段1注释 ] ,
......
字段n 字段n类型 [COMMENT 字段n注释 ]
) ENGINE = INNODB [ COMMENT 表注释 ] ;
  1. 查询当前数据库支持的存储引擎
show engines;

2.2 示例演示

1.查询建表语句 — 默认存储引擎: InnoDB

show create table account;

在这里插入图片描述
我们可以看到,创建表时,即使我们没有指定存储引擎,数据库也会自动选择默认的存储引擎。

2.查询当前数据库支持的存储引擎

show engines ;

在这里插入图片描述
3.创建表 my_myisam , 并指定MyISAM存储引擎

create table my_myisam(
id int,
name varchar(10)
) engine = MyISAM ;

4.创建表 my_memory , 指定Memory存储引擎

create table my_memory(
id int,
name varchar(10)
) engine = Memory ;

以上就是关于存储引擎有关的一些sql语句,当选择适合的存储引擎时,务必根据具体的需求和情况进行评估。每种存储引擎都有其独特的特点,优势和限制。因此,在实际应用中,需要综合考虑数据的特性、访问模式、事务需求等因素,才能做出最佳的存储引擎选择。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/263825.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Cache替换算法

目录 一. 随机算法(RAND)二. 先进先出算法(FIFO)三. 近期最少使用算法(LRU)四. 最不经常使用算法(LFU) 要解决的问题: Cache很小,主存很大。如果cache满了怎么办? \quad 也要关注各种算法的英文缩写 \quad 一. 随机算法(RAND) \quad 随机算法―一实现简…

Verilog基础:$random系统函数的使用

相关阅读 Verilog基础​编辑https://blog.csdn.net/weixin_45791458/category_12263729.html $random系统函数语法的BNF范式如下所示,有关BNF范式相关内容,可以浏览以往文章Verilog基础:巴科斯范式(BNF)。 $random系统函数在每次调用时返回一…

HarmonyOS应用开发者基础认证考试(稳过)

判断题 ​​​​​​​ 1. Web组件对于所有的网页都可以使用zoom(factor: number)方法进行缩放。错误(False) 2. 每一个自定义组件都有自己的生命周期正确(True) 3. 每调用一次router.pushUrl()方法,默认情况下,页面栈数量会加1,页面栈支持的…

史上最全MySQL各种锁详解

锁详解 锁是计算机协调多个进程或线程并发访问某一资源的机制。 MySQL锁可以按模式分类为:乐观锁与悲观锁。按粒度分可以分为全局锁、表级锁、页级锁、行级锁。按属性可以分为:共享锁、排它锁。按状态分为:意向共享锁、意向排它锁。按算法分…

Leetcode—337.打家劫舍III【中等】

2023每日刷题(五十二) Leetcode—337.打家劫舍III 算法思想 实现代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(null…

表格的介绍与实战(详细且有案例)

目录​​​​​​​​​​​​​​ 表格的主要作用: 表格的基本语法: 表格相关的标签 合并单元格: 实战: 表格的主要作用: 表格主要是用来展示数据的,使用表格来展示数据,数据可读性更好…

【MySQL表的约束】

目录: 前言表的约束1、空属性2、默认值空属性与默认值 3、列描述4、zerofill5、主键约束6、自增长7、唯一键约束8、外键约束 前言 剑指offer:一年又5天 表的约束 我们上一篇文章所讲的数据类型也是一种约束–不同类型有对应的数据范围;约束…

phpstudy小皮(PHP集成环境)下载及使用

下载 https://www.xp.cn/download.html直接官网下载即可,下载完解压是个.exe程序,直接点击安装就可以,它会自动在D盘目录为D:\phpstudy_pro 使用 phpMyAdmin是集成的数据库可视化,这里需要下载一下,在软件管理-》网站程…

基于ssm鲸落文化线上体验馆论文

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本鲸落文化线上体验馆就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信…

Linux权限详解

Linux权限 文章目录 Linux权限一、root账号与普通账号二、Linux权限管理三、权限权值表示方法四、文件访问权限的设置方法五、粘滞位六、权限总结 前言: 我们在学习Linux的时候,我们知道在Linux下一切皆文件,而不同的文件对于不同的用户有不同…

模块一——双指针:202.快乐数

文章目录 题目描述简单证明补充知识算法原理代码实现 题目描述 题目链接:202.快乐数 为了方便叙述,将对于⼀个正整数,每⼀次将该数替换为它每个位置上的数字的平方和这⼀个操作记为x操作; 题目告诉我们,当我们不断重…

Java解决岛屿周长问题

Java解决岛屿周长问题 01 题目 给定一个 row x col 的二维网格地图 grid ,其中:grid[i][j] 1 表示陆地, grid[i][j] 0 表示水域。 网格中的格子 水平和垂直 方向相连(对角线方向不相连)。整个网格被水完全包围&am…