mysql engines

 数据库事务特性:原子性 一致性 隔离性 持久性 

事务开启:start transcation  回滚 rollback  提交 commit

set autocommit=ON默认会自动提交(提交的目的是将数据从内存写入到磁盘文件)

MyISIM的特点:

1.不支持事务 

2.表级锁定

3.读写互相阻塞 (写入时阻塞读取 读取时阻塞写入)

4.只会缓存索引 key_buffer_size

5.读取速度较快 占用资源少

6.不支持外键约束但支持全文索引

7.是mysql5.5.5之前默认的存储引擎

 MyISAM适应场景:不需要事务支持的业务 一般是读数据比较多的业务 读多或写多比较适合 并发相对低的业务 数据修改相对少的业务 对数据一致性要求不高的业务

MyISAM调优:设置合适的索引  调整读写优先级 启用延迟插入 启用缓存

Innodb的特点:

1.支持事务

2.行级锁表

3.读写阻塞与事务隔离级别相关

4.具有非常高效的缓存特性:能缓存索引 也能缓存数据

5.整个表和主键以Cluster存储 组成一棵平衡树

6.所有的secondary Index 都会保存主键信息

7.支持分区 分表

8.支持外键 对硬件要求比较高

Innodb适用场景:需要事务支持 行级锁高并发能力强 读写比较频繁的场景 数据一致性要求高 硬件资源高

posted @ 2016-12-06 15:44  howhy  阅读(73)  评论(0编辑  收藏  举报