MySQL存储引擎MyISAM与InnoDB的9点区别
虽然MySQL里的存储引擎不只是MyISAM与InnoDB这两个,但常用的就是它俩了。可能有站长并未注意过MySQL的存储引擎,其实存储引擎也是数据库设计里的一大重要点,那么博客系统应该使用哪种存储引擎呢?下面我们分别来看两种存储引擎的区别。 MySQL存储引擎MyISA
虽然MySQL里的存储引擎不只是MyISAM与InnoDB这两个,但常用的就是它俩了。可能有站长并未注意过MySQL的存储引擎,其实存储引擎也是数据库设计里的一大重要点,那么博客系统应该使用哪种存储引擎呢?下面我们分别来看两种存储引擎的区别。
MySQL存储引擎MyISAM与InnoDB的区别
一、InnoDB支持事务,MyISAM不支持,这一点是非常之重要。事务是一种高级的处理方式,如在一些列增删改中只要哪个出错还可以回滚还原,而MyISAM就不可以了。
二、MyISAM适合查询以及插入为主的应用,InnoDB适合频繁修改以及设计到安全性就高的应用
三、InnoDB支持外键,MyISAM不支持
四、MyISAM是默认引擎,InnoDB需要指定
五、InnoDB不支持FULLTEXT类型的索引
六、InnoDB中不保存表的行数,如select count(*) from table时,InnoDB需要扫描一遍整个表来计算有多少行,但是MyISAM只要简单的读出保存好的行数即可。注意的是,当count(*)语句包含where条件时MyISAM也需要扫描整个表
七、对于自增长的字段,InnoDB中必须包含只有该字段的索引,但是在MyISAM表中可以和其他字段一起建立联合索引
八、清空整个表时,InnoDB是一行一行的删除,效率非常慢。MyISAM则会重建表
九、InnoDB支持行锁(某些情况下还是锁整表,如 update table set a=1 where user like '%lee%'
通过以上九点区别,结合个人博客的特点,推荐个人博客系统使用MyISAM,因为在博客里主要操作是读取和写入,很少有链式操作。所以选择MyISAM引擎使你博客打开也页面的效率要高于InnoDB引擎的博客,当然只是个人的建议,大多数博客还是根据实际情况下谨慎选择。我的小站目前就使用MyISAM引擎!
上一篇: 在Python的Django框架中为代码添加注释的方法
下一篇: sql 两个字段相减语句
推荐阅读
-
MySQL存储引擎中MyISAM和InnoDB区别详解
-
MySQL学习(七):Innodb存储引擎索引的实现原理详解
-
MySQL两种表存储结构MyISAM和InnoDB的性能比较测试
-
重新学习Mysql数据库7:详解MyIsam与InnoDB引擎的锁实现
-
关于Mysql存储引擎中InnoDB与Myisam的主要区别介绍
-
MySQL存储引擎InnoDB的配置与使用的讲解
-
MySQL存储引擎以及MyISAM与InnoDB的区别详解
-
MyIsam与InnoDB的区别及如何选择使用?
-
mysql 中InnoDB和MyISAM的区别分析小结
-
(MariaDB/MySQL)MyISAM存储引擎读、写操作的优先级