10bet网址
MySQL 5.6リファレンスマニュアル
下载本手册
PDF(美国高级主任)- 26.8 mb
PDF (A4)- 26.8 mb


14.5.3 File-Per-Tableモ,ドの有効化および無効化

file-per-tableモドをMySQLサバのデフォルトにするには,——innodb_file_per_tableコマンド行オプションでサ,バ,を起動するか,my.cnf(mysqld)セクションに次の行を追加します。

(mysqld) innodb_file_per_table

サ,バ,が動作している間に,コマンドを発行することもできます。

SET GLOBAL innodb_file_per_table=1;

文件-表モ,ドが有効な場合,InnoDBは,適切なデ,タベ,スディレクトリ内の独自のtbl_name.ibdファ@ @ルに,新しく作成された各テ@ @ブルを格納します。MyISAMストレ,ジエンジンとは異なりtbl_name.MYDtbl_name.MYIファ电子邮箱ルがあると,InnoDBはデタとンデックスを一緒に1の.ibdファ@ @ルに格納します。それでも,tbl_name.frmファ@ @ルは従来どおり作成されます。

使用する起動オプションからinnodb_file_per_tableを削除してサ,バ,を再起動する場合,または集全球コマンドでオプションをオフにした場合,InnoDBはシステムのテ,ブルスペ,ス内に新しいテ,ブルを作成します。

文件-每个表設定にかかわらず,InnoDBテ,ブルの読み取りおよび書き込みは常に実行できます。

テーブルをシステムテーブルスペースから自身のテーブルスペースへ移動するには,またはその反対方向にテーブルを移動するには,innodb_file_per_table設定を変更してテ,ブルを再作成します。

将表从系统表空间移到自己的表空间。SET GLOBAL innodb_file_per_table=1;ALTER TABLEtable_name引擎= InnoDB;将表从自己的表空间移到系统表空间。SET GLOBAL innodb_file_per_table=0ALTER TABLEtable_name引擎= InnoDB;
注記

InnoDBは,内部のデ,タディクショナリ撤销ログをシステムのテ,ブルスペ,スに配置するため,常にこのテ,ブルスペ,スが必要です。.ibdファ@ @ルはInnoDBが動作するのには十分ではありません。

システムテ,ブルスペ,スから独自の.ibdファイルにテーブルが移動された場合,システムテーブルスペースを構成するデータファイルのサイズは維持されます。以前にテ,ブルが占有したスペ,スは,新しいInnoDBデ,タ用に再利用できますが,オペレ,ティングシステム用には再利用されません。システムテ,ブルスペ,スから,ディスクスペ,スが限られているところへ大規模なInnoDBテ,ブルを移動する場合,innodb_file_per_tableをオンにしてから, mysqldumpコマンドを使用して@ @ンスタンス全体を再作成することをお勧めします。