MySQL高级篇(存储引擎InnoDB、MyISAM、Memory)

目录

1、存储引擎简介

1.1、查询建表语句,默认存储引擎:InnoDB

1.2、查看当前数据库支持的存储引擎

1.3、创建表,并指定存储引擎

2、 存储引擎-InnoDB介绍

2.1、存储引擎特点

 3、MyISAM存储引擎

 4、Memory存储引擎

 5、InnoDB、MyISAM、Memory的区别

 6、存储引擎的选择


1、存储引擎简介

1.1、查询建表语句,默认存储引擎:InnoDB

-- 查询建表语句
show create table emp;

1.2、查看当前数据库支持的存储引擎

-- 查看当前数据库支持的存储引擎
show engines;

1.3、创建表,并指定存储引擎

-- 创建表 my_myisam,并指定MYISAM存储引擎
create table my_myisam
(id   int,name varchar(10)
) engine = MyISAM;-- 创建表 my_memory,指定MEMORY存储引擎
create table my_memory
(id   int,name varchar(10)
) engine = MEMORY;

2、 存储引擎-InnoDB介绍

2.1、存储引擎特点

  • 介绍:InnoDB是一种兼顾高可靠性和高性能的通用存储引擎,在MySQL 5.5之后,InnoDB是默认的MySQL存储引擎。
  • 特点:DML操作遵循ACID 原子性(Atomicity)一致性(Consistency)隔离性(Isolation)持久性(Durability)模型,支持 事务行级锁,提高并发访问性能;支持 外键 FOREIGN KEY约束,保证数据的完整性和正确性;
  • 文件:xxx.ibd:xxx代表的是表名,InnoDB引擎的每张表都会对应这样一个表空间文件,存储该表的表结构(frm、sdi)、数据和索引。参数:innodb_file_per_table
  • 在InnoDB存储引擎中,.ibd文件是表空间文件,用于存储表的数据和索引。每个InnoDB表都有一个与之关联的.ibd文件(除非该表被配置为使用共享表空间)。.ibd文件通常包含表的元数据、数据和索引信息。

    当InnoDB存储引擎的innodb_file_per_table配置选项被启用时,每个InnoDB表都会有自己独立的.ibd文件。这样做的好处是,可以更容易地管理单个表的大小和存储位置,例如,可以通过移动或删除.ibd文件来移动或删除表。

    .ibd文件相对应的是.frm文件,它存储了表的元数据(即表结构)。而InnoDB的系统表空间文件通常命名为ibdata1ibdata2等,用于存储undo日志、插入缓冲区、锁信息等。

    在某些情况下,例如当表损坏或需要优化时,可能需要直接操作.ibd文件。但是,直接操作这些文件是危险的,应该谨慎进行,并在操作前备份相关数据。

show variables like 'innodb_file_per_table';

C:\ProgramData\MySQL\MySQL Server 8.0\Data

