MySQL—存储引擎(上)

news2024/11/26 6:19:20

♥️作者:小刘在C站

♥️个人主页:小刘主页

♥️每天分享云计算网络运维课堂笔记,努力不一定有回报,但一定会有收获加油!一起努力,共赴美好人生!

♥️树高千尺,落叶归根人生不易,人间真情

目录

1). 连接层

2). 服务层

3). 引擎层

4). 存储层

存储引擎介绍

1). 建表时指定存储引擎

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


1). 连接层

最上层是一些客户端和链接服务,包含本地 sock 通信和大多数基于客户端 / 服务端工具实现的类似于TCP/IP 的通信。主要完成一些类似于连接处理、授权认证、及相关的安全方案。在该层上引入了线程 池的概念,为通过认证安全接入的客户端提供线程。同样在该层上可以实现基于 SSL 的安全链接。服务器也会为安全接入的每个客户端验证它所具有的操作权限。

2). 服务层

第二层架构主要完成大多数的核心服务功能,如 SQL 接口,并完成缓存的查询, SQL 的分析和优化,部分内置函数的执行。所有跨存储引擎的功能也在这一层实现,如过程、函数等。在该层,服务器会解析查询并创建相应的内部解析树,并对其完成相应的优化如确定表的查询的顺序,是否利用索引等,最后生成相应的执行操作。如果是 select 语句,服务器还会查询内部的缓存,如果缓存空间足够大,这样在解决大量读操作的环境中能够很好的提升系统的性能。

3). 引擎层

存储引擎层,存储引擎真正的负责了MySQL中数据的存储和提取,服务器通过API和存储引擎进行通信。不同的存储引擎具有不同的功能,这样我们可以根据自己的需要,来选取合适的存储引擎。数据库中的索引是在存储引擎层实现的。

4). 存储层

数据存储层, 主要是将数据 ( : redolog undolog 、数据、索引、二进制日志、错误日志、查询
日志、慢查询日志等 ) 存储在文件系统之上,并完成与存储引擎的交互。和其他数据库比, MySQL 有点与众不同,它的架构可以在多种不同场景中应用并发挥良好作用。主要体现在存储引擎上,插件式的存储引擎架构,将查询处理和其他的系统任务以及数据的存储提取离。这种架构可以根据业务的需求和实际需要选择合适的存储引擎。

存储引擎介绍

大家可能没有听说过存储引擎,但是一定听过引擎这个词,引擎就是发动机,是一个机器的核心组件。比如,对于舰载机、直升机、火箭来说,他们都有各自的引擎,是他们最为核心的组件。而我们在选择引擎的时候,需要在合适的场景,选择合适的存储引擎,就像在直升机上,我们不能选择舰载机的引擎一样。
而对于存储引擎,也是一样,他是 mysql 数据库的核心,我们也需要在合适的场景选择合适的存储引 擎。接下来就来介绍一下存储引擎。
存储引擎就是存储数据、建立索引、更新 / 查询数据等技术的实现方式 。存储引擎是基于表的,而不是基于库的,所以存储引擎也可被称为表类型。我们可以在创建表的时候,来指定选择的存储引擎,如果 没有指定将自动选择默认的存储引擎。

1). 建表时指定存储引擎

CREATE TABLE 表名(
字段1 字段1类型 [ COMMENT 字段1注释 ] ,
......
字段n 字段n类型 [COMMENT 字段n注释 ]
) ENGINE = INNODB [ COMMENT 表注释 ] ;

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

show engines;
示例演示 :
A. 查询建表语句 --- 默认存储引擎 : InnoDB
show create table account;

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

 C. 创建表 my_myisam , 并指定MyISAM存储引擎

create table my_myisam(
id int,
name varchar(10)
) engine = MyISAM ;
D. 创建表 my_memory , 指定 Memory 存储引擎
create table my_memory(
id int,
name varchar(10)
) engine = Memory ;

♥️关注,就是我创作的动力

♥️点赞,就是对我最大的认可

♥️这里是小刘,励志用心做好每一篇文章,谢谢大家

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Ae 脚本:Face Tools 4 脸部工具

Motion Bro 的 AE Face Tools 扩展脚本工具,包含几百种预设,如换脸、换妆、美颜、液化、失真扭曲、面部修饰、蒙板工具、文字跟踪、添加元素、人脸锁定防抖稳定以及遮挡等预设效果,大大扩展了 After Effects 中的人脸跟踪功能。 AE Face Tool…

基于激光雷达和单目视觉融合的SLAM和三维语义重建

文章:SLAM and 3D Semantic Reconstruction Based on the Fusion of Lidar and Monocular Vision 作者:Lu Lou, Yitian Li, Qi Zhang and Hanbing Wei 编辑:点云PCL 欢迎各位加入知识星球,获取PDF论文,欢迎转发朋友圈。…

领导说培养我,怎么看出来他是真培养,还是PUA我?

当你的领导说要培养你的时候,如何分辨他的真实意图? 一位网友问: 领导说培养我,怎么看出来他是真培养,还是PUA? 来看看这位网友的支招: 如果领导做到以下几点,那就是真的培养你。 1.…

实战记录01(QT连接MySQL显示未加载问题解决)

