Memory 存储引擎(了解)

数据库优化 学习笔记

一、MySQL引擎 之 Memory(很少用)


        也称 HEAP 存储引擎,所以数据保存在内存中,如果 MySQL 服务重启数据会丢失,但是表结构会保存下来。

功能特点

  • 支持 HASH 索引和 BTree 索引( MyISAM 与 InnoDB 只支持 BTree 索引)
  • 所有字段都为固定长度 varchar(10)=char(10)
  • 不支持 BLOB 和 TEXT 等大字段,因为它的数据是存储在内存当中,不宜过大
  • Memory 存储引擎使用 表级锁



二、如何选择存储引擎


        大部分情况下,InnoDB 都是正确的选择,可以简单地归纳为一句话 ” 除非需要用到某些 InnoDB 不具备的特性,并且没有其他办法可以替代,否则都应该优先选择 InnoDB 引擎 “ 。

2.1、参考条件

  • 事务
    如果应用需要事务支持,那么 InnoDB(或者 XtraDB)是目前最稳定并且经过验证的选择。

  • 备份
    如果可以定期地关闭服务器来执行备份,那么备份的因素可以忽略。反之(如淘宝,一般是不能关闭数据库的,无时无刻都可能有人在浏览购物),那么就需要在线热备份,因此选择 InnoDB 就是基本的要求。

  • 崩溃恢复
    MyISAM 崩溃后发生损坏的概率比 InnoDB 要高很多,而且恢复速度也要慢。

2.2、应用举例

  • 日志型应用 —— 用 MyISAM ,因为大多数都是只读的,且插入速度也比较快。

  • 只读或者大部分情况下只读的表 —— 也应该用 MyISAM。

  • 订单处理 —— 用 InnoDB ,因为订单涉及到事务,InnoDB 支持订单。

  • 数据量很多,TB 级别的数据 —— 不考虑MySQL ,应换用非关系型数据库。

2.3、尽量不要混合使用存储引擎,但是一定要用的时候也可以使用。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值