Microsoft Windows [版本 10.0.19045.3996]
(c) Microsoft Corporation。保留所有权利。C:\ProgramData\MySQL\MySQL Server 8.0\Data\mybatis@002dexample>ibd2sdi t_book.ibd
["ibd2sdi"
,
{"type": 1,"id": 441,"object":{"mysqld_version_id": 80026,"dd_version": 80023,"sdi_version": 80019,"dd_object_type": "Table","dd_object": {"name": "t_book","mysql_version_id": 80026,"created": 20231209065441,"last_altered": 20231209065441,"hidden": 1,"options": "avg_row_length=0;encrypt_type=N;key_block_size=0;keys_disabled=0;pack_record=1;stats_auto_recalc=0;stats_sample_pages=0;","columns": [{"name": "bid","type": 16,"is_nullable": false,"is_zerofill": false,"is_unsigned": false,"is_auto_increment": false,"is_virtual": false,"hidden": 1,"ordinal_position": 1,"char_length": 80,"numeric_precision": 0,"numeric_scale": 0,"numeric_scale_null": true,"datetime_precision": 0,"datetime_precision_null": 1,"has_no_default": true,"default_value_null": false,"srs_id_null": true,"srs_id": 0,"default_value": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","default_value_utf8_null": true,"default_value_utf8": "","default_option": "","update_option": "","comment": "","generation_expression": "","generation_expression_utf8": "","options": "interval_count=0;","se_private_data": "table_id=1162;","engine_attribute": "","secondary_engine_attribute": "","column_key": 2,"column_type_utf8": "varchar(20)","elements": [],"collation_id": 255,"is_explicit_collation": false},{"name": "bname","type": 16,"is_nullable": true,"is_zerofill": false,"is_unsigned": false,"is_auto_increment": false,"is_virtual": false,"hidden": 1,"ordinal_position": 2,"char_length": 80,"numeric_precision": 0,"numeric_scale": 0,"numeric_scale_null": true,"datetime_precision": 0,"datetime_precision_null": 1,"has_no_default": false,"default_value_null": true,"srs_id_null": true,"srs_id": 0,"default_value": "","default_value_utf8_null": true,"default_value_utf8": "","default_option": "","update_option": "","comment": "","generation_expression": "","generation_expression_utf8": "","options": "interval_count=0;","se_private_data": "table_id=1162;","engine_attribute": "","secondary_engine_attribute": "","column_key": 1,"column_type_utf8": "varchar(20)","elements": [],"collation_id": 255,"is_explicit_collation": false},{"name": "stuid","type": 16,"is_nullable": true,"is_zerofill": false,"is_unsigned": false,"is_auto_increment": false,"is_virtual": false,"hidden": 1,"ordinal_position": 3,"char_length": 80,"numeric_precision": 0,"numeric_scale": 0,"numeric_scale_null": true,"datetime_precision": 0,"datetime_precision_null": 1,"has_no_default": false,"default_value_null": true,"srs_id_null": true,"srs_id": 0,"default_value": "","default_value_utf8_null": true,"default_value_utf8": "","default_option": "","update_option": "","comment": "","generation_expression": "","generation_expression_utf8": "","options": "interval_count=0;","se_private_data": "table_id=1162;","engine_attribute": "","secondary_engine_attribute": "","column_key": 4,"column_type_utf8": "varchar(20)","elements": [],"collation_id": 255,"is_explicit_collation": false},{"name": "DB_TRX_ID","type": 10,"is_nullable": false,"is_zerofill": false,"is_unsigned": false,"is_auto_increment": false,"is_virtual": false,"hidden": 2,"ordinal_position": 4,"char_length": 6,"numeric_precision": 0,"numeric_scale": 0,"numeric_scale_null": true,"datetime_precision": 0,"datetime_precision_null": 1,"has_no_default": false,"default_value_null": true,"srs_id_null": true,"srs_id": 0,"default_value": "","default_value_utf8_null": true,"default_value_utf8": "","default_option": "","update_option": "","comment": "","generation_expression": "","generation_expression_utf8": "","options": "","se_private_data": "table_id=1162;","engine_attribute": "","secondary_engine_attribute": "","column_key": 1,"column_type_utf8": "","elements": [],"collation_id": 63,"is_explicit_collation": false},{"name": "DB_ROLL_PTR","type": 9,"is_nullable": false,"is_zerofill": false,"is_unsigned": false,"is_auto_increment": false,"is_virtual": false,"hidden": 2,"ordinal_position": 5,"char_length": 7,"numeric_precision": 0,"numeric_scale": 0,"numeric_scale_null": true,"datetime_precision": 0,"datetime_precision_null": 1,"has_no_default": false,"default_value_null": true,"srs_id_null": true,"srs_id": 0,"default_value": "","default_value_utf8_null": true,"default_value_utf8": "","default_option": "","update_option": "","comment": "","generation_expression": "","generation_expression_utf8": "","options": "","se_private_data": "table_id=1162;","engine_attribute": "","secondary_engine_attribute": "","column_key": 1,"column_type_utf8": "","elements": [],"collation_id": 63,"is_explicit_collation": false}],"schema_ref": "mybatis-example","se_private_id": 1162,"engine": "InnoDB","last_checked_for_upgrade_version_id": 0,"comment": "","se_private_data": "","engine_attribute": "","secondary_engine_attribute": "","row_format": 2,"partition_type": 0,"partition_expression": "","partition_expression_utf8": "","default_partitioning": 0,"subpartition_type": 0,"subpartition_expression": "","subpartition_expression_utf8": "","default_subpartitioning": 0,"indexes": [{"name": "PRIMARY","hidden": false,"is_generated": false,"ordinal_position": 1,"comment": "","options": "flags=0;","se_private_data": "id=289;root=4;space_id=101;table_id=1162;trx_id=10390;","type": 1,"algorithm": 2,"is_algorithm_explicit": false,"is_visible": true,"engine": "InnoDB","engine_attribute": "","secondary_engine_attribute": "","elements": [{"ordinal_position": 1,"length": 80,"order": 2,"hidden": false,"column_opx": 0},{"ordinal_position": 2,"length": 4294967295,"order": 2,"hidden": true,"column_opx": 3},{"ordinal_position": 3,"length": 4294967295,"order": 2,"hidden": true,"column_opx": 4},{"ordinal_position": 4,"length": 4294967295,"order": 2,"hidden": true,"column_opx": 1},{"ordinal_position": 5,"length": 4294967295,"order": 2,"hidden": true,"column_opx": 2}],"tablespace_ref": "mybatis-example/t_book"},{"name": "fk_book_stuid","hidden": false,"is_generated": true,"ordinal_position": 2,"comment": "","options": "flags=0;","se_private_data": "id=290;root=5;space_id=101;table_id=1162;trx_id=10390;","type": 3,"algorithm": 2,"is_algorithm_explicit": false,"is_visible": true,"engine": "InnoDB","engine_attribute": "","secondary_engine_attribute": "","elements": [{"ordinal_position": 1,"length": 80,"order": 2,"hidden": false,"column_opx": 2},{"ordinal_position": 2,"length": 4294967295,"order": 2,"hidden": true,"column_opx": 0}],"tablespace_ref": "mybatis-example/t_book"}],"foreign_keys": [{"name": "fk_book_stuid","match_option": 1,"update_rule": 1,"delete_rule": 1,"unique_constraint_name": "PRIMARY","referenced_table_catalog_name": "def","referenced_table_schema_name": "mybatis-example","referenced_table_name": "t_stu","elements": [{"column_opx": 2,"ordinal_position": 1,"referenced_column_name": "sid"}]}],"check_constraints": [],"partitions": [],"collation_id": 255}
}
}
,
{"type": 2,"id": 106,"object":{"mysqld_version_id": 80026,"dd_version": 80023,"sdi_version": 80019,"dd_object_type": "Tablespace","dd_object": {"name": "mybatis-example/t_book","comment": "","options": "autoextend_size=0;encryption=N;","se_private_data": "flags=16417;id=101;server_version=80026;space_version=1;state=normal;","engine": "InnoDB","engine_attribute": "","files": [{"ordinal_position": 1,"filename": ".\\mybatis@002dexample\\t_book.ibd","se_private_data": "id=101;"}]}
}
}
]C:\ProgramData\MySQL\MySQL Server 8.0\Data\mybatis@002dexample>

 3、MyISAM存储引擎

  • 介绍:MyISAM是MySQL早期的默认存储引擎
  • 特点:不支持事务,不支持外键;支持表锁,不支持行锁;访问速度快
  • 文件:xxx.sdi:存储表结构信息;xxx.MYD:存储数据;xxx.MYI:存储索引

https://www.json.cn/

 

 4、Memory存储引擎

  • 介绍:Memory引擎的表数据时存储在内存中的,由于受到硬件问题、或断电问题的影响,只能将这些表作为临时表或缓存使用。
  • 特点:内存存放;hash索引(默认)
  • 文件:xxx.sdi:存储表结构信息

 5、InnoDB、MyISAM、Memory的区别

 6、存储引擎的选择

  • InnoDB用于大多数业务场景
  • MyISAM用于业务系统中的日志相关的数据,电商当中足迹和评论相关的数据,已经被 MongoDB 取代
  • MEMORY用于缓存,已经被 redis 取代

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

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

相关文章

HTML基础(3)

1、内联框架 iframe用于在网页内显示网页&#xff0c;语法如下&#xff1a; <iframe src"URL"></iframe> URL指向隔离页面 hight&#xff0c;weight设置高宽&#xff0c;删除边框将frameborder设置为0 <td> <iframe frameborder"0&qu…

麒麟v10安装mysql-8.0.35

因为要修复漏洞的原因&#xff0c;这两天将麒麟v10操作系统的服务器上的MySQL版本由5.7.27升级到8.0.35&#xff08;mysql安装包下载地址&#xff1a;MySQL :: Download MySQL Community Server (Archived Versions)&#xff09;&#xff0c;mysql的安装过程主要参考了这个博主…

JavaScript-throw、try,2024年前端高级面试题总结

提交电话 二、xml初识 xml文件是用来做什么的 核心思想&#xff1a; 答&#xff1a;存储数据 延伸问题&#xff1a; xml是怎样存储数据的&#xff1f; 答&#xff1a;以标签的形式存储 例: coco 什么是xml元素? 元素该如何编写? xml中的元素其实就是一个个的标签 标签…

面试官为什么喜欢考察Vue底层原理

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

国产低代码工具,轻松搞定数据迁移

在日常的业务系统升级或者数据维护过程中&#xff0c;数据迁移是各个企业用户不得不面临的问题&#xff0c;尤其是数据迁移过程中要保障数据完整性、统一性和及时性&#xff0c;同时也需要注意源数据中的数据质量问题&#xff0c;比如缺失、无效、错误等问题&#xff0c;需要在…

前端面试算法题1

1.已知&#xff1a; • 布局分为&#xff1a;父元素A和N个子元素B&#xff1b; • A宽度不固定&#xff1a;最小宽度为1000px&#xff0c;内部边距是32px • B的宽度不固定&#xff1a;相邻两个B元素的间距是16px&#xff0c;所有B的宽度相同&#xff0c;边框为1像素&#x…

【JAVA语言-第19话】多线程详细解析(一)

目录 多线程 1.1 并发和并行 1.2 线程和进程 1.2.1 进程 1.2.2 线程 1.3 单线程 1.3.1 单线程案例 1.4 创建多线程的方式 1.4.1 继承Thread类 1.4.2 实现Runnable接口 1.4.3 使用匿名内部类 1.5 Thread类 1.5.1 构造方法 1.5.2 常用方法 1.5.3 Thread类中…

《QT实用小工具·二十四》各种数学和数据的坐标演示图

1、概述 源码放在文章末尾 该项目实现了各种数学和数据的坐标演示图&#xff0c;下面是demo演示&#xff1a; 项目部分代码如下&#xff1a; #ifndef FRMMAIN_H #define FRMMAIN_H#include <QWidget> class QAbstractButton;namespace Ui { class frmMain; }class fr…

吴恩达机器学习-异常检测(Anomaly Detection)

在本练习中&#xff0c;您将实现异常检测算法&#xff0c;并将其应用于检测网络上出现故障的服务器。 文章目录 1-包2-异常检测2.1问题陈述2.2数据集2.3高斯分布2.2.1高斯实现的估计参数&#xff1a;2.2.2选择阈值&#x1d716; 2.4高维数据集 1-包 首先&#xff0c;让我们运…

基于FPGA的以太网相关文章导航

首先需要了解以太网的一些接口协议标准&#xff0c;常见的MII、GMII、RGMII时序&#xff0c;便于后续开发。 【必读】从MII到RGMII&#xff0c;一文了解以太网PHY芯片不同传输接口信号时序&#xff01; 介绍一款比较老的以太网PHY芯片88E1518&#xff0c;具有RGMII接口&#xf…

代码随想录阅读笔记-二叉树【总结】

二叉树的理论基础 代码随想录 (programmercarl.com)&#xff1a;二叉树的种类、存储方式、遍历方式、定义方式 二叉树的遍历方式 深度优先遍历 代码随想录阅读笔记-二叉树【递归遍历】-CSDN博客&#xff1a;递归三部曲初次亮相代码随想录阅读笔记-二叉树【迭代遍历】-CSDN博…

thinkphp6入门(22)-- 如何下载文件

假设在public/uploads文件夹下有一个文件test.xlsx 在前端页面添加下载链接&#xff0c;用户点击该链接即可下载对应的文件。 <a href"xxxxxxx/downloadFile">下载文件</a> 2. 在后端控制器方法中&#xff0c;我们需要获取要下载的文件路径&#xff0…

java+saas模式医院云HIS系统源码Java+Spring+MySQL + MyCat融合BS版电子病历系统,支持电子病历四级

javasaas模式医院云HIS系统源码JavaSpringMySQL MyCat融合BS版电子病历系统&#xff0c;支持电子病历四级 云HIS系统是一款满足基层医院各类业务需要的健康云产品。该产品能帮助基层医院完成日常各类业务&#xff0c;提供病患预约挂号支持、病患问诊、电子病历、开药发药、会员…

C语言—用EaxyX绘制实时钟表

代码效果如图 #undef UNICODE #undef _UNICODE #include<graphics.h> #include<conio.h> #include<math.h>#define width 640 #define high 480 #define PI 3.14159int main() {initgraph(width, high);int center_x, center_y;center_x width / 2;center_y…

基于 SMM 汽车交易系统(源码+配套文档)

摘要 电子商务的兴起不仅仅是带来了更多的就业行业。同样也给我们的生活带来了丰富多彩的变化。多姿多彩的世界带来了美好的生活&#xff0c;行业的发展也是形形色色的离不开技术的发展。作为时代进步的发展方面&#xff0c;信息技术至始至终都是成就行业发展的重要秘密。不论…

nginx学习记录-负载均衡策略

1. 负载均衡基本策略配置 1.1 weight&#xff08;权重&#xff09;配置 weight表示当前服务器承载的业务比例。假设现在有两台服务器A和B组成集群&#xff0c;但是A和B的配置不一样&#xff0c;A的性能更好些&#xff0c;那么此时我们希望服务器A能承载更多的业务&#xff0c…

【Ubuntu】update-alternatives 命令详解

1、查看所有候选项 ​​​​​​​sudo update-alternatives --list java 2、​​​​​​​更换候选项 sudo update-alternatives --config java 3、自动选择优先级最高的作为默认项 sudo update-alternatives --auto java 4、删除候选项 sudo update-alternatives --rem…

halcon缺陷检测-印刷品检测(差异化模型),键盘字符缺陷检测

前言 在实际项目中&#xff0c;印刷品缺陷检测是缺陷检测中的难点项目。通常印刷品检测往往具备缺陷小&#xff0c;缺陷所在位置不固定&#xff0c;出现少印或者多印的情况。并且由于产线原因&#xff0c;大量的印刷品在视野中的大小并不是完全一致的&#xff0c;可能出现细微…

java-数组转换为List集合

方法一&#xff1a;使用 Arrays.asList() 方法 Arrays.asList() 方法可以将数组转换为一个固定大小的List。 import java.util.Arrays; import java.util.List; import java.util.ArrayList; public class ArrayToListExample { public static void main(String[] args…

易绘创云打印怎么样?易绘创云打印好用吗?

随着云技术的发展&#xff0c;云打印等概念也逐渐火热了起来。作为当下云打印服务行业中的佼佼者&#xff0c;易绘创云打印服务页一直被众多用户讨论着。那么易绘创云打印怎么样&#xff1f;易绘创云打印好用吗&#xff1f;今天小易就带大家来介绍一下。 易绘创云打印怎么样&am…