ALTER TABLESPACEtablespace_name{ADD|DROP} DATAFILE 'file_name' [INITIAL_SIZE [=]size] [WAIT] ENGINE [=]engine_name
このステートメントは新しいデータファイルを追加するときかテーブル領域からデータファイルをドロップするときに利用することができます。
        ADD DATAFILE
        バリアントを使用すると、INITIAL_SIZE
        節を使用して初期サイズを指定できます。ここで、size
        はバイト単位で測定されます。デフォルト値は
        128M (128M バイト)
        です。my.cnf
        で使用される方法と同様に、任意でこの整数値のあとに桁を示す
        1
        文字の省略形を指定することもできます。通常これは
        M (メガバイト) か
        G (ギガバイト)
        のどちらかの文字です。
      
すべての MySQL Cluster ディスクデータオブジェクトが同じ名前空間を共有します。つまり、各ディスクデータオブジェクトは (単に、特定の型の各ディスクデータオブジェクトというだけでなく) 一意に名前が付けられている必要があります。たとえば、テーブル領域とデータファイルを同じ名前にしたり、UNDO ログファイルとデータファイルを同じ名前にしたりすることはできません。
MySQL Cluster NDB 6.2.17、6.3.23、および 6.4.3 より前のバージョンでは、データファイルのパスとファイル名を 128 文字より長くすることができませんでした。(Bug#31770)
        32
        ビットシステムでは、INITIAL_SIZE
        のサポートされる最大値は
        4G です。(Bug#29186)
      
        一度データファイルが作成されると、そのサイズは変更できませんが、追加の
        ALTER TABLESPACE ... ADD
        DATAFILE
        ステートメントを利用することによりテーブル領域により多くのデータファイルを追加することができます。
      
        DROP DATAFILE を
        ALTER TABLESPACE
        とともに使用すると、テーブル領域からデータファイル
        'file_name'
        が削除されます。このファイルは、CREATE
        TABLESPACE または ALTER
        TABLESPACE
        を使用して、すでにテーブル領域に追加されている必要があります。そうでない場合は、エラーが発生します。
      
        ALTER TABLESPACE ... ADD
        DATAFILE と ALTER TABLESPACE
        ... DROP DATAFILE の 2
        つは、テーブル領域に利用されるストレージエンジンを指定する
        ENGINE
        節を必要とします。MySQL 5.1
        では、engine_name
        に指定できる値は
        NDB と
        NDBCLUSTER
        だけです。
      
        WAIT
        は解析されますが、それ以外では無視されます。そのため、MySQL
        5.1
        には影響しません。これは将来の拡張のために用意されています。
      
        ALTER TABLESPACE ... ADD
        DATAFILE が ENGINE =
        NDB
        と共に利用されたとき、データファイルがそれぞれのクラスタデータノード上に作成されます。INFORMATION_SCHEMA.FILES
        テーブルに問い合わせすることによってデータファイルが作成され、それらの情報を得たことを証明することができます。たとえば、次のクエリーは
        newts
        と名付けられたテーブル領域に属するすべてのデータファイルを表しています。
      
mysql>SELECT LOGFILE_GROUP_NAME, FILE_NAME, EXTRA->FROM INFORMATION_SCHEMA.FILES->WHERE TABLESPACE_NAME = 'newts' AND FILE_TYPE = 'DATAFILE';+--------------------+--------------+----------------+ | LOGFILE_GROUP_NAME | FILE_NAME | EXTRA | +--------------------+--------------+----------------+ | lg_3 | newdata.dat | CLUSTER_NODE=3 | | lg_3 | newdata.dat | CLUSTER_NODE=4 | | lg_3 | newdata2.dat | CLUSTER_NODE=3 | | lg_3 | newdata2.dat | CLUSTER_NODE=4 | +--------------------+--------------+----------------+ 2 rows in set (0.03 sec)
        The INFORMATION_SCHEMA FILES Table を参照してください。
      
        ALTER TABLESPACE は、MySQL
        5.1.6 で追加されました。MySQL 5.1 では、MySQL
        Cluster
        のディスクデータストレージで使用する場合のみ有効です。MySQL Cluster Disk Data Tables
        を参照してください。
      