进入实战 学了这么几天就要开发新项目了,所以可能不会每日记录吧,遇到问题可能就发一下, 昨天是又重新写了一个登录和管理界面,写完之后就可以开始链接数据库了。 QT连接MYSQL报错 我一开始是在.pro文件中加上了 QTsql QTmysq…

【计算机视觉 | 目标检测】arxiv 计算机视觉关于目标检测的学术速递(5月31日论文合集)

文章目录 一、检测相关(10篇)1.1 Table Detection for Visually Rich Document Images1.2 DENTEX: An Abnormal Tooth Detection with Dental Enumeration and Diagnosis Benchmark for Panoramic X-rays1.3 TrueDeep: A systematic approach of crack detection with less dat…

C++ STL源码下载及目录结构

掌握一定的c基础,想更深入的了解STL源码实现的读者,可以参照本文下载源码阅读 1、源码下载 ​ SGI STL版本(侯捷老师推荐):https://github.com/dongyusheng/csdn-code/tree/master/STLgcc STL:GitHub - gc…

使用 Docker 部署 Jenkins 代理(主从)控制服务器

自动化是 DevOps 的核心。各种自动化工具和技术真正实现了持续集成和持续交付的概念。这些工具多年来发展迅速,但似乎永远存在的一个名字是Jenkins。 我们不会在这篇文章中讨论 CI-CD 的介绍性概念,也不会浪费时间展示 Jenkins 安装步骤。如果您是 Jenk…

Go1.21 速览:骚操作 panic(nil) 将成为历史!以后别这么干了。。。

大家好,我是煎鱼。 在 Go 语言中,返回错误、抛出异常一直是大家比较关注的话题。在抛出异常上,我们一般都是这么用的: func mayPanic() {panic("脑子进煎鱼了") }func main() {defer func() {if r : recover(); r ! nil…

Vagrant编排虚拟机安装与配置

1.安装VirtualBox与Vagrant VirtualBox与Vagrant是支持不通过操作系统的;根据具体操作系统下载对应版本即可。(这里使用windows操作系统搭建) VirtualBox https://www.virtualbox.org/wiki/Downloads Vagrant https://developer.hashicorp.com/vagrant/downloads Va…

设计模式之~状态模式

状态模式(State),当一个对象的内部状态改变时允许改变其行为,这个对象看起来像是改变了其类。 能够让程序根据不同的外部情况来做出不同的响应,最直接的方法就是在程序中将这些 可能发生的外部情况全部考虑到&#xff…

基于html+css的图展示102

准备项目 项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目…

应用运维的三个项目

应用运维 目录概述需求: 设计思路实现思路分析1.开发和运维2.比重3.历史项目4.工作内容5.历程 参考资料和推荐阅读 Survive by day and develop by night. talk for import biz , show your perfect code,full busy,skip hardness,make a better result,…

程序员的新出路:维护老项目?

1 张大胖刚进入公司,遇到了一个神奇的同事:何小痩。 别人工作都很忙, 何小痩工作似乎特别轻松,从来不加班,到点儿就回家。 张大胖向别人一打听,原来何小痩一直在维护一个老项目,维护了5年了。 …

「小产品独立变现实战训练营1期」门票限时优惠

大家好,我是凯凯刘,一名程序员,一直在做小产品的开发变现,目标就是让小产品的变现更简单。【小产品独立变现实战训练营1期】这个课程主要是围绕着如何开发出一个赚钱小产品这个主题。来跟大家一起从0开始实战,一步步跟…

为什么对象存储深度归档价格低?

AWS(亚马逊云服务)对象存储S3(Simple Storage Service)有以下四种不同的存储类型: S3 标准存储: 这是最常用的S3存储类型之一,它保证了高持久性,并提供 99.999999999% 的数据耐久性…

chatgpt赋能python:Python人脸识别:从入门到工程实践

Python人脸识别:从入门到工程实践 介绍 近年来,人脸识别技术越来越成熟,广泛应用于各行各业,如社交媒体、安防、金融等领域。Python人脸识别作为一种基于机器学习的技术,可以通过训练模型从图像中自动识别出人脸,并进…

致敬六一,用外观模式实现一个儿童乐园畅玩平台

一、概述 外观模式(Facade Pattern)是一种结构型设计模式,它为多个子系统中的操作提供一个统一的高层接口,用于访问复杂子系统的功能。其核心思想是通过一个外观类将子系统的复杂操作进行封装,客户端只需与外观类进行…

IO 多路复用是什么意思?Redis中的IO又是什么?

点击上方关注 “终端研发部” 设为“星标”,和你一起掌握更多数据库知识 本文首发于我的知乎:https://zhuanlan.zhihu.com/p/632776455 当你打开电脑,任何时候都在进行着IO的操作! 比如一次 API 接口调用、向磁盘写入日志信息&…

[数据结构习题]栈——中心对称链

[数据结构习题]栈——中心对称链 👉知识点导航💎:【数据结构】栈和队列 👉[王道数据结构]习题导航💎: p a g e 70.4 page70.4 page70.4 本节为栈和链表综合练习题 题目描述: 🎇思路…

Semaphore线程信号量

文章目录 前言一、Semaphore 是什么?定义对比 二、使用步骤1. 场景分析2. 编码如下 总结 前言 Semaphore 也是juc中的一个关键类,他与之前的lock 类似,也有公平和非公平两种,它与他们应用含义,引用场景有很大的不同; 与阻塞队列类似,但是也不一样;听我细细道来~ 一…