高性能MySQL(六):选择合适的存储引擎

MySQL可用的存储引擎有很多,那怎么选择呢?在大多数情况下,选择InnoDB引擎就对了,从MySQL5.5版本开始将InnoDB引擎作为默认存储引擎了(官方指明了方向)。

如果应用需要不同的存储引擎,请先考虑以下几个因素:

1、事务

如果需要事务,InnoDB(或者XtraDB)是目前最稳定并且经过验证的选择。如果不需要事务,并且主要是SELECT和INSERT操作,那么MyISAM是不错的选择。

2、备份

如果可以定期地关闭服务器来执行备份,那么备份的因素可以忽略。反之,如果需要在线热备份,那么选择InnoDB就是基本的要求。

3、崩溃恢复

数据量比较大的时候,系统崩溃后需要快速恢复。相对而言,MyISAM崩溃后发生损坏的概率比InnoDB要高很多,而且恢复速度也要慢。

4、特有的特性

有些应用可能依赖一些存储引擎所独有的特性或者优化,比如很多应用依赖聚簇索引的优化。另外,MySQL中也只有MyISAM支持地理空间搜索。

原文地址:https://www.cnblogs.com/liuyiyuan/p/13817002.html