Linux中MySQL数据库的使用⑥-----存储引擎

存储引擎

一、 查看当前的存储引擎

show variables like '%storage_engine';
show engines;

二、 MySQL常用的存储引擎

功能MYISAMMemoryInnoDBArchive
存储限制256TBRAM64TBNone
支持事务NoNoYesNo
支持全文索引YesNoNoNo
支持数索引YesYesYesNo
支持哈希索引NoYesNoNo
支持数据缓存NoN/AYesNo
支持外键NoNoYesNo

1.InnoDB
事务型数据库的首选引擎,支持事务安全表(ACID),支持行锁定和外键,InnoDB是默认的MySQL引擎。
2.MyISAM
MyISAM基于ISAM存储引擎,并对其进行扩展。它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。MyISAM拥有极高的插入、查询速度,但不支持事务。
3.MEMORY
MEMORY存储引擎将表中的数据存储到内存中,为查询和引用其他表数据提供快速访问。
存储引擎的选择
对插入和并发性能要求较高的,或者需要外键,或者需要事务支持的情况下,需要选择InnoDB。插入较少,查询较多的场景,优先考虑MyISAM。

三、 使用引擎
一般在建表时添加

create table test(
    name varchar(10)
)engine=MyISAM charset=utf8;

create table test_1(
    name varchar(10)
)engine=InnoDB charset=utf8;

四、 InnoDB和MyISAM的文件方面的区别
1.InnoDB将一张表存储为两个文件

  • demo.frm -> 存储表的结构和索引
  • demo.ibd -> 存储数据。ibd存储是有限的,存储不足自动创建ibd1,ibd2
    InnoDB的文件创建在对应的数据库中,不能任意的移动

2.MyISAM将一张表存储为三个文件

  • demo.frm -> 存储表的结构
  • demo.MYD -> 存储数据
  • demo.MYI -> 存储表的索引
    MyISAM的文件可以任意的移动
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天意不可违.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值