Mysql性能优化 - 存储引擎

Mysql性能优化 - 存储引擎

存储引擎介绍

  1. 插拔式的插件方式
  2. 存储引擎是指定在表上的。每一张表都可以指定专用的存储引擎
  3. 不管采用何种存储引擎都会在数据区,产生对应的frm (表结构定义文件)

几大存储引擎概述

CSV存储引擎

数据以CSV文件存储

  1. 不能定义索引,列必须定义为NOT NULL,不能设置自增列,不适用大表或者数据的在线处理
  2. CSV数据使用“,”隔开,可直接编辑CSV文件进行数据的编排,在通过flush table XXX命令使其生效,数据安全性较低

应用场景

  1. 数据的快速导入导出
  2. 表格数据直接转换为CSV
Archive存储引擎

压缩协议进行数据的存储,数据存储为ARZ文件格式

  1. 只支持insert和select两种操作
  2. 只允许自增ID列建立索引
  3. 行级锁
  4. 不支持事务
  5. 数据占用磁盘少

应用场景

  1. 日志的存储

  2. 大量设备的数据采集

Memory存储引擎

数据保存在内存中,IO效率比其他引擎高的多,服务重启数据丢失,内存数据表默认只有16M

  1. 支持hash索引,B tree索引,默认hash
  2. 字段长度都是固定长度varchar(32)= char(32)
  3. 不支持大数据存储格式,如blog,text
  4. 表级锁

应用场景

  1. 等值查找热度较高的数据
  2. 查询结果内存中的计算,大多数都是采用这种存储引擎作为临时表存储需要计算的数据
Myisam存储引擎

mysql 5.5版本之前的默认存储引擎,较多的系统表也还是在使用这个存储引擎,系统临时表也会用到

  1. 有专门的区域保存数据表中数据的条数,select count无需进行数据扫描
  2. 数据(MYD)和索引(MYI)分开存储
  3. 表级锁
  4. 不支持事务
Innodb存储引擎

mysql 5.5及之后版本的默认存储引擎

  1. 事务ACID
  2. 行级别锁
  3. 聚集索引(主键索引)方式进行数据存储
  4. 支持外键关系保证数据完整性

几大存储引擎对比

image-20200811085051886

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值