InnoDB与MyISAM存储引擎

存储引擎定义

       存储引擎是指表的类型,在具体开发时为了提高MySQL数据库管理系统的使用效率和灵活性,可以根据实际需要来选择存储引擎。因为存储引擎指定了表的类型,即如何存储和索引数据、是否支持事务等,同时存储引擎也决定了表在计算机的存储方式。

InnoDB 存储引擎

       InnoDB给MySQL的表提供了事务、回滚、崩溃修复能力和多版本并发控制的事务安全,它是MySQL第一个提供外键约束的表引擎,而且InnoDB对事务的处理能力也是MySQL其他存储引擎无法比拟的。

       MySQL 5.6版本之后,除系统数据库之外,默认的存储引擎由MyISAM改为InnoDB,MySQL8.0版本在原先的基础上,将系统数据库的存储引擎也改为了InnoDB。

       InnoDB支持自动增长列AUTO_INCREMENT,支持外键(FOREIGN KRY)。

       查看MySQL数据库管理系统支持的引擎

	SHOW ENGINES

在这里插入图片描述
       DEFAULT表示系统默认支持的存储引擎

MyISAM 存储引擎

       MyISAM 存储引擎是MySQL种最常用的存储引擎,MyISAM 存储引擎是基于ISAM存储引擎发展起来的,MyISAM 增加了许多有用的扩展。

       MyISAM 存储引擎的表存储成三个文件,文件的名字与表名相同,或站名包括fm、MYD和MYI。

       基于MyISAM 存储引擎的表支持三种存储格式,包括静态型、动态型和压缩型。

InnoDB与MyISAM的对比

       InnoDB存储引擎的优势在于提供了良好的事务管理、崩溃修复能力和并发控制:缺点是其读写效率稍差,占用的数据空间相对比较大。

       MyISAM存储引擎的优势在于占用空间小,处理速度快:缺点是不支持事务的完整性和并发性。

特性InnoDBMyISAM
事务安全支持
存储显示64TB
空间使用
内存使用
插入数据速度
锁机制行锁表锁
对外键的支持支持
数据可压缩支持
批量插入速度

       如果对事务的完整性要求比较高,要求实现并发控制,那么选择InnoDB会有很大的优势,如果需要进行频繁的更新、删除的数据库,也可以选择InnoDB。
       如果表主要是用于插入新纪录和读出记录,那么选择MyISAM能实现处理的高效率,如果应用的完整性、并发性要求很低,也可以选择MyISAM。

       修改MySQL的默认存储引擎。

	SET DEFAULT_STORAGE_ENGINE=MYISAM
	SHOW ENGINES

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蒙面侠1024

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值