美文网首页
MySQL存储引擎 MyISAM 和 InnoDB 的区别。

MySQL存储引擎 MyISAM 和 InnoDB 的区别。

作者: 高校邦MOOC | 来源:发表于2017-07-01 10:30 被阅读36次
    a. MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持.
    b. MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快.
    c. InnoDB不支持FULLTEXT类型的索引.
    d. InnoDB中不保存表的具体行数,也就是说,执行select count(*) from table时,InnoDB要扫描一遍整个表来计算有多少行,但是MyISAM只要简单的读出保存好的行数即可.
    e. 对于AUTO_INCREMENT类型的字段,InnoDB中必须包含只有该字段的索引,但是在MyISAM表中,可以和其他字段一起建立联合索引。
    f. DELETE FROM table时,InnoDB不会重新建立表,而是一行一行的删除。
    g. LOAD TABLE FROM MASTER操作对InnoDB是不起作用的,解决方法是首先把InnoDB表改成MyISAM表,导入数据后再改成InnoDB表,但是对于使用的额外的InnoDB特性(例如外键)的表不适用.
    h. MyISAM支持表锁,InnoDB支持行锁(Mysql innodb虽是锁行的,但是如果没有索引,或者索引如上,那就要锁表了。)。
    

    相关文章

      网友评论

          本文标题:MySQL存储引擎 MyISAM 和 InnoDB 的区别。

          本文链接:https://www.haomeiwen.com/subject/bfpwcxtx.html