Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1143362
  • 博文数量: 286
  • 博客积分: 3124
  • 博客等级: 中校
  • 技术积分: 5186
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-24 23:42
个人简介

Bomi

文章存档

2015年(1)

2013年(1)

2012年(281)

2008年(3)

分类: 数据库开发技术

2012-02-05 02:01:27

1. MySQL存储引擎概述

1.1 存储引擎的概念

简单的说,存储引擎可以理解为表的类型,不同的表类型有着不同的优点和缺点。和其他数据库相比,这是 MySQL 所独有的特性。 MySQL 使用插件式存储引擎体系结构,这种体系结构提供了一套标准的管理和支持服务体系,可以方便地对存储引擎加载和卸载。存储引擎本身是数据库服务器的组件,负责对物理服务器层面上的基本数据进行维护和实际操作。

1.2 存储引擎的分类和特点 MySQL 支持多种存储引擎,目前的存储引擎有 MyISAM 、 InnoDB 、 BDB 、 Memory 、 Merge 、Archive 、 Federated 、 BLACKHOLE 、 Cluster/NDB 、 CSV 、 Example 等。其中,InnoDB 、 NDB 、 BDB 支持事务,其他存储引擎都不支持事务。 


其中, MyISAM 和 InnoDB 是最常用的两种存储引擎。在 UNIX 平台上 ,MyISAM 是 MySQL的默认存储引擎;而在 Windows 平台上, InnoDB则是默认的存储引擎。当创建新表时,如果未显式指定存储引擎,则使用默认存储引擎来进行创建。

下面对最常用的一些存储引擎的主要特点进行简单的介绍: 


  • MyISAM :使用最广泛的存储引擎,存取速度快,但不支持事务。
  • InnoDB :事务应用的首选存储引擎,并发性高,支持包括 ACID 事务在内的诸多事务特性。
  • Memory :将所有数据保存在内存中,在需要快速查找引用和其他类似数据的环境下,可提供极快的访问。
  • Merge :可以将多个 MyISAM 表透明地进行联合查询。
  • NDB Cluster :是在 MySQL 集群环境中使用的存储引擎,支持事务。
  • Archive :是在 mysql4.1.3 中新加的表类型,用很小的空间来存储不带索引的大量数据, Archive 引擎仅支持 INSERT 和 SELECT 操作,不支持 DELETE 、 UPDATE 操作。
  • BDB : 支持事务,允许 COMMIT 和 ROLLBACK 。在 MySQL 5.1.12 版本中, MySQL 将把 Berkeley DB(BDB) 存储引擎移出所支持的数据库引擎列表。
其中最常用的一些存储引擎的更详细的特点,可以参考下表: 
                                             
       特点 
     
      MyISAM 
     
       InnoDB
     
      MEMORY 
     
      MERGE 
     
      NDB 
     
       存储限制 
     
       有 
     
       64TB 
     
       有 
     
       没有 
     
       有 
     
       事务安全 
     
     
       支持 
     
     
     
       支持 
     
       锁机制 
     
       表锁 
     
       行锁 
     
       表锁 
     
       表锁 
     
       行锁 
     
       B 树索引 
     
       支持 
     
       支持 
     
       支持 
     
       支持 
     
       支持 
     
       哈希索引 
     
     
     
       支持 
     
     
       支持 
     
       全文索引 
     
       支持 
     
     
     
     
     
       集群索引 
     
     
       支持 
     
     
     
     
       数据缓存 
     
     
       支持 
     
       支持 
     
     
       支持 
     
       索引缓存 
     
       支持 
     
       支持 
     
       支持 
     
       支持 
     
       支持 
     
       数据可压缩 
     
       支持 
     
     
     
     
     
       空间使用 
     
       低 
     
       高 
     
       N/A 
     
       低 
     
       低 
     
       内存使用 
     
       低 
     
       高 
     
       中等 
     
       低 
     
       高 
     
       批量插入的速度 
     
       高 
     
       低 
     
       高 
     
       高 
     
       高 
     
       支持外键 
     
     
       支持 
     
     
     
     


[ 本帖最后由 云杉上的蝴蝶 于 2008-12-4 07:16 编辑 ]
阅读(692) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~