このトピックでは、MySQL データベースから OceanBase Database の MySQL テナントへのデータ移行中に、ALTER TABLE DDL 操作でサポートされる変換範囲について説明します。
概要
列に対する操作。列を追加、削除、および変更できます。詳細については、「列に対する操作」をご参照ください。
制約とインデックスに対する操作。制約とインデックスを追加および削除できます。詳細については、「制約とインデックスに対する操作」をご参照ください。
パーティションに対する操作。詳細については、「パーティションに対する操作」をご参照ください。
テーブル属性の変更。詳細については、このセクションの後にある「テーブル属性の変更」をご参照ください。
テーブル属性の変更
構文
ALTER TABLE tbl_name
[alter_option [, alter_option] ...]
alter_option: {
table_options
| RENAME [TO | AS] new_tbl_name
| ALGORITHM [=] {DEFAULT | INSTANT | INPLACE | COPY}
| [DEFAULT] CHARACTER SET [=] charset_name [COLLATE [=] collation_name]
| CONVERT TO CHARACTER SET charset_name [COLLATE collation_name]
| {DISCARD | IMPORT} TABLESPACE
| FORCE
| LOCK [=] {DEFAULT | NONE | SHARED | EXCLUSIVE}
| {WITHOUT | WITH} VALIDATION
}
table_option: {
AUTOEXTEND_SIZE [=] value
| AUTO_INCREMENT [=] value
| AVG_ROW_LENGTH [=] value
| [DEFAULT] CHARACTER SET [=] charset_name
| CHECKSUM [=] {0 | 1}
| [DEFAULT] COLLATE [=] collation_name
| COMMENT [=] 'string'
| COMPRESSION [=] {'ZLIB' | 'LZ4' | 'NONE'}
| CONNECTION [=] 'connect_string'
| {DATA | INDEX} DIRECTORY [=] 'absolute path to directory'
| DELAY_KEY_WRITE [=] {0 | 1}
| ENCRYPTION [=] {'Y' | 'N'}
| ENGINE [=] engine_name
| ENGINE_ATTRIBUTE [=] 'string'
| INSERT_METHOD [=] { NO | FIRST | LAST }
| KEY_BLOCK_SIZE [=] value
| MAX_ROWS [=] value
| MIN_ROWS [=] value
| PACK_KEYS [=] {0 | 1 | DEFAULT}
| PASSWORD [=] 'string'
| ROW_FORMAT [=] {DEFAULT | DYNAMIC | FIXED | COMPRESSED | REDUNDANT | COMPACT}
| SECONDARY_ENGINE_ATTRIBUTE [=] 'string'
| STATS_AUTO_RECALC [=] {DEFAULT | 0 | 1}
| STATS_PERSISTENT [=] {DEFAULT | 0 | 1}
| STATS_SAMPLE_PAGES [=] value
| TABLESPACE tablespace_name [STORAGE {DISK | MEMORY}]
| UNION [=] (tbl_name[,tbl_name]...)
}
サポートされる操作
テーブル名の変更。
alter table tablename rename to new_tablename;テーブルコメントの変更。
ALTER TABLE t comment = 'table comment';
サポートされない操作
重要
同期される DDL 文に以下のサポートされていない定義が含まれている場合、変換は失敗し、出力は空の文字列になります。
ALGORITHM 属性の変更。
ALTER TABLE t ALGORITHM = COPY;CONVERT TO CHARACTER SET の使用。
ALTER TABLE t CONVERT TO CHARACTER SET utf16;CHARACTER SET 属性または COLLATE 属性の変更。
ALTER TABLE T DEFAULT CHARACTER SET utf8;DISCARD | IMPORT TABLESPACE オプションの指定。
ALTER TABLE FORCE の使用。
LOCK 属性の変更: LOCK = DEFAULT | NONE | SHARED | EXCLUSIVE。
ALTER TABLE WITHOUT | WITH VALIDATION の使用。
table_option内の COMMENT 以外の属性の変更。詳細については、このトピックの「構文」セクションにあるtable_optionの定義をご参照ください。