Migration job status codes

Database Migration Service uses similar status codes for both homogeneous SQL Server migration approaches, with specific substatuses and post-promotion behaviors depending on the type of migration you perform:

Status codes for backup and restore migrations

The following table lists and describes migration job statuses for backup and restore migrations:

Migration job status Description Possible substatus Possible user actions
Not started The migration job is ready but still not running. This status is relevant if the migration job was created but wasn't started. None Start. Delete.
Starting... The migration job is in the process of being started. This is an intermediate status that occurs when a migration job is started. Starting the migration job takes between a few seconds and a few minutes. The status changes to Running. None Delete.
Running The migration job is actively running. CDC, Promote in progress. Stop. Promote. Delete.
Running with errors This status means that Database Migration Service encountered errors with your migration. Faulty operations will be retried, and errors clear automatically once the underlying issue is resolved.

Database Migration Service continues migrating data unaffected by the error.

Incremental load. Stop. Restart. Promote.
Completed The migration job is completed. This status occurs after a successful promotion. None Delete.
Failed The migration job failed because of an error. You need to restart the migration job after the issue is fixed. The last status before the migration job failed. Failed in CDC, Failed in full dump. Restart. Delete. Promote.
Restarting The migration job is in the process of being restarted. None Delete.
Stopped The migration job is stopped. The last status before the migration job has stopped.
Resuming The migration job is in the process of being resumed. None Delete.
Stopping... The migration job is in the process of stopping after Stop was invoked. This is an intermediate status that occurs when a user stops a migration job. Stopping the job takes around a minute, during which the status is Stopping. Subsequently, the status changes to Stopped. None Delete
Ready to promote Database Migration Service stops continuous load when it detects a transaction log file whose name ends in the .final suffix (see naming convention associated with the final transaction log file. Once that transaction log file is replicated to the destination Cloud SQL instance, the migration job status changes to Ready to promote.

This status doesn't occur if you just stop uploading transaction log backup files instead of using a file with the .final suffix in the name.

None Promote

Status codes for Distributed Availability Group (DAG) migrations

The following table lists and describes migration job statuses for Distributed Availability Group (DAG) migrations:

Migration job status Description Possible substatus Possible user actions
Not started The migration job is ready but still not running. Before starting a DAG migration job, run the verify command to validate connectivity and permissions. None Verify. Start. Delete.
Starting... The migration job is in the process of being started. This is an intermediate status that occurs when a migration job is started. Starting the migration job takes between a few seconds and a few minutes. The status changes to Running. None Delete.
Running The migration job is actively running. Full dump (initial full load), CDC (continuous replication), Promote in progress, or Failback (PHASE_FAILBACK in Google Cloud CLI and API responses; post-promotion reverse replication from Cloud SQL for SQL Server to the source SQL Server instance). Stop. Promote (in CDC). Promote with --failback (in Failback). Delete.
Running with errors This status means that Database Migration Service encountered errors with your migration. Faulty operations are retried, and errors clear automatically once the underlying issue is resolved.

Database Migration Service continues migrating data unaffected by the error.

Full dump, CDC, or Failback. Stop. Restart. Promote (in CDC). Promote with --failback (in Failback). Delete.
Completed For Distributed Availability Group (DAG) migrations, promoting the migration job transitions the job to the Running (Failback) substatus to support reverse replication rather than Completed. To finalize a DAG migration after promotion, you can stop replication and delete the migration job, which completes the migration and performs the necessary cleanup. None Delete.
Failed The migration job failed because of an error. You need to restart the migration job after the issue is fixed. The last status before the migration job failed. Failed in CDC, Failed in full dump. Restart. Delete. Promote.
Restarting The migration job is in the process of being restarted. Restarting drops the migrated databases on the destination Cloud SQL for SQL Server instance and re-runs the initial full load. None Delete.
Stopped The migration job is stopped and data replication is halted. Stopping a DAG migration job should only be used for a defined, short period because updates continue to accumulate in the transaction logs while replication is halted. From the Stopped state, you can either resume data replication (Resume) or complete the migration and perform cleanup (Delete). The last status before the migration job has stopped. Resume. Restart. Delete.
Resuming The migration job is in the process of being resumed. None Delete.
Stopping... The migration job is in the process of stopping after Stop was invoked. This is an intermediate status that occurs when a user stops a migration job. Stopping the job takes around a minute, during which the status is Stopping. Subsequently, the status changes to Stopped. None Delete.