存储引擎InnoDB

InnoDB是MySQL数据库的默认存储引擎,提供事务处理和行级锁定。它支持ACID属性,确保数据一致性,并允许外键约束以维护数据完整性。每个InnoDB表都有对应的.ibd文件,用于存储表结构、数据和索引。然而,表空间中的空隙可能影响性能,尤其在大量删除操作后。InnoDB允许通过innDB_file_per_table参数来独立管理每个表的空间文件,但混合存储可能导致空间利用率不高。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

存储引擎InnoDB
介绍
InnoDB是一种兼顾可靠性和高性能的通用存储引擎,在MySQL5.5之后,InnoDB是默认的
存储引擎。

特点
DML(增删改)操作遵循ACID(事务的四大特性)模型,支持事务
行级锁,提高并发访问性能;
支持外键 FOREIGN KEY 约束,保证数据的完整性和正确性;

文件
xxx.ibd:xxx代表的是表名,innoDB引擎的每张表都会对应一个表空间文件,存储该表的
表结构(frm,sdi),数据和索引。
参数:innDB_file_per_table

优点:可以将表空间分成多个文件存放到各个磁盘上(表空间文件大小不受表大小的限制,如一个表可以分布在不同的文件上)
。数据和文件放在一起方便管理。
缺点:所有的数据和索引存放到一个文件中,虽然可以把一个大文件分成多个小文件,但是多个
表及索引在表空间中混合存储,这样对于一个表做了大量删除操作后表空间中将会有大量的空隙,
特别是对于统计分析,日值系统这类应用最不适合用共享表空间。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值