`
gaojingsong
  • 浏览: 1211215 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

【MySQL多种存储引擎】

阅读更多

1、MySQL多种存储引擎:

MyISAM、InnoDB、MERGE、MEMORY(HEAP)、BDB(BerkeleyDB)、EXAMPLE、FEDERATED、ARCHIVE、CSV、BLACKHOLE。

 

MySQL支持数个存储引擎作为对不同表的类型的处理器。MySQL存储引擎包括处理事务安全表的引擎和处理非事务安全表的引擎:

MyISAM管理非事务表。它提供高速存储和检索,以及全文搜索能力。MyISAM在所有MySQL配置里被支持,它是默认的MySQL存储引擎,除非你配置MySQL默认使用另外一个引擎。

MEMORY存储引擎提供“内存中”表。MERGE存储引擎允许集合将被处理同样的MyISAM表作为一个单独的表。就像MyISAM一样,MEMORY和MERGE存储引擎处理非事务表,这两个引擎也都被默认包含在MySQL中。

注释:MEMORY存储引擎正式地被确定为HEAP引擎。

InnoDB和BDB存储引擎提供事务安全表。BDB被包含在为支持它的操作系统发布的MySQL-Max二进制分发版里。InnoDB也默认被包括在所 有MySQL 5.1二进制分发版里,你可以按照喜好通过配置MySQL来允许或禁止任一引擎。

EXAMPLE存储引擎是一个“存根”引擎,它不做什么。你可以用这个引擎创建表,但没有数据被存储于其中或从其中检索。这个引擎的目的是服务,在 MySQL源代码中的一个例子,它演示说明如何开始编写新存储引擎。同样,它的主要兴趣是对开发者。

NDB Cluster是被MySQL Cluster用来实现分割到多台计算机上的表的存储引擎。它在MySQL-Max 5.1二进制分发版里提供。这个存储引擎当前只被Linux, Solaris, 和Mac OS X 支持。在未来的MySQL分发版中,我们想要添加其它平台对这个引擎的支持,包括Windows。

ARCHIVE存储引擎被用来无索引地,非常小地覆盖存储的大量数据。

CSV存储引擎把数据以逗号分隔的格式存储在文本文件中。

BLACKHOLE存储引擎接受但不存储数据,并且检索总是返回一个空集。

FEDERATED存储引擎把数据存在远程数据库中。在MySQL 5.1中,它只和MySQL一起工作,使用MySQL C Client API。在未来的分发版中,我们想要让它使用其它驱动器或客户端连接方法连接到另外的数据源。

当你创建一个新表的时候,你可以通过添加一个ENGINE 或TYPE 选项到CREATE TABLE语句来告诉MySQL你要创建什么类型的表:

 

CREATE TABLE t (i INT) ENGINE = INNODB;  CREATE TABLE t (i INT) TYPE = MEMORY; 

 

TYPE仍然在MySQL 5.1中被支持,现在ENGINE是首选的术语。

 

2.如何选择最适合你的存储引擎呢?

下述存储引擎是最常用的:

MyISAM:默认的MySQL插件式存储引擎,它是在Web、数据仓储和其他应用环境下最常使用的MySQL存储引擎之一。注意,通过更改STORAGE_ENGINE配置变量,能够方便地更改MySQL服务器的默认存储引擎。

InnoDB:用于事务处理应用程序,具有众多特性,包括ACID事务支持。

BDB:可替代InnoDB的事务引擎,支持COMMIT、ROLLBACK和其他事务特性。

Memory:将所有数据保存在RAM中,在需要快速查找引用和其他类似数据的环境下,可提供极快的访问。

Merge:允许MySQL DBA或开发人员将一系列等同的MyISAM表以逻辑方式组合在一起,并作为1个对象引用它们。对于诸如数据仓储等VLDB环境十分适合。

Archive:为大量很少引用的历史、归档、或安全审计信息的存储和检索提供了完美的解决方案。

Federated:能够将多个分离的MySQL服务器链接起来,从多个物理服务器创建一个逻辑数据库。十分适合于分布式环境或数据集市环境。

Cluster/NDB:MySQL的簇式数据库引擎,尤其适合于具有高性能查找要求的应用程序,这类查找需求还要求具有最高的正常工作时间和可用性。

Other:其他存储引擎包括CSV(引用由逗号隔开的用作数据库表的文件),Blackhole(用于临时禁止对数据库的应用程序输入),以及Example引擎(可为快速创建定制的插件式存储引擎提供帮助)。

0
1
分享到:
评论

相关推荐

    mysql-存储引擎-实验四.docx

    实验中涉及到多种存储引擎,包括 MyISAM 和 InnoDB,考察它们的相同点和区别,并对它们的特点进行了详细的分析。 一、实验目的 实验的主要目的是熟悉 MySQL 存储引擎的概念,掌握 MySQL 存储引擎的设置和特点,并...

    MySQL存储引擎简介

    在众多数据库系统中,MySQL独树一帜,提供了多种存储引擎供用户选择,使得开发者可以根据应用程序的具体需求选择最合适的存储引擎。这些存储引擎,例如MyISAM、InnoDB、BDB、MEMORY等,各有其特定的特性与适用场景,...

    mysql存储引擎介绍

    MySQL 提供了多种存储引擎,每种引擎都有其特点和优缺。了解 MySQL 存储引擎的特点和优缺是非常重要的,因为它们直接影响着数据库的性能和稳定性。 MyISAM 存储引擎 MyISAM 存储引擎是 MySQL 的默认存储引擎之一...

    MySQL数据库:MySQL存储引擎.pptx

    而MySQL数据库提供了多种存储引擎,用户可以根据不同的需求为数据表选择不同的存储引擎,用户也可以根据自己的需要编写自己的存储引擎,MySQL的核心就是存储引擎。 ;MySQL 5.7支持的存储引擎有:InnoDB、MyISAM、...

    MySQL数据库存储引擎探析.docx

    MySQL 数据库存储引擎是 MySQL 数据库中的一种重要组件,它提供了多种存储引擎,每种引擎都有其独特的特性和适用场景。了解每种存储引擎的特性和优缺点有助于大家做出更合适的选择,从而提高数据库的性能和可靠性。

    MySQL存储引擎学习

    MySQL支持多种存储引擎,如InnoDB、MyISAM、BDB、MEMORY、MERGE、EXAMPLE、NDB Cluster、ARCHIVE、CSV、BLACKHOLE、FEDERATED等。 InnoDB是MySQL5.5之后的默认存储引擎,提供了具有提交、回滚和崩溃恢复能力的事务...

    Oracle与MySQL存储引擎深度对比及实践指南

    而MySQL通过支持多种存储引擎,为不同的应用场景提供了灵活性。开发者应根据应用的具体需求选择合适的存储引擎,以实现最佳性能和数据管理。通过理解这些差异并合理选择存储引擎,可以充分发挥这两种数据库系统的...

    MySQL存储引擎解析.doc

    MySQL提供了多种存储引擎,常见的如MyISAM和InnoDB。MyISAM是早期常用的引擎,它支持表级锁定,这意味着在执行更新或插入操作时,整个表会被锁定,导致其他读写操作必须等待。因此,MyISAM不适用于高并发的读写场景...

    mysql存储引擎比较

    MySQL支持多种存储引擎,每种存储引擎都有其独特的特性和适用场景。本文将详细介绍两种最常见的存储引擎——MyISAM和InnoDB,并对比它们的特性、优势以及适用场景。 #### 二、MyISAM存储引擎 **2.1 MyISAM简介** ...

    MySQL课程之MySQL存储引擎入门

    MySQL是世界上最流行的关系型数据库管理系统之一,其强大的功能和灵活性主要得益于它支持多种存储引擎。在MySQL课程中,深入理解存储引擎是至关重要的,因为不同的存储引擎有着不同的特性和适用场景,这直接影响到...

    mysql插件式存储引擎体系结构

    3. **灵活性**:MySQL允许在同一服务器或方案中使用多种不同的存储引擎,这意味着可以在不同表之间使用最适合的存储引擎来满足特定的需求。 #### 三、存储引擎的关键组件 在讨论存储引擎的具体实现之前,我们先来...

    第6章MySQL存储引擎与数据库.docx

    MySQL存储引擎是数据库管理系统的核心组件,它决定了数据如何在MySQL中存储、检索和管理。不同的存储引擎具有不同的特性和用途,以适应各种应用场景。在MySQL中,存储引擎主要负责数据的物理存储方式、事务处理、...

    Mysql 表类型(存储引擎)

    MySQL数据库系统支持多种表类型,也称为存储引擎。这些存储引擎各具特色,适用于不同的应用场景,从而满足用户在性能、可扩展性、事务安全性等方面的需求。以下是对MySQL中几种主要表类型的详细介绍: 1. **InnoDB*...

    mysql架构与存储引擎(MySQL逻辑架构、InnoDB引擎、MyISAM引擎、存储引擎选择).docx

    MySQL支持多种存储引擎,可以通过以下命令查看当前MySQL版本和支持的存储引擎: ```sql SELECT VERSION(); SHOW ENGINES; ``` 在MySQL 5.7版本中,默认存储引擎为InnoDB,支持事务、行级锁等功能,非常适合事务密集...

    MySql的存储引擎.doc

    MySQL支持多种存储引擎,每种引擎都有其特定的优势和适用场景。例如: 1. MyISAM是MySQL最早提供的引擎,分为静态、动态和压缩三种。静态MyISAM适合于数据列长度固定的表,具有较高的存取效率和易于恢复的优点,但...

    MySQL之存储引擎

    MySQL支持多种存储引擎,每种引擎都有其特定的优势和适用场景。以下是对几个主要存储引擎的详细介绍: 1. **MyISAM**:这是MySQL的默认存储引擎(在某些旧版本中),它不支持事务处理和外键,但读取速度很快,适合...

    可插式存储引擎MySQL走向企业级保障

    MySQL 的存储引擎分为多种,每种都有特定的适用场景。例如: 1. **MyISAM**:作为默认的存储引擎,MyISAM 适合于读取密集型应用,提供全文索引和支持表级锁定。然而,它不支持事务处理,对于需要高并发写入和事务...

Global site tag (gtag.js) - Google Analytics