MyISAM和InnoDB的主要区别和应用场景
程序员文章站
2022-05-25 16:18:03
主要区别: 1).MyISAM是非事务安全型的,而InnoDB是事务安全型的。 2).MyISAM锁的粒度是表级,而InnoDB支持行级锁定。 3).MyISAM支持全文类型索引,而InnoDB不支持全文索引。 4).MyISAM相对简单,所以在效率上要优于InnoDB,小型应用可以考虑使用MyIS ......
主要区别:
- 1).myisam是非事务安全型的,而innodb是事务安全型的。
- 2).myisam锁的粒度是表级,而innodb支持行级锁定。
- 3).myisam支持全文类型索引,而innodb不支持全文索引。
- 4).myisam相对简单,所以在效率上要优于innodb,小型应用可以考虑使用myisam。
- 5).myisam表是保存成文件的形式,在跨平台的数据转移中使用myisam存储会省去不少的麻烦。
- 6).innodb表比myisam表更安全,可以在保证数据不会丢失的情况下,切换非事务表到事务表(alter table tablename type=innodb)。
应用场景:
- 1).myisam管理非事务表。它提供高速存储和检索,以及全文搜索能力。如果应用中需要执行大量的select查询,那么myisam是更好的选择。
- 2).innodb用于事务处理应用程序,具有众多特性,包括acid事务支持。如果应用中需要执行大量的insert或update操作,则应该使用innodb,这样可以提高多用户并发操作的性能。
上一篇: 麻省理工教授透露为什么80%黑客都使用Python!
下一篇: c/c++ 函数模板初探