区别看这里,一般使用不用研究那么仔细
http://dev.mysql.com/doc/mysql/en/storage-engines.html我想之所以有这么多种,是因为技术上的原因不能兼顾,
所以不同的引擎有不同的特点,只能保留,让用户根据需要选择。如果能有一种方式能够保留所有的优点,那当然最好,但也许很难做到了。

解决方案 »

  1.   

    HEAP   内存表 (好象不能索引)
    innoDB 支持事务
    ISAM   平台相关(3.23之前的版本)
    MyISAM 平台无关还有一个临时表,建在磁盘上,mysql关闭时自动删除
      

  2.   

    QSmile(RedFox),不错不错!不过,ISAM 平台相关(3.23之前的版本),为什么在4.0的MYSQL时还存在?
    嗯,应该是说主要在3.23以前的MYSQL上用,现在不怎么用了:)
    请高手继续补充,或者说得更详细更精确一些.
      

  3.   

    MySQL推荐使用MyISAM代替ISAM
    HEAP一般是做小数据量高读写频率用的,比如在线用户列表,Session等
      

  4.   

    http://dev.mysql.com/doc/mysql/en/storage-engines.html这个官方的说明确实不错,可惜是纯英文的,郁闷;(14.1. The MyISAM Storage Engine 
    14.1.1. MyISAM Startup Options 
    14.1.2. Space Needed for Keys 
    14.1.3. MyISAM Table Storage Formats 
    14.1.4. MyISAM Table Problems 
    14.2. The MERGE Storage Engine 
    14.2.1. MERGE Table Problems
    14.3. The MEMORY (HEAP) Storage Engine 
    14.4. The BDB (BerkeleyDB) Storage Engine 
    14.4.1. Operating Systems Supported by BDB 
    14.4.2. Installing BDB 
    14.4.3. BDB Startup Options 
    14.4.4. Characteristics of BDB Tables 
    14.4.5. Things We Need to Fix for BDB 
    14.4.6. Restrictions on BDB Tables 
    14.4.7. Errors That May Occur When Using BDB Tables 
    14.5. The EXAMPLE Storage Engine 
    14.6. The FEDERATED Storage Engine 
    14.6.1. Installing the FEDERATED Storage Engine 
    14.6.2. Description of the FEDERATED Storage Engine 
    14.6.3. How to use FEDERATED Tables 
    14.6.4. Limitations of the FEDERATED Storage Engine 
    14.7. The ARCHIVE Storage Engine 
    14.8. The CSV Storage Engine 
    14.9. The ISAM Storage Engine 
    MySQL supports several storage engines that act as handlers for different table types. MySQL storage engines include both those that handle transaction-safe tables and those that handle non-transaction-safe tables: The original storage engine was ISAM, which managed non-transactional tables. This engine has been replaced by MyISAM and should no longer be used. It is deprecated in MySQL 4.1, and is removed in MySQL 5.0. In MySQL 3.23.0, the MyISAM and HEAP storage engines were introduced. MyISAM is an improved replacement for ISAM. The HEAP storage engine provides in-memory tables. The MERGE storage engine was added in MySQL 3.23.25. It allows a collection of identical MyISAM tables to be handled as a single table. All three of these storage engines handle non-transactional tables, and all are included in MySQL by default. Note that the HEAP storage engine has been renamed the MEMORY engine. The InnoDB and BDB storage engines that handle transaction-safe tables were introduced in later versions of MySQL 3.23. Both are available in source distributions as of MySQL 3.23.34a. BDB is included in MySQL-Max binary distributions on those operating systems that support it. InnoDB also is included in MySQL-Max binary distributions for MySQL 3.23. Beginning with MySQL 4.0, InnoDB is included by default in all MySQL binary distributions. In source distributions, you can enable or disable either engine by configuring MySQL as you like. The EXAMPLE storage engine was added in MySQL 4.1.3. It is a ``stub'' engine that does nothing. You can create tables with this engine, but no data can be stored into them or retrieved from them. The purpose of this engine is to serve as an example in the MySQL source code that illustrates how to begin writing new storage engines. As such, it is primarily of interest to developers. NDB Cluster is the storage engine used by MySQL Cluster to implement tables that are partitioned over many computers. It is available in source code distributions as of MySQL 4.1.2 and binary distributions as of MySQL-Max 4.1.3. The ARCHIVE storage engine was added in MySQL 4.1.3. It is used for storing large amounts of data without indexes in a very small footprint. The CSV storage engine was added in MySQL 4.1.4. This engine stores data in text files using comma-separated-values format. The FEDERATED storage engine was added in MySQL 5.0.3. This engine stores data in a remote database. In this release, it works with MySQL only, using the MySQL C Client API. Future releases will be able to connect to other data sources using other driver or client connection methods. 
      

  5.   

    MRG_MyISAM是分割型的MyISAM
    他可以存在在多个卷上
      

  6.   

    To  ray929(海豚) ,分割型的MyISAM,分割指的是?
    像ORACLE一样支持群集服务器?还是仅放在同一名电脑上的几个盘?
      

  7.   

    这是mysql的代点..MRG_MyISAM是分割型的MyISAM
    他可以存在在多个卷上这个很不错,好象别的数据库没有,有点象视图的概念..在超大数据量的时候,可以把一个表切成N个小表用一个MRG来管理...象操作一个表一样.速度做了优化.
      

  8.   

    Oracle也有将一个大表分割成几个小表的功能,好像CSDN就是这么做的?
      

  9.   

    不过,ISAM 平台相关(3.23之前的版本),为什么在4.0的MYSQL时还存在?
    --------------
    兼容性考虑
    就像 DOS 就开始的 FAT16 在 Window85,98,NT 中都能用。