すべてのプロダクト
Search
ドキュメントセンター

Data Online Migration:create-job (タスクの作成)

最終更新日:Jan 30, 2026

mgwutil create-job コマンドを使用して、データ移行タスクを作成できます。このコマンドは、上書きモード、帯域幅制限、監査メソッド、フィルターなどの設定オプションをサポートしています。

コマンド構文

mgwutil create-job <job-name> \
--src-address <value>  --dest-address <value> \
--overwrite-mode <value> --transfer-mode <value> \
[--max-bandwidth <value>] [--max-qps <value>]...

パラメーターの説明

パラメーター

必須

説明

job-name

はい

タスク名。

フォーマット:文字、数字、アンダースコア (_)、ハイフン (-) が使用できます。長さは 3~63 文字である必要があります。

--src-address

はい

ソースデータアドレスを指定します。

--dest-address

はい

移行先データアドレスを指定します。

上書きモード

--overwrite-mode

はい

--overwrite-mode と --transfer-mode を次のように組み合わせて使用します:

  • always all:強制的に完全上書きします。移行先ファイルが変更されているかどうかに関わらず、常に上書きします。

  • always lastmodified:最終更新時刻に基づいて上書きします。ソースファイルの最終更新時刻が移行先ファイルよりも新しい場合にのみ上書きします。

  • never "":上書きしません。移行先ファイルが既に存在する場合、移行をスキップします。

--transfer-mode

はい

速度制限

--max-bandwidth

いいえ

タスクの最大帯域幅制限。

単位:bits/s。

--max-qps

いいえ

タスクの最大 QPS 制限。速度制限値には上限があります。詳細については、「制限事項」をご参照ください。

監査メソッド

--create-report

いいえ

タスクの移行レポートを生成します。これはブール値フラグです。このフラグが存在する場合、レポート作成が有効になります。

デフォルト:false (作成しない)。

--log-mode

いいえ

移行ログのプッシュメソッド。指定できる値は次のとおりです:

1. off:無効。移行ログをプッシュしません。

2. basic:ファイルエラーログのみをプッシュします。

3. detail:ファイルエラーログとファイル移行ログの両方をプッシュします。

フィルター

--exclude-dir

いいえ

移行時にすべてのディレクトリを除外します。

デフォルト:false (除外しない)。

--exclude-symlink

いいえ

移行時にすべてのシンボリックリンクファイルを除外します。

デフォルト:false (除外しない)。

--key-filters-excludes

いいえ

ファイル名の除外フィルター。正規表現をサポートします。複数の式はコンマ (,) で区切ります。論理関係は OR です。
例:--key-filters-excludes ".*\.log,.*\.tmp"

--key-filters-includes

いいえ

ファイル名の包含フィルター。正規表現をサポートします。複数の式はコンマ (,) で区切ります。論理関係は OR です。

例:--key-filters-includes ".*\.jpg,.*\.png"

--last-modified-filters-excludes

いいえ

最終更新時刻の除外フィルター。フォーマット:"YYYY-MM-DD HH:MM:SS > YYYY-MM-DD HH:MM:SS"。複数の時間範囲はコンマで区切ります。値全体を引用符で囲みます。
例:--last-modified-filters-excludes "2023-01-01 00:00:00 > 2023-01-31 23:59:59"

--last-modified-filters-includes

いいえ

最終更新時刻の包含フィルター。上記と同じフォーマットを使用します。

移行設定

--with-storage-class

いいえ

移行中にファイルの StorageClass 属性を保持します。

制限事項:ソースと移行先の両方が OSS の場合にのみ有効です。

デフォルト:false

--target-storage-class

いいえ

すべての移行先ファイルに特定のストレージクラスを強制的に使用させます。

制限事項:移行先が OSS の場合にのみ有効です。
有効な値:Standard (標準)、IA (低頻度アクセス)、Archive (アーカイブストレージ)、ColdArchive (コールドアーカイブ)、DeepColdArchive (ディープコールドアーカイブ)。

--with-last-modify-time

いいえ

移行後も元の lastModifyTime (最終更新時刻) を保持します。

