MyISAM和InnoDB的主要區別和應用場景

主要區別:安全

  • 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,這樣能夠提升多用戶併發操做的性能。
相關文章
相關標籤/搜索