MySQL 的存储引擎(基本介绍)

文章目录

  • 前言
  • MySQL 的存储引擎介绍
    • 存储引擎是什么?
    • 存储引擎的特性?
  • Innodb 与 Mylsam 的区别
    • 行级锁与表级锁
    • 是否支持事务
    • 是否支持恢复数据
    • 是否支持外键
    • 是否支持 MVCC
  • 总结


前言

好文章不要错过,前两天跟大家分享的文章

1.MySQL的基础架构
2.SQL语句的执行流程

今天跟大家讲一讲 MySQL 的存储引擎。


MySQL 的存储引擎介绍

存储引擎是什么?

答:存储引擎是MySQL 用于存储数据的,数据的读写,更新都将在存储引擎执行。

存储引擎的特性?

答:存储引擎是插件式存储引擎,常见的存储引擎有 Innodb,MyLSAM,Memory等,MySQL之前默认的存储引擎是 MyLsam,但是在MySQL 5.5.5以后默认的存储引擎是 Innodb。一开始Innodb是第三方的存储引擎,但是实在太优秀了,就被oracle收购… 这难道就是钞能力???

那么,Innodb 到底优秀在哪里呢?下面我们来说一说。

Innodb 与 Mylsam 的区别

行级锁与表级锁

Innodb 是基于行级锁的存储引擎,MyLsam 是基于表级锁的存储引擎。试想一下在更新数据库是锁住整个表执行,与基于行级锁,锁住一条数据执行。这性能差别是十分之大的。

是否支持事务

Innodb 是支持事务的,这也是它区别与其他存储引擎一个重要的原因,四种事务的隔离级别,它默认是可重复读,解决不可重复读与脏读的事务级别。

Mylsam 是不支持事务的。

是否支持恢复数据

如果 MySQL 崩溃,Innodb 基于它自带的日志模块 redo log,是可以支持恢复以往的数据的,恢复速度快。

Mylsam 是恢复数据的话相比于 Innodb 恢复极慢。

是否支持外键

Innodb 是支持外键的,虽然根据阿里的Java开发手册,是不允许使用外键的。

Mylsam 是不支持外键的。

是否使用外键,还是要根据具体的项目的业务开发。使用外键不会导致业务数据的混乱,但是会有一定的约束。

是否支持 MVCC

Innodb 支持 MVCC,MVCC 是多版本控制工具,是行级锁的深入的实现。

Mylsam 不支持。


总结

总的来说,存储引擎是MySQL 用于存储读写数据的。常用的存储引擎有 Innodb, MyLSAM,Memory等。其中 Innodb 的性能最快。也是 MySQL 5.5.5 之后默认的存储引擎。

有启发点个赞 🌹

预计下篇分享:MySQL 索引入门

本篇参考:JavaGuide

我是小辉,正在进行 Java 实习的 24 届应届毕业生。欢迎关注,持续分享,包括但不限于技术文章。全网同名…

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

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

相关文章

leetcode刷题电话号码的字母组合(人工智能解答版本)

题目描述 解题思路 一开始想用暴力破解的方法来进行解题,就是循环。但是想到随着数字的增多,循环行不通。想到最近使用的一个人工智能助手,于是我把题目发送给了它,直接给出了递归的解决方法。递归分为两个条件,一个就…

【k近邻】 K-Nearest Neighbors算法原理及流程

【k近邻】 K-Nearest Neighbors算法原理及流程 【k近邻】 K-Nearest Neighbors算法距离度量选择与数据维度归一化 k近邻算法(K-Nearest Neighbors,简称KNN)是一种常用的监督学习算法,可以用于分类和回归问题。在OpenCV中&#xff…

【关于python变量类型学习笔记】

python的变量类型 在创建变量时会在内存中开辟一个空间,变量是存储在内存中的值。 根据变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。 变量可以指定不同的数据类型,这些变量可以存储整数,…

C++基础学习

string char转string vector转string 截取字符串 字符串反转 string转int 正则匹配

Nginx 反向代理配置

Nginx就不废话了,web服务器。 最近在备案一个域名,想要备案,部署一个服务器,平常很少自己配置Nginx,今天记录下。 1、反向代理 正向代理 指 客户端通过代理访问后端服务 反向代理 指 服务器推出一个客户&#xff0…

环信IM Android端实现华为推送详细步骤

首先我们要参照华为的官网去完成 ,以下两个配置都是华为文档为我们提供的 1.https://developer.huawei.com/consumer/cn/doc/HMSCore-Guides/android-config-agc-0000001050170137#section19884105518498 2.https://developer.huawei.com/consumer/cn/doc/HMSCore…

#gStore-weekly | gMaster功能详解之数据库管理

