梅开二度,亦无一度好
欢迎光临一度好
更多>> 数据库
MySQL数据库中存储引擎MyISAM和InnoDB的区别
来源:一度好    发布时间:2017-07-27 16:26:37    访问量:1073
内容简介 MySQL数据库支持多个存储引擎,如MyISAM,MEMORY,InnoDB等,其中比较常用的存储引擎为MyISAM和InnoDB。

1、默认存储引擎:

MySQL从5.5.5版本开始,默认存储引擎为InnoDB。

2、事务处理上:

MyISAM:不支持事务。强调性能,执行速度比InnoDB快。

InnoDB:支持事务。InnoDB的AUTOCOMMIT默认是打开的,即每条SQL语句会默认封装成一个事务,自动提交,这样会影响速度,所以最好把多条SQL语句显示放在begin和commit之间,组成一个事务去提交。

3、锁定上:

MyISAM:支持表锁定,不支持行锁定。即MyISAM同一个表上的读锁和写锁是互斥的,默认写请求的优先级高。

InnoDB:支持行锁定。

4、外键支持上:

MyISAM:不支持外键。

InnoDB:支持外键。

5、全文索引:

MyISAM:支持全文索引。MyISAM的全文索引没啥用,因为它不支持中文分词,必须由使用者分词后加入空格再写到数据表里。

InnoDB:不支持全文索引。

6、count速度:

MyISAM:count()时比InnoDB快的多。因为MyISAM内置了一个计数器,count()时直接从计数器中读。

InnoDB:count()时必须扫描全表。

7、增删改查操作上:

MyISAM:如果执行大量查询操作select,MyISAM是最好的选择。

InnoDB:如果执行大量写操作insert或updata操作,InnoDB是首选。


(编辑:一度好)
标签: MySQL | 存储引擎 | MyISAM | InnoDB
上一篇: 没有了
评论列表
暂时没有相关记录
发表评论
昵 称: *
邮 箱: *
验证码: * captcha 看不清?点击换一张
点击排行榜
首页 / 设为主页 / 加入收藏 / 关于本站 / 友情链接 / WAP版