第六章 存储引擎MyISAM和InnoDB

存储引擎

概念

  • 数据库存储引擎是数据库底层组件,数据库管理系统使用数据引擎进行创建、查询、更新和删除数据操作。
  • 不同的存储引擎提供不同的存储机制、索引功能、锁定水平等功能,使用不同的存储引擎还可以获得特定的功能。
  • 存储引擎是针对数据表的,在同一个数据库中,不同的表可以使用不同的存储引擎。

类型

功能

MylSAM

MEMORY

InnoDB

存储限制

256TB

内存

64TB

支持事务

No

No

Yes

支持全文索引

Yes

No

No

支持树索引

Yes

Yes

Yes

支持哈希索引

No

Yes

No

支持数据缓存

No

N/A

Yes

支持外键

No

No

Yes

  • InnoDB:行级锁定(select * from tableName where name = 'tom' for update;)锁定该表的更新功能
  • MyISAM:表级锁定

数据库实例

MylSAM

.frm、.MYD、MYI文件,这些文件都是MyISAM存储引擎生成的

[root@localhost ~]# cd /usr/local/mysql/data/mysql
[root@localhost mysql]# ls
user.frm
user.MYD
user.MYI
  • .frm
    • 数据表结构,比如表有多少列,每个列的名字
  • .MYD
    • 存放表中数据
  • .MYI
    • 专门存放索引的信息的文件

InnoDB

.frm和.ibd文件,这些文件都是MyISAM存储引擎生成的。

[root@localhost ~]# cd /usr/local/mysql/data/auth
[root@localhost auth]# ls
db.opt  users.frm  users.ibd
  • .frm
    • 存放数据表的元数据
  • .ibd
    • 和MyISAM的.MYD文件类似,存放数据表中的数据
  • .opt
    • 存放MySQL的配置信息

查看指定表的存储引擎类型

登录进MySQL,使用下方代码块内的show命令查看指定库指定表的状态信息

  • Engine: InnoDB:该表使用的存储引擎
  • Create_time:创建该表的时间
  • Collation: utf8_general_ci:校对字符集
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值