1. 什么是存储引擎?

      • MySQL中的数据用各种不同的技术存储在文件(或者内存)中,这些技术中的每一种技术都是用不同的存储机制,索引技巧,锁定水平并且最终提供广泛的不同的功能和能力,通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能
      • 不同的存储引擎性能是不一样的
    2. 分类

      • MYISAM

        • 不支持事务,也不支持外键,访问速度快,对事务完整性没有要求或者以SELECT, INSERT为主的应用基本都可以使用这个引擎来创建表
        • 每个MylSAM在磁盘上存储成三个文件,其中文件名和表 .

          • .frm(存储表定义)
          • MYD(MYData, 存储数据)
          • MYI(MYIndex, 存储索引)
      • INNODB

        • 提供了具有提交,回滚,崩溃恢复能力的事务安全,但是比MylSAM 处理效率差一些,占用更多的磁盘空间以保留数据和索引
      • MEMORY

        • 使用内存中的内容来创建表,每一个MEMORY表实际对应一个磁盘文件,格式是.frm, 重新进入之后,数据就消失了。存储临时数据
        • 访问速度快,默认使用HASH索引,一旦服务器关闭,表中的数据就会丢失,表还会继续存在