MySQL存储引擎

MySQL插件式存储引擎体系结构:


MySQL存储引擎
 存储引擎比较:


MySQL存储引擎

  • MyISAM:默认的MySQL插件式存储引擎,它在Web,数据仓库和其他应用缓环境下最常使用的储存引擎之一。注意,通过更改STORAGE_ENGINE配置变量,能够方便地更改MySQL服务器的默认存储引擎。该存储引擎的特点:不支持事务,表级锁,高效索引,高效压缩。
  • InnoDB:用于事务处理应用程序,具有众多特性,包含ACID事务支持。
  • BDB:可替代InnoDB的事务引擎,支持COMMIT,ROLLBACK和其他事务特性。
  • Memory:将所有数据保存在RAM中,在需要快速查找引用和其他类似数据的环境下,可提供极快的访问。
  • Merge:允许MySQL DBA或开发人员将一系列等同的MyISAM表以逻辑方式组合在一起,并作为1个对象引用它们。对于诸如数据仓储等VLDB环境十分适合。
  • Archive:大量很少引用的历史、归档、或安全审计信息的存储和检索提供完美的解决方案。
  • Federated:能够将多个分离的MySQL服务器链接起来,从多个物理服务器创建一个逻辑数据库。十分适合于分布式环境或数据集市环境。
  • Cluster/NDS:MySQL的族式数据库引擎,尤其适合于具有高性能查找的应用程序,这类查找需求还要求具有最高的正常工作时间和可用性。
  • Other:其他存储引擎包括CSV(引用由逗号隔开的用作数据库表的文件),Blackhole(用于临时禁止对数据库的应用程序输入),以及Example引擎(可为快速创建定制的插件式存储引擎提供帮助)。请记住,对于整个服务器或方案,你并不一定要使用相同的存储引擎,你可以为方案中的每个表使用不同的存储引擎,这点很重要。

将存储引擎指定给表:

可以在创建新表时指定存储引擎,或者通过使用ALTER TABLE语句制定存储引擎。

要想在创建表时指定存储引擎,可使用ENGING参数:

 

CREATE TABLE engineTest(
id INT
)  ENGINE = MyISAM;

 要想更改已有表的存储引擎,可使用ALER TABLE语句:

 

ALTER TABLE engineTest ENGINE = ARCHIVE;

你可能感兴趣的:(mysql,存储引擎)