デフォルト:true (保持する)。

--parent-version

いいえ

親タスクの ID を指定します。(子タスクを作成する場合にのみ必須です。)

重要

子タスクを作成する際は、その親タスクの version フィールドを指定する必要があります。システムは以下のチェックを実行します:

  1. 親タスクの存在:指定された親タスクが存在する必要があります。

  2. 親タスクのステータス:親タスクが deleting 状態であってはなりません。

いずれかのチェックに失敗した場合、子タスクの作成リクエストは拒否され、エラーコードが返されます。

--convert-symlink-target

いいえ

シンボリックリンク (symlink) のターゲットを変換します。デフォルト:false (変換しない。シンボリックリンクのターゲットをソースファイルと一致させます)。

--appendable-to-normal

いいえ

移行中にソースの追加可能ファイルを通常ファイルまたはマルチパートファイルに変換します。

デフォルト:false

スケジューリングルール

--max-schedule-count

いいえ

定期タスクの最大実行回数。この制限に達すると、タスクは自動スケジューリングを停止しますが、手動でトリガーすることは可能です。

--start-cron-expression

いいえ

タスク開始スケジューリングルール。標準の 6 フィールドの cron 式 (秒 分 時 日 月 曜日) を使用します。
例:"0 0 2 * * *" は、毎日午前 2:00 にタスクを開始します。

--suspend-cron-expression

いいえ

タスク一時停止スケジューリングルール。上記と同じフォーマットを使用します。

使用例

mgwutil create-job "full-migration-job" \
--src-address "oss-src-address" --dest-address "oss-dest-address" \
--overwrite-mode always --transfer-mode all \
--start-cron-expression "0 0 2 * * *" --max-schedule-count 10 \
--key-filters-includes "(.*).gif, (.*).pdf" \
--last-modified-filters-includes "2025-07-03 00:00:00 > 2025-07-04 00:00:00"

応答

成功時のレスポンス

{
    "Code": "success",
    "StatusCode": 200,
    "LogTime": "2025-12-25 17:51:37",
    "Data": {
        "JobName": "daily-backup-job",
        "Version": "a1b2c3d4-e5f6-7890-1234-abcdef123456",
        "CreateTime": "2025-07-17T13:39:25.000Z",
        "Status": "IMPORT_JOB_BEGIN",
        "SrcAddr": "nas-agent-data",
        "DestAddr": "oss-agent-backup"
    }
}

失敗時のレスポンス

{
  "Code": "fail",
  "StatusCode": 404,
  "LogTime": "2026-01-16 13:55:52",
  "ErrorMsg": "SDKError:    StatusCode: 404    Code: NoSuchImportAddress    Message: The specified import address does not exist    Data: {'AccessDeniedDetail':null,'Recommend':null,'ecCode':null,'hostId':'1***09****69****.cn-hangzhou.mgw.aliyuncs.com','requestId':'6969D2E89367063631F7AB51','statusCode':404} ",
  "ErrorCode": "NoSuchImportAddress",
  "RequestId": "6969D2E89367063631F7AB51"
}

エラーコード

説明
  • エラーコードはエラーのカテゴリを示します。詳細については、エラーメッセージ (ErrorMsg) をご参照ください。

  • このリストには、共通エラーコードが含まれています。

ErrorCode

説明

ImportJobDepthExceed

子タスクのネスト深度がシステム制限を超えています。タスクのネストレベルを減らしてください。

ImportJobNumExceed

タスク数がデフォルトの制限を超えています。タスク数を減らしてリトライしてください。

ImportJobAlreadyExist

同じ名前のタスクが既に存在します。一意の名前を使用するか、既存のタスクを先に削除してください。

NoSuchImportAddress

指定されたアドレスが存在しません。アドレス設定名が正しいか確認してください。

NoSuchImportJobParent

親タスクが存在しません。指定された親タスクが作成済みで、ID が正しいことを確認してください。

ImportJobRepeatedOnSameAddress

同じソースアドレスと移行先アドレスを持つタスクが既に存在します。重複して作成しないでください。