博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MyISAM和InnoDB
阅读量:7157 次
发布时间:2019-06-29

本文共 482 字,大约阅读时间需要 1 分钟。

MyISAM和InnoDB

MyISAM

MyISAM使用B+tree作为索引结构,叶节点存放的是数据地址

MyISAM不支持事务和外键。

MyISAM是表锁,对数据库写操作时会锁住整个表,效率低。

MyISAM支持全文索引。

MyISAM设计结构简单,适合read密集的表。

MyISAM支持索引压缩,可以加载更多索引。

InnoDB

InnoDB同样使用B+tree作为索引结构,但是叶节点存储的是完整的数据

InnoDB支持事务和外键,在发生故障时可以通过事务日志来回复数据库。

InnoDB是行锁,只锁定一行数据,因此写操作很快。

InnoDB不支持全文索引。

InnoDB对于write和update密集的性能更好(由于行级锁的原因)。

参考:

区别

  • 叶节点数据存放的不同,指针和完整数据

  • 是否支持事务和外键

  • 设计的区别,适合读密集还是写密集

  • 锁的区别,表锁和行锁(如果InnoDB不能确定扫描范围,则需要对全表锁定)

  • 是否支持全文索引

  • select count(*)的区别,MyISAM保存行数(如果由where则扫描全表),而InnoDB扫描全表

转载地址:http://yaegl.baihongyu.com/

你可能感兴趣的文章
mysql 8.0降序索引
查看>>
华为防火墙6000web界面配置
查看>>
【安全牛学习笔记】手动漏洞挖掘-SQL盲注
查看>>
聊聊jdk http的HeaderFilter
查看>>
H3 BPM前后台交互方法介绍
查看>>
企业级自动化运维工具应用实战-ansible
查看>>
web前端小白案例-鼠标移入移出效果
查看>>
装饰模式
查看>>
思科OSPF多进程重分发小实验
查看>>
关于phpredis安装的一点坑
查看>>
java知识之方法的练习及注意事项
查看>>
云空间备份
查看>>
python 中的模块与包
查看>>
eyoucms 指定文章列表如何调用下载内容
查看>>
ubuntu:unrar 的使用
查看>>
33-高级路由:BGP汇总:实验四 汇聚命令
查看>>
用SourceTree轻松Git项目图解
查看>>
如何顺利完成Kubernetes源码编译?
查看>>
安装两台虚拟机使用桥接模式以及可以访问共享
查看>>
光纤传送网中CWDM光模块的特点及优势
查看>>