MySQL有多种存储引擎:MyISAM、InnoDB、MERGE、MEMORY(HEAP)、BDB(BerkeleyDB)、EXAMPLE、FEDERATED、ARCHIVE、CSV、BLACKHOLE。可以在MySQL的操作界面上输入 ' SHOW ENGINES;'对本机的MySQL 所支持的引擎进行查询.
1 . MyISAM : 管理非事务表。
它提供高速存储和检索,以及全文搜索能力。MyISAM在所有MySQL配置里被支持,它是默认的存储引擎,除非你配置MySQL默认使用另外一个引擎。
2 . InnoDB和BDB存储引擎 : 提供事务安全表。
BDB被包含在为支持它的操作系统发布的MySQL-Max二进制分发版里。InnoDB也默认被包括在所 有MySQL 5.1二进制分发版里,你可以按照喜好通过配置MySQL来允许或禁止任一引擎。
3 . MEMORY存储引擎 ' 提供“内存中”表。
MERGE存储引擎允许集合将被处理同样的MyISAM表作为一个单独的表。就像MyISAM一样,MEMORY和MERGE存储引擎处理非事务表,这两个引擎也都被默认包含在MySQL中。
4 . EXAMPLE存储引擎 : 一个“存根”引擎,它不做什么。
你可以用这个引擎创建表,但没有数据被存储于其中或从其中检索。这个引擎的目的是服务,在 MySQL源代码中的一个例子,它演示说明如何开始编写新存储引擎。同样,它的主要兴趣是对开发者
5 . NDB Cluster是被MySQL Cluster用来实现分割到多台计算机上的表的存储引擎。它在MySQL-Max 5.1二进制分发版里提供
6 . ARCHIVE存储引擎被用来无索引地,非常小地覆盖存储的大量数据。
7 . CSV存储引擎把数据以逗号分隔的格式存储在文本文件中。
8 . BLACKHOLE存储引擎接受但不存储数据,并且检索总是返回一个空集。
9 . FEDERATED存储引擎 : 把数据存在远程数据库中。
在MySQL 5.1中,它只和MySQL一起工作,使用MySQL C Client API。在分发中,我们想要让它使用其它驱动器或客户端连接方法连接到另外的数据源。
当你创建一个新表的时候,你可以通过添加一个ENGINE 或TYPE 选项到CREATE TABLE语句来告诉MySQL你要创建什么类型的表: CREATE TABLE students (id int(11) NOT NULL PREMARY KEY AUTO_INCREMENT , name char(8) NOT NULL , grade char(2) ) ENGINE = INNODB;
在开发应用当中:
MyISAM是默认的MySQL插件式存储引擎,它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。注意,通过更改STORAGE_ENGINE配置变量,能够方便地更改MySQL服务器的默认存储引擎。
InnoDB:用于事务处理应用程序,具有众多特性,包括ACID事务支持。
BDB:可替代InnoDB的事务引擎,支持COMMIT、ROLLBACK和其他事务特性。
Memory:将所有数据保存在RAM中,在需要快速查找引用和其他类似数据的环境下,可提供极快的访问。
Merge:允许MySQL DBA或开发人员将一系列等同的MyISAM表以逻辑方式组合在一起,并作为1个对象引用它们。对于诸如数据仓储等VLDB环境十分适合。
Archive:为大量很少引用的历史、归档、或安全审计信息的存储和检索提供了完美的解决方案。Federated:能够将多个分离的MySQL服务器链接起来,从多个物理服务器创建一个逻辑数据库。十分适合于分布式环境或数据集市环境。
Cluster/NDB:MySQL的簇式数据库引擎,尤其适合于具有高性能查找要求的应用程序,这类查找需求还要求具有最高的正常工作时间和可用性。
其他存储引擎包括CSV(引用由逗号隔开的用作数据库表的文件),Blackhole(用于临时禁止对数据库的应用程序输入),以及Example引擎(可为快速创建定制的插件式存储引擎提供帮助)。
注意 : 对于整个服务器或方案,你并不一定要使用相同的存储引擎,你可以为方案中的每个表使用不同的存储引擎,这点很重要。
官方介绍:http://dev.mysql.com/doc/refman/5.1/zh/storage-engines.html
分享到:
相关推荐
动力节点的杜老师讲述的mysql教程,详细讲解了MySQL的相关知识,包括MySQL概述,MySQL应用环境,MySQL系统特性,MySQL初学基础,MySQL管理工具,如何安装MySQL及MySQL新特性,通过观看可掌握MySQL全套知识。
最后,尽管MyISAM和InnoDB是最常用的存储引擎,用户也不应忽视MySQL提供的其他存储引擎。如MEMORY存储引擎适合用于创建临时表,MERGE存储引擎适用于多个MyISAM表合并成为一个表,NDB存储引擎则适用于构建分布式...
InnoDB作为MySQL中最常用且最重要的存储引擎,负责处理事务处理、数据完整性以及并发控制等关键任务,因此对它的深入理解对于数据库管理员和开发者至关重要。 InnoDB存储引擎是MySQL中的默认存储引擎,特别适合需要...
其中,InnoDB作为MySQL中最常用的存储引擎之一,提供了众多高级特性,如事务支持、行级锁定以及外键约束等。本文将详细介绍如何在MySQL中启用InnoDB存储引擎,并对比分析InnoDB与其他存储引擎(如MyISAM)之间的主要...
MySQL存储引擎是数据库管理系统的核心组件,它决定了数据的存储方式、事务处理机制以及查询效率等方面。本篇文章将详细解析MySQL中的几种常见存储引擎,包括它们的功能、用途和操作注意事项。 首先,MySQL的存储...
接下来,我们将详细介绍几种常用的MySQL存储引擎: - **MyISAM**:这是MySQL的默认存储引擎之一,适用于Web应用和数据仓库环境。MyISAM不支持事务处理,但它提供了较快的读写速度,非常适合于读多写少的应用场景。 ...
本文将深入探讨 MySQL 数据库中常用的存储引擎,包括 InnoDB、MyISAM、Memory(HEAP)和 Archive 等。 一、InnoDB 存储引擎 InnoDB 是 MySQL 的默认存储引擎,它提供了强大的事务处理、行级锁定和外键约束功能。...
MySQL存储引擎是数据库管理系统的核心组成部分,负责数据的存储和访问方式。MySQL系统由多个组件构成,包括管理工具、连接池、SQL接口、分析器、优化器、缓存、存储引擎和硬盘。其中,存储引擎是专门处理表数据的...
它是MySQL早期版本中最常用的存储引擎之一,尤其适用于读取密集型的应用环境。 **2.2 特性与优势** - **大文件支持**:支持大文件(64位文件长度),在支持大文件的文件系统和操作系统上可以实现高效的存储。 - **...
本篇文章将详细探讨两种最常用的存储引擎——InnoDB和MYISAM,以及如何在MySQL中查看这两种存储引擎的使用情况。 ### 1. InnoDB存储引擎 InnoDB是MySQL的默认存储引擎,它提供了事务处理、行级锁定以及外键约束等...
总的来说,MySQL的四种常用存储引擎各有优劣,开发者应根据具体需求选择最合适的引擎,以达到最佳的性能和数据管理效果。在设计数据库时,充分了解这些存储引擎的特性,将有助于构建更稳定、高效的数据库系统。
### MySQL存储引擎配置与SQL查询 #### 一、MySQL存储引擎的配置 在MySQL数据库管理系统中,存储引擎是用于组织和管理数据的方式。不同的存储引擎提供了不同的特性,例如事务处理能力、索引类型等。因此,了解如何...
InnoDB存储引擎是MySQL中最常用的存储引擎之一,特别是在需要进行事务处理的场景中。它的设计理念包括了事务支持、行级锁定和外键约束等特性,这使得它在处理高并发更新请求、保证数据的完整性和一致性方面表现突出...
InnoDB是MySQL中最常用的存储引擎,它提供了ACID(原子性、一致性、隔离性、持久性)事务支持。在源码中,你会看到InnoDB如何通过redo log、undo log来保证事务的持久性和回滚操作。此外,InnoDB还使用了B+树索引来...
MySQL是世界上最受欢迎的开源数据库系统之一,而InnoDB存储引擎是其最常用的核心组件,尤其在处理事务性和ACID(原子性、一致性、隔离性、持久性)需求方面。本资料包包含三本关于MySQL和InnoDB的重要书籍,分别是...
InnoDB 存储引擎是 MySQL 数据库中最常用的存储引擎之一,它是由瑞典公司 InnoDB AB 开发的。InnoDB 存储引擎的发展历程充满了曲折和艰辛,但同时也充满了成功和辉煌。在 20 世纪 90 年代中期,InnoDB 存储引擎还...
**InnoDB** 是MySQL中最常用且功能强大的存储引擎之一,它支持以下特性: - **事务处理**:InnoDB 支持完整的ACID事务特性,确保了数据操作的一致性和完整性。 - **行级锁定**:InnoDB 使用行级锁定机制,这意味着...