mysql数据库引擎m_MySQL中的两种数据库引擎

本文介绍了MySQL中的两种主要数据库引擎——MyISAM和InnoDB。MyISAM以其高性能和丰富的功能如全文索引著称,但不支持事务和行级锁,数据崩溃后无法恢复。相反,InnoDB从MySQL5.5开始成为默认引擎,它支持事务、行级锁和数据库崩溃后的恢复,但不支持全文索引。在选择数据库引擎时,需要权衡事务处理、并发性和恢复能力等因素。
摘要由CSDN通过智能技术生成

MySQL数据库有多个可以选择的数据库引擎,这里重点介绍MyISAM和InnoDB

1、MyISAM

(1)MyISAM是MySQL 5.5之前版本的默认数据库引擎,是在早期的ISAM(Indexed Sequential Access Method:有索引的顺序访问方法)的基础上改进得到的。

(2)特点:

优点:性能极佳,提供了全文索引、压缩、空间函数等功能

缺点:不支持事务和行级锁,最大的问题在于数据库崩溃后无法恢复

2、InnoDB

(1)InnoDB是MySQL 5.5之后版本的默认数据库引擎,与ISAM和MyISAM相比,最大的优势和好处就是增加了数据库事务功能。

(2)特点:

优点:支持事务和行级锁,支持数据库崩溃后的恢复

缺点:不支持全文索引

3、两种数据库引擎的比较

(1)支持的锁粒度:MyISAM支持表级锁,不支持行级锁。InnoDB支持行级锁,所以可以提供更高的并发性。

(2)是否支持事务:MyISAM不支持事务,InnoDB支持事务操作

(3)数据库崩溃后是否可恢复:MyISAM不可恢复,而InnoDB在数据库崩溃后可以恢复。

(4)是否支持外键:MyISAM不支持外键,而InnoDB支持外键。

(5)是否支持全文索引:MyISAM支持全文索引,所以性能较好;而InnoDB不支持全文索引。

4、补充:行级锁和表级锁

行级锁:

每次操作锁住一行数据。开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高;

表级锁:

每次操作锁住整张表。开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低;

原文:https://www.cnblogs.com/xwwbb/p/11084699.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值