InnoDB
は、MySQL
における、コミット、ロールバック、クラッシュリカバリの各機能を備えたトランザクションセーフ(ACID
準拠)のストレージエンジンです。InnoDB
は、行レベルでロックを行い、SELECT
ステートメントで Oracle
式の非ロックの読み取り一貫性(consistent
read)を実現します。これらの機能によって、マルチユーザでの並行性とパフォーマンスが向上します。InnoDB
ではロックエスカレーションが不要です。InnoDB
での行レベルロックはわずかなスペースしか使用しないからです。InnoDB
は、MySQL で FOREIGN KEY
制約を最初にサポートしたストレージエンジンです。
InnoDB
は、大容量のデータを処理する際に最大限のパフォーマンスを実現するように設計されています。その
CPU
効率は、おそらく他のディスクベースのリレーショナルデータベースエンジンのどれよりも優れています。
InnoDB
は、高いパフォーマンスを必要とする多くの大規模データベースサイトで実際に使用されています。有名なインターネットニュースサイトの
Slashdot.org は、InnoDB
上で稼働しています。Mytrix, Inc. では、1 TB
を超えるデータを InnoDB
に格納し、別のサイトでは InnoDB
で 1 秒間に平均 800
件の挿入/更新を処理しています。
技術的には、InnoDB
は MySQL
のデータベースバックエンドです。InnoDB
は、データとインデックスをキャッシュするための専用のバッファプールをメインメモリに持っています。InnoDB
のテーブルとインデックスはテーブルスペースに格納されます。これは、複数のファイル(またはローデバイス)で構成されている場合があります。この点は、各テーブルを個別のファイルに格納する
MyISAM
テーブルなどとは異なっています。InnoDB
テーブルは、ファイルサイズが 2 GB
に制限されているオペレーティングシステム上でも、任意のサイズにすることができます。
InnoDB
に関する最新情報は、http://www.innodb.com/
で参照できます。InnoDB
マニュアルの最新版もこのサイトに収録されています。
InnoDB
は、MySQL と同じ GNU
GPL
License Version 2(1991 年 6
月付け)の下でリリースされています。MySQL/InnoDB
を配布する場合に、アプリケーションが GPL
ライセンスの制約を満たしていないときは、https://order.mysql.com/?sub=pg&pg_no=1
から MySQL Pro
の商用ライセンスを購入する必要があります。
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.