ALTER LOGFILE GROUPlogfile_group
ADD UNDOFILE 'file
' INITIAL_SIZE [=]size
ENGINE [=]engine
このステートメントは、'file
'
と名付けられた UNDO
ファイルを、既存ログファイルグループ
logfile_group
に追加します。ALTER LOGFILE GROUP
ステートメントはたった一つの ADD
UNDOFILE
条項を持ちます。DROP
UNDOFILE
条項はサポートされていません。
INITIAL_SIZE
パラメータは
UNDO
ファイルの冒頭のサイズをバイトで設定します。my.cnf
で利用されている物と同様、大きさによって一文字の省略形を持つ
size
に従う事もできます。通常これは
M
(メガ バイト) か G
(ギガ バイト)のどちらかの文字です。
ENGINE
パラメータ(要求された)が、このログ ファイル
グループによって利用されるストレージエンジンを決め、その名前はengine
となります。MySQL
5.1では、engine
に受け入れられる値は NDB
と
NDBCLUSTER
だけです。
ここに、ログ ファイル グループ
lg_3
が既に CREATE LOGFILE
GROUP
を利用して作成されていると仮定した例があります。(項12.1.9. 「CREATE LOGFILE GROUP
構文」
を参照してください。)
ALTER LOGFILE GROUP lg_3 ADD UNDOFILE 'undo_10.dat' INITIAL_SIZE=32M ENGINE=NDB;
ALTER LOGFILE GROUP
が ENGINE =
NDB
と共に利用された時、UNDO
ログ
ファイルがそれぞれのクラスタ データ
ノード上に作成されます。INFORMATION_SCHEMA.FILES
テーブルに問い合わせする事によって
UNDO
ファイルが作成され、それらの情報を得た事を証明する事ができます。例:
mysql>SELECT FILE_NAME, LOGFILE_GROUP_NUMBER, EXTRA
->FROM INFORMATION_SCHEMA.FILES
->WHERE LOGFILE_GROUP_NAME = 'lg_3';
+-------------+----------------------+----------------+ | FILE_NAME | LOGFILE_GROUP_NUMBER | EXTRA | +-------------+----------------------+----------------+ | newdata.dat | 0 | CLUSTER_NODE=3 | | newdata.dat | 0 | CLUSTER_NODE=4 | | undo_10.dat | 11 | CLUSTER_NODE=3 | | undo_10.dat | 11 | CLUSTER_NODE=4 | +-------------+----------------------+----------------+ 4 rows in set (0.01 sec)
(詳しくは 項21.21. 「INFORMATION_SCHEMA FILES
テーブル」
を参照してください。)
MySQL 5.1.6 では ALTER LOGFILE GROUP
が追加されました。MySQL 5.1 では MySQL
クラスタのディスク データ
ストレージと一緒の時のみ利用する事ができます。詳しくは
項14.11. 「MySQL Cluster ディスク データ ストレージ」
を参照してください。