news 2026/4/25 6:47:12

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/4/20 11:27:13

132页RAG实践手册:构建知识库和问答系统的实战指南

在人工智能技术日新月异的今天,越来越多的人希望能够拥有属于自己的智能助手,提升工作效率、优化知识管理,甚至打造个人品牌。《RAG Handbook》正是为此而生。 本书将系统性地介绍如何从零开始,基于RAG(Retrieval‑Aug…

作者头像 李华
网站建设 2026/4/23 16:43:02

1小时验证创意:用MVC框架快速构建产品原型

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 快速生成一个共享办公空间预订系统的原型。使用Ruby on Rails框架,实现以下核心功能:1) 空间列表展示;2) 预订表单;3) 简单的日历视图…

作者头像 李华
网站建设 2026/4/16 12:31:04

PHPBrew自定义任务开发实战:从入门到精通

想要让PHPBrew真正成为你的专属开发利器吗?自定义任务就是那把钥匙。通过它,你可以让PHP环境管理变得随心所欲,不再受限于标准功能。今天我们就来聊聊如何玩转PHPBrew自定义任务开发。 【免费下载链接】agent-framework A framework for buil…

作者头像 李华
网站建设 2026/4/23 10:12:48

PACKAGER.EXE:Windows工具包的终极对象安装包解决方案

PACKAGER.EXE:Windows工具包的终极对象安装包解决方案 【免费下载链接】packager.exe资源下载介绍 PACKAGER.EXE是一款专为微软Windows操作系统设计的实用工具,特别适用于解决Windows XP系统中Word文档内嵌对象无法打开的问题。通过该工具,用…

作者头像 李华
网站建设 2026/4/20 13:59:54

Java:serialVersionUID

serialVersionUID是 Java 中用于序列化机制的一个特殊字段,它是一个 static final long 类型的标识符,用于标识可序列化类的版本。‌ 作用与原理当一个类实现 Serializable 接口时,Java 序列化机制会为该类关联一个版本号(即 seri…

作者头像 李华
网站建设 2026/4/23 8:50:12

[特殊字符] 别只盯着跑分!开发者已偷偷爱上 Gemini 3,GPT-5.2 还能用情怀留住他们吗?一场关于钱、效率和生态的血战!

咱们聊点更接地气的:谁才是真正的 AI “印钞机”? 跑分、参数、论文,这些都是给投资人和媒体看的。但对于每天用 API 接口、用 AI 赚钱的开发者和创业公司来说,他们只看三点:性能/价格比(性价比&#xff09…

作者头像 李华