标签:回滚 处理 设计 mysql 引擎 崩溃恢复 运行 损坏 大量
MySQL数据库的引擎(缺省情况下)有三个:
ISAM
MYISAM
HEAP
另外 INNODB BERKLEY(BDB)也常常可以使用
ISAM:
优点:设计之初就考虑到读次数远大于数据更新的次数,因此执行读操作很快,而且不占用大量的内存和存储资源
缺点:不支持事物,也不能够容错 没有索引和字段管理的功能
MYISAM:
优点:提供ISAM里所没有的索引和字段管理的大量功能,还有一种表格锁定的机制,优化多个并发的读写操作。
缺点:表格锁定机制,代价是需要经常运行OPTIMIZE TABLE命令,来恢复被更新机制所浪费的空间。不能在表损坏后恢复数据。不支持事物处理,外来键
适用场景:1、做很多count计算;2、插入不频繁,查询非常频繁;3没有事物
HEAP:
优点:允许只驻留在内存里的临时表格,驻留在内存里让HEAP比ISAM和MYISAM都快。数据行被删除的时候,HEAP也不会浪费大量的空间
缺点:管理的数据是不稳定的,如果在关机之前没有进行保存,那么所有的数据都会丢失。
InnoDB:
优点:对事物处理和外来键的支持。提供了具有提交回滚和崩溃恢复能力的事物安全存储引擎
缺点:比ISAM和MYISAM慢
适用场景:1、可靠性要求比较高,或者要求事物;2、表更新和查询都相当频繁,并且表锁定的机会比较大的情况。
标签:回滚 处理 设计 mysql 引擎 崩溃恢复 运行 损坏 大量
原文地址:http://www.cnblogs.com/nixiaocang/p/6512690.html