目录
1.MySQL默认的存储引擎
MySQL默认的存储引擎:InnoDB
InnoDB的好处:InnoDB是事务性存储引擎,支持事务(这也是其他存储引擎所不具备的优点)
数据库中查询存储引擎:SHOW ENGINES
2.MySQL存储引擎架构
概念:采用插件式架构,从而支持多种存储引擎
注意:存储引擎是基于表的,因此可以为不同表设置不同存储引擎
3.InnoDB与MyISAM的对比
MySQL版本:
MySQL5.5之前的默认存储引擎:MyISAM
MySQL5.5之后的默认存储引擎:InnoDB
行级锁:
MyISAM:只有表级锁,并发状态下无法实现对行并发写操作
InnoDB:支持表级锁和行级锁,能够对行进行并发写
事务支持:
InnoDB支持事务,MyISAM不支持事务
注意:InnoDB支持的事务实现了SQL的隔离级别,且默认的可重读可以解决幻读问题
外键支持:
InnoDB支持外键,MyISAM不支持外键
异常崩溃处理:
InnoDB在数据库发生异常崩溃后,能够在数据库重启时恢复到崩溃前的状态
MyISAM无法做到这一点
性能方面:
InnoDB的处理能力优于MyISAM
4.MySQL的查询缓存的缺点
打开查询缓存时对数据库的读写操作带来额外消耗
读:读之前要先检查是否命中缓存,若命中缓存,操作结束后也会将查询语句写入缓存
写:缓存未命中,会继续查询将查询结果写入缓存
5.查询缓存的使用场景
1.表数据修改不频繁
2.查询操作的重复率高
3.查询操作的结果存储空间比较小