gMaster提供了数据库管理功能。该功能可以对集群中的数据库进行集中管理,可以查看各个数据库详细信息。能够方便的对数据库进行新建、构建、导出、备份、还原、删除操作。 登录gMaster,点击左侧菜单【数据库】下的【数据库管理】,进入数据库…

【开源】JAVA+Vue.js实现高校学生管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 学生管理模块2.2 学院课程模块2.3 学生选课模块2.4 成绩管理模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 学生表3.2.2 学院课程表3.2.3 学生选课表3.2.4 学生成绩表 四、系统展示五、核心代码5.1 查询课程5.2 新…

动态获取 微信小程序appid / 自定义启动命令

官网:https://uniapp.dcloud.net.cn/collocation/package.html#%E7%94%A8%E6%B3%95 小程序开发完成之后需要一套代码多个小程序使用,每次都需要在manifest.json文件中手动修改,大大增加了开发的复杂度。 官网:https://uniapp.dcl…

使用sass开发web-components组件

思路:借助chokidar监听变化,将scss编译成css后插入 同时执行chokidar监听和webpack server "start": "npm run watch:css & webpack serve","watch:css" : "node chokidarStyles.js",// chokidarStyles.js …

如何解决 SQL 深层分页问题?

我们可以通过减少回表次数来优化。一般有标签记录法和延迟关联法。 标签记录法 就是标记一下上次查询到哪一条了,下次再来查的时候,从该条开始往下扫描。就好像看书一样,上次看到哪里了,你就折叠一下或者夹个书签,下…

windows环境下使用cmake3.16.2+mingw编译opencv4.5.4

一、cmake下载地址: https://cmake.org/download/ 下载zip版本“cmake-3.xx-win64-x64.zip” 解压到指定目录并添加bin所在目录到环境变量。 二、mingw-W64下载链接:https://sourceforge.net/projects/mingw-w64/files/ 推荐下载 离线版本“x86_64-posi…

内网搭建阿里-龙蜥镜像站

1.问题:官网BUG 本地做 yum 仓库,下载的文件,只有 23 版本的,其他的版本没有文件(版本23,占用2.1T后,一直不下载其它版本;) 2.解决方案: 2.1. rsync剔除不要的版本 [rootlocalh…

windows server2012 定时删除文件

windows server2012 定时删除文件 背景 用户从chrome浏览器下载文件到固定目录C:\Users\${user_name}\Downloads\,需每天清理更新时间为前一天的文件和空文件夹。 解决步骤 1 编写clean.bat脚本删除C:\Users\${user_name}\Downloads\下文件,并打印日…

三维GIS开发的就业前景

一、前言 三维GIS是一个伪概念,GIS是地理信息系统,三维GIS就是三维地理信息系统,在课本上,专业概念上,也没有这一说法吧,所以三维GIS,就是技术人员造概念拼凑造出来的,本质上就是GIS三维可视化…

[FastDDS] 基于eProsima FastDDS的移动机器人数据中间件

[FastDDS] 基于eProsima FastDDS的移动机器人数据中间件 注明:无 本栏目主要讲述,基于eProsima FastDDS的移动机器人数据中间件的实现、使用、性能测试。 What is [ FastDDS ]: eProsima Fast DDS是DDS(数据分发服务)规范的C实现…

SSH连接密码问题:原因、表现与解决方案

SSH连接密码问题:原因、表现与解决方案 写在最前面1. 密码错误2. SSH服务配置问题3. 账户锁定或禁用4. 密钥认证问题5. SSH版本不兼容6. 服务器负载或连接数过多7. IP地址被限制 小结 写在最前面 SSH(Secure Shell)是一种网络协议&#xff0…

抖音博主老阳推荐的人力RPO蓝海项目如何?【转载】一位实操者的经验之谈

在刷短视频的时候,被抖音博主老阳讲的职场干货吸引了,讲的也比较有感染力,深入了解之后知道了他们有帮推荐副业项目,由于我有干人力资源的经验,对老阳推荐的人力RPO项目感兴趣。 初识人力RPO 但是看网上有人说被骗什么…

Linux搭建JavaEE环境

Linux搭建JavaEE环境 需要在 Linux 下进行 JavaEE 的开发,我们需要安装如下软件 JDKtomcatmysqlidea 安装JDK 安装步骤 首先去官网下载jdk的linux版本 下载地址:https://www.oracle.com/cn/java/technologies/downloads/ 1) mkdir /opt/jdk 2) 通过 …

在山东开展行政窗口神秘顾客调研需要注意什么?

在行政服务领域,为了不断优化服务质量、提升民众满意度,许多机构开始采用“神秘顾客”这一市场调研方法。神秘顾客,即经过专业培训的调查员,以普通民众的身份,对行政窗口的服务进行暗访和评估。这种调研方式能够真实反…