- NAME
-
- gcloud database-migration migration-jobs create - create a Database Migration Service migration job
- SYNOPSIS
-
-
gcloud database-migration migration-jobs create
(MIGRATION_JOB
:--region
=REGION
)--destination
=DESTINATION
--source
=SOURCE
--type
=TYPE
[--no-async
] [--commit-id
=COMMIT_ID
] [--conversion-workspace
=CONVERSION_WORKSPACE
] [--display-name
=DISPLAY_NAME
] [--dump-parallel-level
=DUMP_PARALLEL_LEVEL
] [--dump-path
=DUMP_PATH
] [--dump-type
=DUMP_TYPE
] [--filter
=FILTER
] [--labels
=[KEY
=VALUE
,…]] [--cmek-key
=CMEK_KEY
:--cmek-keyring
=CMEK_KEYRING
--cmek-project
=CMEK_PROJECT
] [--peer-vpc
=PEER_VPC
|--static-ip
| [--vm-ip
=VM_IP
--vm-port
=VM_PORT
--vpc
=VPC
:--vm
=VM
]] [--sqlserver-databases
=databaseName
,[…] :--sqlserver-diff-backup
--sqlserver-encrypted-databases
=SQLSERVER_ENCRYPTED_DATABASES
--sqlserver-promote-when-ready
] [GCLOUD_WIDE_FLAG …
]
-
- DESCRIPTION
-
Create a Database Migration Service migration job. Recommended steps before
creating the migration job:
- Create a source connection profile. See prerequisites here.
- Create a destination connection profile. For migrating to Cloud SQL for MySQL or Cloud SQL for PostgreSQL, use the cloudsql connection profile for DMS to create the CloudSQL replica for you.
- Configure the connectivity method. See prerequisites here.
- [Heterogeneous migrations only] Create a conversion workspace.
- EXAMPLES
-
To create a continuous migration job with IP allowlist connectivity:
gcloud database-migration migration-jobs create my-migration-job --region=us-central1 --type=CONTINUOUS --source=cp1 --destination=cp2
To create a continuous migration job with VPC peering connectivity:
gcloud database-migration migration-jobs create my-migration-job --region=us-central1 --type=CONTINUOUS --source=cp1 --destination=cp2 --peer-vpc=projects/my-project/global/networks/my-network
To create a one-time migration job with reverse-SSH tunnel connectivity:
gcloud database-migration migration-jobs create my-migration-job --region=us-central1 --type=ONE_TIME --source=cp1 --destination=cp2 --vm=vm1 --vm-ip=1.1.1.1 --vm-port=1111 --vpc=projects/my-project/global/networks/my-network
To create a heterogeneous continuous migration job:
gcloud database-migration migration-jobs create my-migration-job --region=us-central1 --type=CONTINUOUS --source=cp1 --destination=cp2 --conversion-workspace=cw
To create a continuous SQL Server to SQL Server homogeneous migration job with differential backup enabled:
gcloud database-migration migration-jobs create my-migration-job --region=us-central1 --type=CONTINUOUS --source=cp1 --destination=cp2 --sqlserver-diff-backup --sqlserver-databases=db1,db2,db3
To create a continuous SQL Server to SQL Server homogeneous migration job with encrypted databases:
gcloud database-migration migration-jobs create my-migration-job --region=us-central1 --type=CONTINUOUS --source=cp1 --destination=cp2 --sqlserver-databases=db1,db2,db3 --sqlserver-encrypted-databases=PATH/TO/ENCRYPTION/SETTINGS
- POSITIONAL ARGUMENTS
-
-
Migration job resource - The migration job to create. The arguments in this
group can be used to specify the attributes of this resource. (NOTE) Some
attributes are not given arguments in this group but can be set in other ways.
To set the
project
attribute:-
provide the argument
migration_job
on the command line with a fully specified name; -
provide the argument
--project
on the command line; -
set the property
core/project
.
This must be specified.
MIGRATION_JOB
-
ID of the migration_job or fully qualified identifier for the migration_job.
To set the
migration_job
attribute:-
provide the argument
migration_job
on the command line.
This positional argument must be specified if any of the other arguments in this group are specified.
-
provide the argument
--region
=REGION
-
The Cloud region for the migration_job.
To set the
region
attribute:-
provide the argument
migration_job
on the command line with a fully specified name; -
provide the argument
--region
on the command line.
-
provide the argument
-
provide the argument
-
Migration job resource - The migration job to create. The arguments in this
group can be used to specify the attributes of this resource. (NOTE) Some
attributes are not given arguments in this group but can be set in other ways.
- REQUIRED FLAGS
-
-
Connection profile resource - ID of the destination connection profile,
representing the destination database. This represents a Cloud resource. (NOTE)
Some attributes are not given arguments in this group but can be set in other
ways.
To set the
project
attribute:-
provide the argument
--destination
on the command line with a fully specified name; -
provide the argument
--project
on the command line; -
set the property
core/project
.
To set the
region
attribute:-
provide the argument
--destination
on the command line with a fully specified name; -
provide the argument
--region
on the command line.
This must be specified.
--destination
=DESTINATION
-
ID of the connection_profile or fully qualified identifier for the
connection_profile.
To set the
connection_profile
attribute:-
provide the argument
--destination
on the command line.
-
provide the argument
-
provide the argument
-
Connection profile resource - ID of the source connection profile, representing
the source database. This represents a Cloud resource. (NOTE) Some attributes
are not given arguments in this group but can be set in other ways.
To set the
project
attribute:-
provide the argument
--source
on the command line with a fully specified name; -
provide the argument
--project
on the command line; -
set the property
core/project
.
To set the
region
attribute:-
provide the argument
--source
on the command line with a fully specified name; -
provide the argument
--region
on the command line.
This must be specified.
--source
=SOURCE
-
ID of the connection_profile or fully qualified identifier for the
connection_profile.
To set the
connection_profile
attribute:-
provide the argument
--source
on the command line.
-
provide the argument
-
provide the argument
--type
=TYPE
-
Type of the migration job.
TYPE
must be one of:ONE_TIME
,CONTINUOUS
.
-
Connection profile resource - ID of the destination connection profile,
representing the destination database. This represents a Cloud resource. (NOTE)
Some attributes are not given arguments in this group but can be set in other
ways.
- OPTIONAL FLAGS
-
--no-async
- Waits for the operation in progress to complete before returning.
--commit-id
=COMMIT_ID
- Commit id for the conversion workspace to use for creating the migration job. If not specified, the latest commit id will be used by default.
-
Conversion workspace resource - Name of the conversion workspaces to be used for
the migration job This represents a Cloud resource. (NOTE) Some attributes are
not given arguments in this group but can be set in other ways.
To set the
project
attribute:-
provide the argument
--conversion-workspace
on the command line with a fully specified name; -
provide the argument
--project
on the command line; -
set the property
core/project
.
To set the
region
attribute:-
provide the argument
--conversion-workspace
on the command line with a fully specified name; -
provide the argument
--region
on the command line.
--conversion-workspace
=CONVERSION_WORKSPACE
-
ID of the conversion_workspace or fully qualified identifier for the
conversion_workspace.
To set the
conversion_workspace
attribute:-
provide the argument
--conversion-workspace
on the command line.
-
provide the argument
-
provide the argument
--display-name
=DISPLAY_NAME
- A user-friendly name for the migration job. The display name can include letters, numbers, spaces, and hyphens, and must start with a letter.
--dump-parallel-level
=DUMP_PARALLEL_LEVEL
-
Parallelization level during initial dump of the migration job. If not
specified, will be defaulted to OPTIMAL.
DUMP_PARALLEL_LEVEL
must be one of:MIN
,OPTIMAL
,MAX
. --dump-path
=DUMP_PATH
-
Path to the dump file in Google Cloud Storage, in the format:
gs://[BUCKET_NAME]/[OBJECT_NAME]
. --dump-type
=DUMP_TYPE
-
The type of the data dump. Currently applicable for MySQL to MySQL migrations
only.
DUMP_TYPE
must be one of:LOGICAL
,PHYSICAL
. --filter
=FILTER
-
Filter the entities based on AIP-160
standard. Example: to filter all tables whose name start with "Employee" and are
present under schema "Company", use filter as "Company.Employee
*
AND type=TABLE" --labels
=[KEY
=VALUE
,…]-
List of label KEY=VALUE pairs to add.
Keys must start with a lowercase character and contain only hyphens (
-
), underscores (_
), lowercase characters, and numbers. Values must contain only hyphens (-
), underscores (_
), lowercase characters, and numbers. -
Cmek key resource - Name of the CMEK (customer-managed encryption key) used for
the migration job The arguments in this group can be used to specify the
attributes of this resource. (NOTE) Some attributes are not given arguments in
this group but can be set in other ways.
To set the
region
attribute:-
provide the argument
--cmek-key
on the command line with a fully specified name; -
provide the argument
--region
on the command line.
--cmek-key
=CMEK_KEY
-
ID of the cmek-key or fully qualified identifier for the cmek-key.
To set the
cmek-key
attribute:-
provide the argument
--cmek-key
on the command line.
This flag argument must be specified if any of the other arguments in this group are specified.
-
provide the argument
--cmek-keyring
=CMEK_KEYRING
-
The CMEK keyring id of the cmek-key.
To set the
cmek-keyring
attribute:-
provide the argument
--cmek-key
on the command line with a fully specified name; -
provide the argument
--cmek-keyring
on the command line.
-
provide the argument
--cmek-project
=CMEK_PROJECT
-
The Cloud project id for the cmek-key.
To set the
cmek-project
attribute:-
provide the argument
--cmek-key
on the command line with a fully specified name; -
provide the argument
--cmek-project
on the command line.
-
provide the argument
-
provide the argument
-
The connectivity method used by the migration job. If a connectivity method
isn't specified, then it isn't added to the migration job.
At most one of these can be specified:
--peer-vpc
=PEER_VPC
- Name of the VPC network to peer with the Cloud SQL private network.
--static-ip
- Use the default IP allowlist method. This method creates a public IP that will be used with the destination Cloud SQL database. The method works by configuring the source database server to accept connections from the outgoing IP of the Cloud SQL instance.
-
Parameters for the reverse-SSH tunnel connectivity method.
--vm-ip
=VM_IP
-
Bastion Virtual Machine IP.
This flag argument must be specified if any of the other arguments in this group are specified.
--vm-port
=VM_PORT
-
Forwarding port for the SSH tunnel.
This flag argument must be specified if any of the other arguments in this group are specified.
--vpc
=VPC
-
Name of the VPC network where the VM is hosted.
This flag argument must be specified if any of the other arguments in this group are specified.
--vm
=VM
- Name of VM that will host the SSH tunnel bastion.
-
The SQL Server homogeneous migration config. This is used only for SQL Server to
CloudSQL SQL Server migrations.
--sqlserver-databases
=databaseName
,[…]-
A list of databases to be migrated to the destination Cloud SQL instance.
Provide databases as a comma separated list. This list should contain all
encrypted and non-encrypted database names. This flag is used only for SQL
Server to Cloud SQL migrations.
This flag argument must be specified if any of the other arguments in this group are specified.
--sqlserver-diff-backup
- Enable differential backups. If not specified, differential backups are disabled by default. Use --sqlserver-diff-backup to enable and --no-sqlserver-diff-backup to disable. This flag is used only for homogeneous SQL Server to Cloud SQL for SQL Server migrations.
--sqlserver-encrypted-databases
=SQLSERVER_ENCRYPTED_DATABASES
-
A JSON/YAML file describing the encryption settings per database for all
encrytped databases. Note: Path to the Certificate (.cer) and Private Key (.pvk)
in Cloud Storage, should be in the form of
gs://bucketName/fileName
. The instance must have write permissions to the bucket and read access to the file. An example of a JSON request: [{ "database": "db1", "encryptionOptions": { "certPath": "Path to certificate 1", "pvkPath": "Path to certificate private key 1", "pvkPassword": "Private key password 1" } }, { "database": "db2", "encryptionOptions": { "certPath": "Path to certificate 2", "pvkPath": "Path to certificate private key 2", "pvkPassword": "Private key password 2" } }]This flag accepts "-" for stdin. This flag is used only for SQL Server to Cloud SQL migrations.
--sqlserver-promote-when-ready
- Promote the database when it is ready. Use --sqlserver-promote-when-ready to enable and --no-sqlserver-promote-when-ready to disable. This flag is used only for homogeneous SQL Server to Cloud SQL for SQL Server migrations.
- GCLOUD WIDE FLAGS
-
These flags are available to all commands:
--access-token-file
,--account
,--billing-project
,--configuration
,--flags-file
,--flatten
,--format
,--help
,--impersonate-service-account
,--log-http
,--project
,--quiet
,--trace-token
,--user-output-enabled
,--verbosity
.Run
$ gcloud help
for details. - NOTES
-
This variant is also available:
gcloud alpha database-migration migration-jobs create
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-12-10 UTC.