MySQL —— 存储引擎

概念

  • 数据库存储引擎是数据库底层软件组织,数据库管理系统使用数据引擎进行创建、查询、更新和删除数据
  • 不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,现在许多不同的数据库管理系统都支持多种不同的数据引擎,MySQL的核心就是存储引擎
  • 用户可以根据不同的需求为数据库表选择不同的存储引擎
  • 可以使用show engines命令查看MySQL的所有存储引擎,可以看到默认的存储引擎是innoDB,它支持事务、行级锁和外键

分类

  • MyISAM:MySQL5.5之前的默认数据库引擎,最为常用,拥有较高的插入、查询速度,但不支持事务
  • InnoDB:事务性数据的首选引擎,支持ACID事务,支持行级锁,MySQL5.5成为默认存储引擎
  • Memory:所有数据置于内存的存储引擎,拥有较高的插入、更新和查询效率,但是会占用和数据量成正比的内存空间,并且其内容会在MySQL重新启动时丢失
  • Archive:非常适合存储大量的独立的,作为历史记录的数据,因为它们不经常被读取,Archive拥有高效的插入速度,但对查询的支持相对较差
  • Federated:将不同的MySQL服务器联合起来。逻辑上组成一个完整的数据库,适合分布式应用
功能MyISAMMemoryInnoDB
存储限制256TBRAM64TB
支持事务NONOYES
支持全文索引YESNONO
支持B树索引YESYESYES
支持哈希索引NOYESNO
支持集群索引NONOYES
支持数据索引NOYESYES
支持数据压缩YESNONO
空间使用率N/A
支持外键NONOYES

操作

--查询当前数据库支持的存储引擎
show engines;
--查看当前的默认存储引擎
show variables like '%storage_engine%';
--查看某个表用了什么引擎(在显示结果里参数engine后面的就表示该表当前用的存储引擎)
show create table 表名;
--创建新表时指定存储引擎
create table 表名(...) engine = 存储引擎名;
--修改数据库引擎
alter table 表名 engine = 存储引擎名;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值