
存储引擎就是存储数据,建立索引,更新,查询数据等技术的实现方式。
存储引擎是基于表的,而不是基于库的,所以存储引擎也被称为表类型。
show engines;
create table my_memory(
id int,
name varchar(10)
)engine = 存储引擎;
InnoDB

InnoDB是一种兼顾可靠性和高性能的通用存储引擎,在MySQL5.5之后,InnoDB是默认的MySQL存储引擎
DML操作遵循ACID模型,支持事务
行级锁,提高并发访问性能
支持外键FOREIGN KEY约束,保证数据的完整性和正确性
🤖格式
XXX.ibd :XXX代表的是表名
InnoDB引擎的每张表都会对应这样的一个表文件,存储该表的表结构(frm,sdi),数据和索引。
🤖参数
innodb_file_per_table
注意!!!
要在ProgramDate里面查看InnoDB文件,但是ProgramDate是
隐藏文件

我们需要

找到自己的数据库的存储位置

就会发现下面有.ibd文件

.ibd文件是二进制文件,不能使用记事本打开,那么应该如何查看.ibd文件呢
🏳️🌈使用命令来查看
在当前目录下面输入cmd,进入命令行模式

输入命令

ibd2sdi表示从ibd文件里面提取sdi表结构数据
可以看到文件里面是表结构的


MyISAM是MySQL早期的默认存储引擎
不支持事务,不支持外键
支持表锁,不支持行锁
访问速度快
xxx.sdi:存储表结构信息
xxx.MYD:存储数据
xxx.MYI:存储索引
Memory引擎的表数据是存储在内存中的,由于受到硬件问题,或者断电问题的影响,只能将这些表作为临时表或缓存使用
内存存放
默认使用hash索引
xxx.sdi:存储表结构信息


🥰如果大家有不明白的地方,或者文章有问题,欢迎大家在评论区讨论,指正🥰
我正在参与 腾讯云开发者社区数据库专题有奖征文。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。