存储引擎: 是mysql存储对象的一种特殊文件结构,处于mysql最底层,其他上层操作,都是依赖于存储引擎。
innodb 的特点innodb是大于5.5版本 默认存储引擎
数据存储结构是聚族索引(索引key和数据存在一起);索引数据结构:B+树 ;支持事务,可以缓存数据和索引,高效的缓存特性支持并发操作(为什么支持并发 因为使用了行级锁,只该行锁定,其他行没有锁定,效果达到无阻塞操作);支持行级锁(Innodb会自带锁,不需要我们自己设置,效果达到无阻塞读操作),支持外键约束,注重数据的完整性和安全性;支持崩溃后完全恢复(通过redo log 这种物理日志来应用数据页的方法进行恢复);支持热备份,不保存表的行数,清空表时一行行删除。
缺点
不适合全文索引 不擅长快随插入(插入时按照主键进行排序,所以影响插入效率)服务器资源开销大 innodb 怎么调优
1.主要是SQL语句的调优,最核心优化是每个语句走索引
2.主键尽可能的小;
3.尽量避免全表索引;
4.尽可能缓存所有数据和索引 ,提高相应速度,提高磁盘io;
myisam特点
Myisam < 5.5 版本默认存储引擎
数据和索引值分离,使用数据结构非聚族索引;支持全文索索引;支持数据压缩,压缩工具myisamPack ;数据紧凑储存, 因此可获得更小的索引和更快的全表扫描性能保存行数 (用过一个变量保存行数,使用的时候直接读出变量即可)占用资源少缺点 不支持事务,不支持行锁,不支持数据恢复;适用场景
不需要事务的支持的场景,读数据比较多的网站,并非相对较低的业务对数据一致性要求不高的业务



