InnoDB is a high-reliability and high-performance
storage engine for MySQL. Key advantages of
InnoDB tables arrange your data on disk to
optimize common queries based on
primary keys. Each
InnoDB table has a primary key index called
the clustered index
that organizes the data to minimize I/O for primary key lookups.
To maintain data integrity,
KEY referential-integrity constraints.
You can freely mix
InnoDB tables with tables
from other MySQL storage engines, even within the same
statement. For example, you can use a join operation to combine
MEMORY tables in a single query.
InnoDB has been designed for maximum
performance when processing large data volumes. Its CPU
efficiency is probably not matched by any other disk-based
relational database engine.
InnoDB Storage Engine
InnoDB storage engine maintains its own
buffer pool for caching data and indexes in main memory.
InnoDB stores its tables and indexes in a
tablespace, which may consist of several files (or raw disk
partitions). This is different from, for example,
MyISAM tables where each table is stored using
InnoDB tables can be very large
even on operating systems where file size is limited to 2GB.
The Windows Essentials installer makes
MySQL default storage engine on Windows, if the server being
At the 2008 MySQL User Conference, Innobase announced
availability of an
InnoDB Plugin for MySQL.
This plugin for MySQL exploits the “pluggable storage
engine” architecture of MySQL, to permit users to replace
the “built-in” version of
in MySQL 5.1.
As of MySQL 5.1.38, the
InnoDB Plugin is
included in MySQL 5.1 releases, in addition to the
built-in version of
InnoDB that has been
included in previous releases. MySQL 5.1.42 through 5.1.45
InnoDB Plugin 1.0.6, which is
considered of Release Candidate (RC) quality. MySQL 5.1.46 and
InnoDB Plugin 1.0.7 or higher,
which is considered of General Availability (GA) quality.
Prior to MySQL Cluster NDB 7.1.11, MySQL Cluster was not
compatible with the
InnoDB Plugin offers new features,
improved performance and scalability, enhanced reliability and
new capabilities for flexibility and ease of use. Among the
features of the
InnoDB Plugin are “Fast
index creation,” table and index compression, file format
capacity tuning, multiple background I/O threads, and group
InnoDB Plugin is included in source and
binary distributions, except RHEL3, RHEL4, SuSE 9 (x86, x86_64,
ia64), and generic Linux RPM packages.
For instructions on replacing the built-in version of
see Section 18.104.22.168, “Using InnoDB Plugin Instead of the Built-In InnoDB”.
The MySQL Enterprise Backup product lets you back up a running MySQL
MyISAM tables, with minimal disruption to
operations while producing a consistent snapshot of the database.
When MySQL Enterprise Backup is copying
tables, reads and writes to both
MyISAM tables can continue. During the copying of
MyISAM and other non-InnoDB tables, reads (but
not writes) to those tables are permitted. In addition, MySQL
Enterprise Backup can create compressed backup files, and back up
InnoDB tables. In conjunction with the
MySQL binary log, you can perform point-in-time recovery. MySQL
Enterprise Backup is included as part of the MySQL Enterprise
For a more complete description of MySQL Enterprise Backup, see Section 23.2, “MySQL Enterprise Backup”.
A forum dedicated to the
InnoDB storage engine is
available at http://forums.mysql.com/list.php?22.
InnoDB is published under the same GNU GPL
License Version 2 (of June 1991) as MySQL. For more information on
MySQL licensing, see http://www.mysql.com/company/legal/licensing/.