目录
1.MyISAM和InnoDB关于锁方面的区别是什么
2.MYSQL的两个常用存储引擎
3.MyISAM应用场景
4.InnoDB适合场景
四、引擎MyISAM和InnoDB
1.MyISAM和InnoDB关于锁方面的区别是什么
MyISAM默认用的是表级锁,不支持行级锁
InnoDB默认用的是行级锁,也支持表级锁
2.MYSQL的两个常用存储引擎
有两个常用存储引擎:MyISAM与InnoDB(MySQL默认的)
MyISAM与InnoDB的区别:
(1)事务处理方面:
MyISAM强调性能,查询速度比InnoDB快,但不提供事务支持;
InnoDB提供事务支持。
(2)外键:
MyISAM不支持外键;InnoDB支持外键。
(3)锁:
MyISAM只支持表级锁;
InnoDB支持表级锁与行级锁,默认是行级锁。
因此InnoDB适合插入和更新比较多的情况,MyISAM适合频繁查询的情况。
(4)全文索引:
MyISAM支持全文索引,InnoDB不支持全文索引(从MySQL5.6版本开始提供对全文索引的支持)
(5)表主键:
MyISAM:允许没有主键的表存在
InnoDB:如果没有设定主键,就会自动生成一个6字节的主键(用户不可见)
(6)表的具体行数:
MyISAM:select count(*) from table,MyISAM只需要读出保存好的行数,因为MyISAM内置了一个计数器。
InnoDB:不保存具体的行数,执行select count(*) from table时,是扫描一遍整个表来计算有多少行。
3.MyISAM应用场景
4.InnoDB适合场景
原文地址:https://www.cnblogs.com/xzmxddx/p/10356013.html
时间: 2024-10-24 05:04:46