MySQL主流存储引擎及适用场景

存储 存储软件
Mysql数据库支持多种存储引擎,不同的存储引擎有其适用的场景,选择合适的存储引擎是Mysql优化的策略之一。

 Mysql数据库支持多种存储引擎,不同的存储引擎有其适用的场景,选择合适的存储引擎是Mysql优化的策略之一。

[[268225]]

常见的存储引擎有:MyISAM、Innodb、Memory 

 

数据库系列:Mysql主流存储引擎及适用场景

 

Innodb

MySQL5.5以及之后的版本采用innodb作为默认的存储引擎,主要特点如下:

  • 支持行级锁
  • 支持外键约束
  • 完备的事务机制,实现了四种隔离级别
  • 可靠性号,崩溃后修复能力较高

文件格式:

  • .frm(存储表定义)
  • 共享表空间文件:ibdata1
  • 私有表空间文件:表名.ibd
  • redo log文件

适用场景:数据修改频繁,对事务特性要求比较高(如金融系统),需要支持并发处理能力的系统。

MYISAM

MySQL5.5以前采用MYISAM作为默认的存储引擎,主要特点如下:

  • 比较强调读取效率,查询速度较快
  • 磁盘空间占用少
  • 只支持表级锁,并发能力较差
  • 不支持事务,灾难恢复能力较差

文件格式:

  • .frm(存储表定义)
  • MYD(MYData,存储数据)
  • MYI(MYIndex,存储索引)

适用场景:数据很少更新,一次插入,多次读取的业务场景。

 

数据库系列:Mysql主流存储引擎及适用场景

MEMORY

类似于内存缓存,表结构的定义存在磁盘上(frm文件),实际数据是存储在内存中,响应速度比较快。

  • 响应速度快
  • 表级锁,频繁更新数据可能会造成并发瓶颈
  • 不支持可变字段(但可以借助verchar实现文本存储)
  • 数据可靠性很差,机器或MySQL服务器重启后,就会丢失
  • 需要机器有足够的内存

适用场景:数据量不大,需要被频繁的访问,而且数据丢失不会对业务产生比较严重的影响。

责任编辑:武晓燕 来源: 今日头条
相关推荐

2021-08-16 13:54:23

大数据深信服

2009-06-05 10:43:29

struts2 checheckbox实例

2023-11-29 07:43:30

2015-03-11 13:54:25

云技术云应用云存储

2015-01-16 11:30:07

Openstack分布式存储

2010-03-02 16:50:34

WCF返回值

2020-06-16 15:40:32

闭锁栅栏线程

2011-05-26 15:10:15

静态变量

2021-03-04 09:00:00

架构Lambda工具

2022-07-11 15:35:42

云计算银行本文主要从银行实际应

2018-01-25 19:09:40

JavaThreadLocal线程

2017-09-11 14:50:55

MySQL数据表类型存储引擎

2018-05-11 09:07:39

Docker存储驱动

2023-01-28 07:59:24

2011-08-24 17:41:16

MySQL死锁

2021-12-03 18:03:06

算法场景Rsa

2022-09-20 07:36:43

云原生存储方案

2010-06-30 17:02:07

静态路由

2023-10-10 08:36:57

数据库MyISMInnoDB

2012-03-20 11:16:24

MySQLMyISAM
点赞
收藏

51CTO技术栈公众号