重新命名Table
重新命名指定Table Bucket中的表,或將表移動到其他命名空間(Namespace)。
注意事項
--new-name和--new-namespace參數至少需要填寫一個。如果僅填寫--new-name,則表示在當前命名空間內重新命名表;如果僅填寫--new-namespace,則表示將表移動到其他命名空間但保持原表名不變;如果同時填寫兩個參數,則同時重新命名並移動命名空間。
--version-token用於樂觀鎖控制,可通過get-table命令擷取當前表的versionToken,在並行作業時防止衝突覆蓋。如果不指定,則不進行版本校正。
命令格式
ossutil tables-api rename-table --table-bucket-arn value --namespace value --name value [--new-name value] [--new-namespace value] [--version-token value] [flags]
參數 | 類型 | 說明 |
--name | string | 當前表名稱。必選參數。 |
--namespace | string | 表當前所屬的命名空間名稱。必選參數。 |
--new-name | string | 重新命名後的新表名稱。與--new-namespace至少填寫一個。 |
--new-namespace | string | 目標命名空間名稱,用於將表移動到其他命名空間。與--new-name至少填寫一個。 |
--table-bucket-arn | string | Table Bucket的ARN,格式為 |
--version-token | string | 版本令牌,用於樂觀鎖控制。可通過get-table命令擷取當前表的versionToken。在並發修改情境下,可防止操作衝突。 |
rename-table命令對應API介面RenameTable。關於API中的具體參數含義,請參見RenameTable。
關於支援的全域命令列選項,請參見ossutil全域選項。
使用樣本
在當前命名空間內重新命名表,將
old_table重新命名為new_table。ossutil tables-api rename-table --table-bucket-arn acs:osstables:cn-hangzhou:1234567890:bucket/my-table-bucket --namespace my_namespace --name old_table --new-name new_table將表移動到其他命名空間,將
my_namespace下的my_table移動到target_namespace命名空間。ossutil tables-api rename-table --table-bucket-arn acs:osstables:cn-hangzhou:1234567890:bucket/my-table-bucket --namespace my_namespace --name my_table --new-namespace target_namespace同時重新命名表並移動到其他命名空間,使用版本令牌進行樂觀鎖控制。
ossutil tables-api rename-table --table-bucket-arn acs:osstables:cn-hangzhou:1234567890:bucket/my-table-bucket --namespace my_namespace --name old_table --new-name new_table --new-namespace target_namespace --version-token abc123def456