CREATE LOGFILE GROUPlogfile_group
ADD UNDOFILE 'undo_file
' INITIAL_SIZE [=]initial_size
[UNDO_BUFFER_SIZE [=]undo_buffer_size
] ENGINE [=]engine_name
このステートメントは、'undo_file
'
と名づけられた単一 UNDO
ファイルを持つ logfile_group
という名前の新しいログ ファイル
グループを作成する事ができます。CREATE
LOGFILE GROUP
ステートメントはたった一つの ADD
UNDOFILE
条項を持ちます。
MySQL 5.1.8 から、いつでも1つのクラスタに付き1つだけのログ ファイル グループを持つ事ができるようになりました。(バグ #16386を参照して下さい。)
INITIAL_SIZE
パラメータは
UNDO
ファイルの初期サイズを設定します。任意の
UNDO_BUFFFER_SIZE
パラメータは、ログ
ファイル グループに対して UNDO
バッファに利用されるサイズを設定します。UNDO_BUFFER_SIZE
のデフォルト値は 8M
(8メガバイト)で、この値は有効なシステム
メモリの量を超える事はできません。initial_size
と undo_buffer_size_size
の両方はバイトで指示されます。my.cnf
で利用されている物と同様、大きさによって一文字の省略形を持つこれらのうちのどちらか、または両方に従う事もできます。通常これは
M
(メガ バイト) か G
(ギガ バイト)のどちらかの文字です。
ENGINE
パラメータが、このログ
ファイル
グループによって利用されるストレージ
エンジンを決め、その名前はengine
となります。MySQL 5.1 では
engine
が NDB
か
NDBCLUSTER
の値の1つにならなければいけません。
ENGINE = NDB
と一緒に利用された時、ログ ファイル
グループと、関連する UNDO
ログ
ファイルは、各クラスタ データ
ノード上に作成されます。INFORMATION_SCHEMA.FILES
テーブルに問い合わせする事によって
UNDO
ファイルが作成され、それらの情報を得た事を証明する事ができます。例:
mysql>SELECT LOGFILE_GROUP_NAME, LOGFILE_GROUP_NUMBER, EXTRA
->FROM INFORMATION_SCHEMA.FILES
->WHERE FILE_NAME = 'undo_10.dat';
+--------------------+----------------------+----------------+ | LOGFILE_GROUP_NAME | LOGFILE_GROUP_NUMBER | EXTRA | +--------------------+----------------------+----------------+ | lg_3 | 11 | CLUSTER_NODE=3 | | lg_3 | 11 | CLUSTER_NODE=4 | +--------------------+----------------------+----------------+ 2 rows in set (0.06 sec)
(詳しくは 項21.21. 「INFORMATION_SCHEMA FILES
テーブル」
を参照してください。)
MySQL 5.1.6 では CREATE LOGFILE GROUP
が追加されました。MySQL 5.1 では MySQL
クラスタの ディスク データ
ストレージと一緒の時のみ利用する事ができます。詳しくは
項14.11. 「MySQL Cluster ディスク データ ストレージ」
を参照してください。