[+/-]
MySQL 5.1 supports the following storage engines:
MyISAM
— The default MySQL storage engine and the one that is
used the most in Web, data warehousing, and other application
environments. MyISAM
is supported in all
MySQL configurations, and is the default storage engine unless
you have configured MySQL to use a different one by default.
InnoDB
— A transaction-safe (ACID compliant) storage engine for
MySQL that has commit, rollback, and crash-recovery
capabilities to protect user data. InnoDB
row-level locking (without escalation to coarser granularity
locks) and Oracle-style consistent non-locking reads increase
multi-user concurrency and performance.
InnoDB
stores user data in clustered
indexes to reduce I/O for common queries based on primary
keys. To maintain data integrity, InnoDB
also supports FOREIGN KEY
referential-integrity constraints.
Memory
— Stores all data in RAM for extremely fast access in
environments that require quick lookups of reference and other
like data. This engine was formerly known as the
HEAP
engine.
Merge
— Allows a MySQL DBA or developer to logically group a
series of identical MyISAM
tables and
reference them as one object. Good for VLDB environments such
as data warehousing.
Archive
— Provides the perfect solution for storing and
retrieving large amounts of seldom-referenced historical,
archived, or security audit information.
Federated
— Offers the ability to link separate MySQL servers to
create one logical database from many physical servers. Very
good for distributed or data mart environments.
NDB
— The Clustered database engine that is particularly
suited for applications with high performance lookup needs
that also require the highest possible degree of uptime and
availability.
CSV
— The CSV storage engine stores data in text files using
comma-separated values format. You can use the CSV engine to
easily exchange data between other software and applications
that can import and export in CSV format.
Blackhole
— The Blackhole storage engine accepts but does not
store data and retrievals always return an empty set. The
functionality can be used in distributed database design where
data is automatically replicated, but not stored locally.
Example
— The Example storage engine is “stub”
engine that does nothing. You can create tables with this
engine, but no data can be stored in 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.
This chapter describes each of the MySQL storage engines except
for NDBCLUSTER
, which is covered in
MySQL Cluster NDB 6.X/7.X.
It is important to remember that you are not restricted to using the same storage engine for an entire server or schema: you can use a different storage engine for each table in your schema.
User Comments
Add your own comment.