我的编程空间,编程开发者的网络收藏夹
学习永远不晚

翻译5.7手册InnoDB部分第一篇——InnoDB介绍

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

翻译5.7手册InnoDB部分第一篇——InnoDB介绍


1. InnoDB介绍

InnoDB是一个高可靠,高性能的多用途数据库存储引擎。在MySQL5.7中InnoDB是默认使用的存储引擎,当然,你可以配置其它存储引擎,比如没有通过ENGINE设置为InnoDB的建表语句。

InnoDB的关键特性

列举以下重要几点:

  • DML操作在ACID模式下执行(插入,更新,删除操作,要注意的是查询操作有时候也可能认为是DML操作,如select * from table for update),也就是关于事务的提交,回滚,故障恢复。

  • 行级锁和类似Oracle的非锁定读以及多用户的支持。

  • 聚集索引,InnoDB会根据表的主键在数据存储的时候对数据进行排序以减少通过主键查询时的I/O。每一个InnoDB表的主键就是一个聚集索引

  • 在保证数据完整性方面,InnoDB支持外键,有外键存在时,数据在插入,更新和删除的时候都有外键约束。

InnoDB特性

Storage limits

存储限制

64TB

Transactions

事务

Yes

Locking granularity

锁粒度

Row

MVCC

多版本并发控制

Yes

Geospatial data type support

地理坐标数据类型支持

Yes

Geospatial indexing support

坐标索引支持

Yes[a]

B-tree indexes

B-tree 索引

Yes

T-tree indexes

T-tree 索引

No

Hash indexes

哈希索引

No[b]

Full-text search indexes

全文索引

Yes[c]

Clustered indexes

聚集索引

Yes

Data caches

缓存

Yes

Index caches

索引缓存

Yes

Compressed data

压缩功能

Yes[d]

Encrypted data[e]

加密功能

Yes

Cluster database support

集群支持

No

Replication support[f]

复制支持

Yes

Foreign key support

外键支持

Yes

Backup / point-in-time recovery[g]

时间点恢复

Yes

Query cache support

查询缓存支持

Yes

Update statistics for data dictionary

更新静态字典数据

Yes

一些特性说明:

[a] 在MySQL5.7.5以及更高的版本中InnoDB 支持地理位置。

[b] InnoDB 在自适应哈希索引内部使用哈希索引。

[c] 在MySQL 5.6.4 以及更高的版本中InnoDB 支持全文索。

[d] 表压缩功能需要Barracuda 的文件格式

[e] 通过加密函数实现。

[f] 支持,但不是在引擎级别实现。

[g] 支持,但不是在引擎级别实现。.

 

各种存储引擎的对比将在后面的章节中详细列出。

1.1     为什么要选择InnoDB

选择InnoDB的理由如下:

  • 如果你的服务器由于硬件或软件的问题而崩溃,你不用考虑数据库当时发生的事情,也不需要你在数据库重新启动后做任何特殊处理。InnoDB的故障恢复机制会自动帮你完成所有在故障发生前的提交,另外,对没有提交的动作不做任何操作。

  • InnoDB存储引擎对于访问的数据在内存中持有一个缓存表数据和索引的缓存池,用户的一些查询可以从内存中的缓存池中直接返回数据。这种缓存方式适用于很多提高处理速度的场景。在一台专用的数据库服务器上,InnoDB缓存池的内存占用通常都高于总内存的80%。

 

 


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

翻译5.7手册InnoDB部分第一篇——InnoDB介绍

下载Word文档到电脑,方便收藏和打印~

下载Word文档

编程热搜

目录