• ADADADADAD

    翻译5.7手册InnoDB部分第一篇——InnoDB介绍[ mysql数据库 ]

    mysql数据库 时间:2024-12-03 12:13:58

    作者:文/会员上传

    简介:

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

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。


    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%。


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

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: innodbd