news 2026/7/29 18:13:39

MYSQL-存储引擎

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MYSQL-存储引擎

存储引擎就是存储数据、建立索引、更新/查询数据等技术的实现方式。存储引擎是基于表的,而不是基于库的,所以存储引擎也被称为表类型。

MySQL的存储引擎是数据库的底层核心组件,它决定了数据如何存储、如何索引、是否支持事务以及如何实现并发控制。可以将其理解为数据库的“发动机”或“文件系统格式”,不同的引擎为数据提供了不同的能力和特性。

MySQL最大的特点之一就是采用了插件式存储引擎架构,可以根据应用需求,为不同的表选择最合适的引擎。

默认表的存储引擎为innodb。

-- 查询建表语句--默认存储引擎:InnoDB show create table account; -- 查看当前数据库支持的存储引擎 show engines; -- 创建表my_myisam,并指定myisam存储引擎 create table my_myisam ( id int, name varchar(10) )engine = myisam;

存储引擎特点

innodb:是一种兼顾高可靠性和高性能的通用存储引擎,在mysql 5.5 之后,Innodb是默认的mysql存储引擎。

特性维度InnoDB(MySQL 5.5+默认引擎)MyISAM(MySQL 5.5前默认)MemoryArchive
主要用途OLTP(在线事务处理),需要事务安全、高并发、数据完整性。OLAP(只读或读多写少),如数据仓库、报表。Web应用已基本淘汰临时表、缓存,数据需在内存中,速度极快。归档存储,日志、审计等历史数据。
事务支持完整支持(ACID)。❌ 不支持。❌ 不支持。❌ 不支持。
锁粒度行级锁,支持高并发写。表级锁,写并发性能差。表级锁行级锁(插入时)。
外键支持支持,保证引用完整性。❌ 不支持。❌ 不支持。❌ 不支持。
索引类型聚簇索引,主键查询极快。非聚簇索引,索引与数据分离。哈希索引(默认),等值查询快。不支持索引(仅INSERT/SELECT)。
数据恢复崩溃后自动恢复(通过redo log)。崩溃后需检查/修复表。服务器重启后数据丢失不支持(操作需全表扫描)。
全文索引✅ MySQL 5.6+ 支持。✅ 支持(较早版本常用)。❌ 不支持。❌ 不支持。
存储限制64TB256TBmax_heap_table_size限制

总结:

  • 95%以上的场景,使用默认的InnoDB它提供了事务安全、行级锁、崩溃恢复和外键约束,是保证数据一致性和完整性的基石。

  • 特殊场景,按需选择:

    • MEMORY用于临时表、会话缓存,速度极快。

    • Archive用于日志归档,压缩比极高。

    • MyISAM:除非是遗留系统或只读数据仓库,否则应避免使用。

学习记录,仅供参考。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/22 14:48:46

基于STM32的辅助病床智慧监护系统设计(有完整资料)

资料查找方式:特纳斯电子(电子校园网):搜索下面编号即可编号:T4102310M设计简介:以STM32单片机为核心,结合体温、血氧、心率等生理特征参数的监测,并可按需设定点滴时间定时参数&…

作者头像 李华
网站建设 2026/7/27 13:39:57

AI音频分离技术深度解析:Ultimate Vocal Remover的多轨处理革命

AI音频分离技术深度解析:Ultimate Vocal Remover的多轨处理革命 【免费下载链接】ultimatevocalremovergui 使用深度神经网络的声音消除器的图形用户界面。 项目地址: https://gitcode.com/GitHub_Trending/ul/ultimatevocalremovergui 在数字音频处理领域&a…

作者头像 李华
网站建设 2026/7/20 14:34:06

5大理由告诉你为什么Bookworm是Linux用户必备的电子书阅读器

5大理由告诉你为什么Bookworm是Linux用户必备的电子书阅读器 【免费下载链接】bookworm A simple ebook reader for Elementary OS 项目地址: https://gitcode.com/gh_mirrors/bo/bookworm 在数字阅读时代,一款优秀的电子书阅读器能够极大提升我们的阅读体验…

作者头像 李华
网站建设 2026/7/28 18:24:25

UDP通信

创造通信套接字socketint fd socket(AF_INET, SOCK_DGRAM, 0);sendto 用于通过 UDP 套接字 发送数据。recvfrom 用于通过 UDP 套接字 接收数据。//客户端单播 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #incl…

作者头像 李华
网站建设 2026/7/28 12:19:10

如何快速制作专业有声书:abogen开源工具的完整指南

如何快速制作专业有声书&#xff1a;abogen开源工具的完整指南 【免费下载链接】abogen Generate audiobooks from EPUBs, PDFs and text with synchronized captions. 项目地址: https://gitcode.com/GitHub_Trending/ab/abogen abogen是一款功能强大的开源有声书生成工…

作者头像 李华
网站建设 2026/7/28 7:28:38

Matlab 基于光流场的交通流量分析与应用

Matlab 基于光流场的交通流量分析与应用 基于光流场的运动目标检测光流法 HS光流法 Matlab程序 可以检测任意车流/人流视频可以检测任何运动目标视频在智能交通系统不断发展的当下&#xff0c;准确分析交通流量至关重要。基于光流场的方法为交通流量分析以及运动目标检测提供了…

作者头像 李华