Mysql存储引擎

存储引擎

#查看mysql现在已提供的存储引擎
SHOW ENGINES;
#查看mysql当前默认的存储引擎
SHOW VARIABLES LIKE '%storage_engine%';

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

MySAM

Mysql 5.5之前默认的存储引擎
MyISAM存储引擎是由MYD(数据文件)和MYI(索引文件)组成

CREATE TABLE `testmysam` (
  `id` varchar(255) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

在这里插入图片描述
适用场景:
非事务型应用(数据仓库,报表,日志数据)
只读类应用
空间类应用(空间函数,坐标)
由于现在 innodb 越来越强大,myisam 已经停止维护
(绝大多数场景都不适合)

InnoDB

Mysql 5.5以后版本默认存储引擎。frm:表结构文件;ibd:表数据和索引的文件。

在这里插入图片描述
Innodb是一种事务性存储引擎
完全支持事务的ACID特性
Redo Log和Undo Log
Innodb支持行级锁(并发程度更高)
在这里插入图片描述

CSV

在这里插入图片描述
以 csv 格式进行数据存储
所有列都不能为 null 的
不支持索引(不适合大表,不适合在线处理)
可以对数据文件直接编辑(保存文本文件内容)

create table mycsv(id int not null,c1 VARCHAR(10) not null,c2 char(10) not null) engine=csv;
insert into mycsv values(1,'aaa','bbb'),(2,'cccc','dddd');
vi /usr/local/mysql/data/mall/mycsv.CSV 修改文本数据
flush TABLES;
select * from mycsv;
create index idx_id on mycsv(id)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Archive

组成
以 zlib 对表数据进行压缩,磁盘 I/O 更少
数据存储在 ARZ 为后缀的文件中
在这里插入图片描述
特点:
只支持 insert 和 select 操作
只允许在自增 ID 列上加索引

Memory

文件系统存储特点
也称 HEAP 存储引擎,所以数据保存在内存中
支持 HASH 索引和 BTree 索引
所有字段都是固定长度 varchar(10) = char(10)
不支持 Blog 和 Text 等大字段
Memory 存储引擎使用表级锁
最大大小由 max_heap_table_size 参数决定
使用场景
hash 索引用于查找或者是映射表(邮编和地区的对应表)
用于保存数据分析中产生的中间表
用于缓存周期性聚合数据的结果表

Ferderated

特点
提供了访问远程MySQL服务器上表的方法
本地不存储数据,数据全部放到远程服务器上
本地需要保存表结构和远程服务器的连接信息
使用场景
偶尔的统计分析及手工查询

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值