常用mysql数据库引擎——MyISAM和InnoDB区别

背景:

昨天做项目时,发现使用事务后回滚不了,后来把数据库引擎从MyISAM换成InnoDB后果断好了,如下图:

正文:

MyISAM和InnoDB是mysql常用的数据库引擎,他们的区别如下:


数据库引擎


适用范围


性能


事务


外键


数据受损恢复


MyISAM


适合频繁查询



×


×


×


InnoDB


适合频繁修改





注:MyISAM是MySQL的ISAM扩展格式和缺省的数据库引擎

参考资料:

MySQL数据库引擎介绍、区别、创建和性能测试的深入分析

http://www.jb51.net/article/38004.htm

时间: 2024-10-17 22:07:16

常用mysql数据库引擎——MyISAM和InnoDB区别的相关文章

mysql数据库引擎 MyISAM和 InnoDB区别

1. 存储结构 MyISAM:每个MyISAM在磁盘上存储成三个文件.第一个文件的名字以表的名字开始,扩展名指出文件类型..frm文件存储表定义.数据文件的扩展名为.MYD (MYData).索引文件的扩展名是.MYI (MYIndex). InnoDB:所有的表都保存在同一个数据文件中(也可能是多个文件,或者是独立的表空间文件),InnoDB表的大小只受限于操作系统文件的大小,一般为2GB. 2. 存储空间 MyISAM:可被压缩,存储空间较小.支持三种不同的存储格式:静态表(默认,但是注意数

mysql数据库引擎myisam和innodb的比较

存储引擎 myisam  innodb,最常用可以配置default-storage-engine=INNODB 配置默认引擎 myisam的这3个在一起  结构,数据,索引(一个表由这3个组成) Engine myisamEngine innodb区别:1.保存文件的方式不同myisam: xxx.frm  结构        xxx.myd  数据    xxx.myi  索引innodb:一个表一个文件        xxx.frm   结构    所以的innodb表,都使用相同的inn

MySQL数据库引擎MyISAM与InnoDB的区别

1. 存储结构 MyISAM:每个MyISAM在磁盘上存储成三个文件.第一个文件的名字以表的名字开始,扩展名指出文件类型..frm文件存储表定义.数据文件的扩展名为.MYD (MYData).索引文件的扩展名是.MYI (MYIndex).InnoDB:所有的表都保存在同一个数据文件中(也可能是多个文件,或者是独立的表空间文件),InnoDB表的大小只受限于操作系统文件的大小,一般为2GB. 2. 存储空间 MyISAM:可被压缩,存储空间较小.支持三种不同的存储格式:静态表(默认,但是注意数据

Mysql存储引擎MyIsAM和InnoDB区别

Mysql 数据库中,最常用的两种引擎是innordb 和myisam.InnoDB 是Mysql 的默认存储引擎. 两者的区别: 1.事务处理上方面MyISAM:强调的是性能,查询的速度比InnoDB 类型更快,但是不提供事务支持.InnoDB:提供事务支持. 2.外键MyISAM:不支持外键, InnoDB:支持外键. 3.锁MyISAM:只支持表级锁, InnoDB:支持行级锁和表级锁,默认是行级锁,行锁大幅度提高了多用户并发操作的性能.innodb 比较适合于插入和更新操作比较多的情况,

MySQL存储引擎MyISAM与InnoDB区别

1.MySql默认存储引擎的变迁 在MySql5.1之前的版本中,默认的搜索引擎是MyISAM,从MySQL5.5之后的版本中,默认的搜索引擎变更为InnoDB. 2.存储结构 MyISAM:每个MyISAM在磁盘上存储成三个文件.第一个文件的名字以表的名字开始,扩展名指出文件类型. .frm文件存储表定义: 数据文件的扩展名为.MYD(MYData): 索引文件的扩展名是.MYI(MYIndex): InnoDB:所有的表都保存在同一个数据文件中(也可能是多个文件,或者是独立的表空间文件),I

MySQL存储引擎 - Myisam和Innodb

Mysql有两种存储引擎:InnoDB与Myisam,下表是两种引擎的简单对比   MyISAM InnoDB 构成上的区别: 每个MyISAM在磁盘上存储成三个文件.第一个 文件的名字以表的名字开始,扩展名指出文件类型..frm文件存储表定义.数据文件的扩 展名为.MYD (MYData).索引文件的扩 展名是.MYI (MYIndex). 基于磁盘的资源是InnoDB表空间数据文件和它的日志文件,InnoDB 表的 大小只受限于操作系统文件的大小,一般为 2GB 事务处理上方面: MyISA

MySQL 储存引擎 MyISAM 和 InnoDB 配置

MySQL 存储引擎 MyISAM 和 InnoDB 配置 MyISAM 和 InnoDB 最大特点: MyISAM : ① 不支持事务 . ② 表级锁定形式 ,数据在更新时锁定整个表 . ③ 不支持外键约束 ,只支持全文索引 . ④ 数据库在读取过程中相互阻塞 . ⑤ 数据单独写入或读取 , 速度较快且占用资源相对要少 . InnoDB: ① 支持事务 . ② 行级锁定 ,但是全表扫描仍然会是表级锁定 . ③ 支持分区.表空间 ,类似Oracle 数据库 . ④ 读写阻塞与事务隔离级别相关 .

MySQL存储引擎MyISAM和InnoDB

MySQL存储引擎MyISAM和InnoDB 存储引擎 在MySQL中的数据拥有各种不同的技术存储文件或内存中.这些技术中的每一种技术都使用不同的存储机制.索引技巧.锁定水平并且最终提供广泛的不用的功能和能力.通过选择不同的技术,能够获得额外的速度或者功能,从而改善应用的整体功能.这些不同的技术以及配套的相关功能在MySQL中被称之为存储引擎. MyISAM存储引擎 MyISAM存储引擎是MySQL关系数据库系统5.5版本之前默认的存储引擎. 特点 1.不支持事务 2.表级锁定形式,数据在更新时

MySQL 数据库中MyISAM 和 InnoDB 的区别

首先要明白,在MySQL数据库忠中的存储引擎是基于表的,而不是基于数据库的. 讲述两者区别: InnoDB 存储引擎,主要面向 OLTP(Online Transaction Processing,在线事务处理)方面的应用,是第一个完整支持 ACID 事务的存储引擎(BDB 第一个支持事务的存储引擎,已经停止开发). 特点: 行锁设计.支持外键: 支持类似于 Oracle 风格的一致性非锁定读(默认情况下读取操作不会产生锁): InnoDB 将数据放在一个逻辑的表空间中,由 InnoDB 自身进