MySQL - MySQL 常用存储引擎简介

# 前言

存储引擎在MySQL底层以组件的形式提供,不同的存储引擎提供的存储机制、索引的存放方式和锁粒度等均不相同。


存储引擎基于数据表, 而不是基于数据库, 请根据业务需求为数据表选择最优的存储引擎。


创建新表时, 如果不指定存储引擎, 则使用默认的存储引擎。


MySQL5.5 之前默认存储引擎为 MyISAM, MySQL5.5 之后默认存储引擎为 InnoDB

查看当前 MySQL 支持的存储引擎

show engines;

image-20220803175639205

一、MySQL常用引擎

MySQL 常用引擎有 : InnoDBMyISAMMEMORYARCHIVECSV


以下简单介绍一下, 其他的知识, 请移步 MySQL 官网

1.1 InnoDB

InnoDB 是一种兼顾高可靠性和高性能的通用存储引擎。具有提交、回滚和崩溃恢复功能的事务以保护用户数据。

InnoDB 主要特性:

  • 支持事务
  • 行级锁机制, 支持更高的并发
  • 外键约束
  • 能够通过二进制日志恢复数据

1.2 MyISAM

MyISAM 主要特性:

  • 不支持事务
  • 表级锁
  • 不支持外键约束
  • 支持全文索引
  • 访问速度快

1.3 MEMORY

Memory 使用 hash 索引, 将表数据存放于内存中, 受到不可控影响, 数据容易丢失, 所以主要用于 临时表或缓存。

扫描二维码关注公众号,回复: 14473136 查看本文章

MEMORY 主要特性:

  • 不支持 TEXTBLOB 类型, 只支持固定长度的字符串类型。比如: 将 varchar 自动转为 char
  • 表级锁
  • 通常作为临时表使用

1.4 ARCHIVE

Archive 只支持 selectinsert 语句。

ARCHIVE 主要特性:

  • 支持数据压缩, 在存储数据前会对数据压缩处理

  • 只支持在整数自增类型的字段上添加索引


1.5 CSV

CSV 主要存储的是 .csv 格式的文本数据, 可以直接打开存储的文件进行编辑。

CSV 主要特性:

  • 可将数据表中的数据直接导出为 .csv 文件, 也可将 .csv 文件导入数据表中。

猜你喜欢

转载自blog.csdn.net/qq_35453862/article/details/126158778
今日推荐