mysql--存储引擎

在这里插入图片描述

mysql体系结构

参考:https://www.cnblogs.com/itwxe/p/15826838.html
mysql体系结构:连接层、服务层、引擎层、存储层
在这里插入图片描述
存储引擎就是存储数据、建立索引、更新/查询数据等技术的实现方式。存储引擎是基于表的,而不是基于库的,索引存储引擎也可以被称为表类型。
一个数据库的多张表可以有不同的存储引擎!

查询某个表的建表语句:

show create table t_user

在这里插入图片描述
NGINE=InnoDB(看到默认是InnoDB)

查询当前数据库所支持的引擎:

show ENGINES

在这里插入图片描述

innodb

介绍:
innodb是一种兼顾高可靠和高性能的通用存储引擎,在mysql5.5之后,innodb是默认的mysql存储引擎。
特点:
1、DML(数据增、删、改语句)操作遵循ACID(事务的四大特性)模型,支持事务
2、行级锁,提高并发访问性能;
3、支持外键FOREIGN KEY约束,保证数据的完整性和正确性;

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

innoDB逻辑存储结构

参考:https://blog.csdn.net/weixin_52690231/article/details/123547614
在这里插入图片描述

MyISAM 存储引擎

是mysql早期的默认存储引擎
特点:
不支持事务,不支持外键
支持表锁,不支持行锁
访问速度快

memory 存储引擎

memory引擎的表数据时存储在内存

在这里插入图片描述

选择:

MyISAM存储引擎
  如果表对事务要求不高,同时是以查询和添加为主的,我们考虑使用myisam存储引擎. 比如 bbs 中的 发帖表,回复表。

INNODB存储引擎:
  对事务要求高,保存的数据都是重要数据,我们建议使用INNODB,比如订单表,账号表。

Memory 存储
  我们数据变化频繁,不需要入库,同时又频繁的查询和修改,我们考虑使用memory, 速度极快。

现在用的最多的是innodb引擎,其他两个都被代替了,myisam被mongodb代替,memory被redis代替

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值