MySQL引擎之Memory
也称HEAP存储引擎,所以数据保存在内存中,如果MySQL服务重启数据会丢失,但是表结构会保存下来
功能特点
1.支持HASH索引和BTree索引
(hash-等值查找 where id = 1;
BTree-范围查找 )
指定索引为BTree
create index_t1(字段名) using btree on test_memory(t1(10));
show index from test_memory;
2.所有字段都为固定长度 varchar(10)=char(10)
3.不支持BLOB和TEXT等大字段
Memory存储引擎使用表级锁
如何选择存储引擎
大部分情况下,InnoDB都是正确的选择,可以简单地归纳为一句话“除非需要用到某些
InnoDB不具备的特性,并且没有其他办法可以替代,否则都应该优先选择InnoDB引擎
参考条件
事务
如果应用需要事务支持,那么InnoDB(或者XtraDB)是目前最稳定并且经过验证的选择
备份
如果可以定期地关闭服务器来执行备份,那么备份的因素可以忽略。反之,如果需要在
线热备份,那么选择InnoDB就是基本的要求
崩溃恢复
MyISAM崩溃后发生损坏的概率比InnoDB要高很多,而且恢复速度也要慢
应用举例
日志型应用 --MyISAM
只读或者大部分情况下只读的表 -MyISAM
订单处理 -InnoDB