zoukankan      html  css  js  c++  java
  • MyIsam和Innodb对比

    1.事物支持

      MyIsam引擎不支持事物,Innodb支持事物

    2.锁粒度

      MyIsam支持表锁,Innodb支持行级锁和表锁,行级锁实现的方式是通过对索引加锁.

    3.数据安全性

      MyIsam相较于Innodb数据容易损坏,不容易恢复.

    4.索引

      MyISam主键索引和普通索引相同,都是保存的数据行的指针

      Innodb主键索引是聚簇索引,普通索引则是保存主键索引的值,普通索引查询需要一次额外的书签查找.

    5.外键支持

      MyISam不支持外键约束,Innodb支持外键约束.

    6.分区支持

      MyISam不支持分区,Innodb支持分区.

      一般认为MyISam查询性能高于Innodb是因为,MyISam的索引设计不需要书签查找,节省了一次查询操作,而早期的Innodb对于书签查找相当于随机IO,不能充分利用B+树索引的排序特性和mysql的缓存机制,因而查询比较慢.

    但是Innodb自5.6后支持MRR优化,相当于对于要进行书签查找的数据进行一次排序,转化为了顺序查找,查询的差别已经很小了,因此这种说法不太准确了已经.

      而Innodb的更新性能高于MyIsam则是因为普通索引保存的是主键索引,更新只需要维护主键索引即可,而MyIsam则需要维护所有的索引,当索引越多,MyIsam的更新性能就会越差.

      

  • 相关阅读:
    python_论优点&缺点
    Python_正则表达式指南
    python学习
    Linux命令之basename 命令
    mysqlpython模块的内存泄露和中文字符编码问题
    python:ip地址转换
    程序员技术练级攻略转
    常用python代码
    shell export 作用转载
    python_文本文件里面随机抽取若干行,写入新的文本文件里面
  • 原文地址:https://www.cnblogs.com/ironroot/p/7305538.html
Copyright © 2011-2022 走看看