【数据库】InnoDB和MyISAM的区别以及适用场景

目录

区别

        1.是否支持事务

        2.是否支持外键

        3.索引类型

        4.是否存储全表行数

        5.锁的类型

        6.索引要求

        7.存储文件

        8.适用场景


区别

        1.是否支持事务

                InnoDB支持事务,对于每条SQL语句都会默认封装为事务,为了提高速度可以把多条SQL放在begin和commit之间,形成一个事务

                MyISAM不支持事务

        2.是否支持外键

                InnoDB支持

                MyISAM不支持

        3.索引类型

                InnoDB为聚簇索引

                MyISAM为非聚簇索引

                具体可以看聚簇索引与非聚簇索引

        4.是否存储全表行数

                InnoDB不存储,获取行数要遍历全表

                MyISAM存储

        5.锁的类型

                InnoDB支持表级锁、行级锁(默认)

                MyISAM支持表级锁

                具体可以看【数据库】锁

        6.索引要求

                InnoDB必须有唯一索引(如主键)

                MyISAM可以没有

        7.存储文件

                InnoDB存储文件为表定义文件和数据文件

                MyISAM存储文件为表定义文件,数据文件,索引文件

        8.适用场景

                当增删改(写)操作多时,用Innodb

                当查(读)操作多时,用MyISAM

参考文章

MyISAM与InnoDB 的区别(9个不同点)_张花生的博客-CSDN博客_innodb和myisam的区别

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值