MySQL バージョン 5.0 では、ISAM
テーブル型が廃止されます。MySQL 4.1
では、このテーブル型がソースに含まれていてもコンパイルできません。このテーブルハンドラの実装としては
MyISAM
の方が優れているため、できるだけ早く
ISAM
テーブルを MyISAM
テーブルに変換する必要があります。
ISAM
は、B
ツリー
インデックスを使用します。インデックスは
.ISM
拡張子の付いたファイルに保存され、データは
.ISD
拡張子の付いたファイルに保存されます。ISAM
テーブルは、isamchk
ユーティリティで検査および修復することができます。
See 項4.5.6.7. 「myisamchk
を使用したクラッシュのリカバリ」。
ISAM
には、次の機能と特性があります。
圧縮された固定長のキー。
固定および可変のレコード長。
16 個のキーと 1 キー当たり 16 個の部品。
最大キー長は 256 バイト(デフォルト)。
マシンの形式でデータを格納するため、高速だがマシンと OS に依存する。
MyISAM
テーブルに当てはまることは、ほとんどの場合
ISAM
テーブルにも当てはまります。See
項7.1. 「MyISAM
テーブル」。MyISAM
テーブルとの主な相違点は次のとおりです。
ISAM
テーブルでは、OS/プラットフォームをまたがってバイナリを移植できない。
4 GB を超えるテーブルを処理できない。
文字列でのプリフィックスの圧縮のみをサポートする。
キーの制限値が小さい。
動的なテーブルがより頻繁にフラグメント化される。
テーブルの圧縮に、myisampack
ではなく pack_isam
が使用される。
ISAM
テーブルを MyISAM
テーブルに変換して mysqlcheck
などのユーティリティを使用できるようにするには、ALTER
TABLE
ステートメントを使用します。
mysql> ALTER TABLE tbl_name TYPE = MYISAM;
組み込み式の MySQL では、ISAM
テーブルがサポートされません。
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.