Bicep resource definition
The services/serviceTasks resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
To create a Microsoft.DataMigration/services/serviceTasks resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.DataMigration/services/serviceTasks@2023-07-15-preview' = {
parent: resourceSymbolicName
etag: 'string'
name: 'string'
properties: {
clientData: {
{customized property}: 'string'
}
taskType: 'string'
// For remaining properties, see ProjectTaskProperties objects
}
}
ProjectTaskProperties objects
Set the taskType property to specify the type of object.
For Connect.MongoDb, use:
{
input: {
additionalSettings: 'string'
authentication: 'string'
connectionString: 'string'
dataSource: 'string'
encryptConnection: bool
enforceSSL: bool
password: 'string'
port: int
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
taskType: 'Connect.MongoDb'
}
For ConnectToSource.MySql, use:
{
input: {
checkPermissionsGroup: 'string'
isOfflineMigration: bool
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverName: 'string'
type: 'string'
userName: 'string'
}
targetPlatform: 'string'
}
taskType: 'ConnectToSource.MySql'
}
For ConnectToSource.Oracle.Sync, use:
{
input: {
sourceConnectionInfo: {
authentication: 'string'
dataSource: 'string'
password: 'string'
port: int
serverName: 'string'
serverVersion: 'string'
type: 'string'
userName: 'string'
}
}
taskType: 'ConnectToSource.Oracle.Sync'
}
For ConnectToSource.PostgreSql.Sync, use:
{
input: {
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
databaseName: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
}
taskType: 'ConnectToSource.PostgreSql.Sync'
}
For ConnectToSource.SqlServer, use:
{
input: {
checkPermissionsGroup: 'string'
collectAgentJobs: bool
collectDatabases: bool
collectLogins: bool
collectTdeCertificateInfo: bool
encryptedKeyForSecureFields: 'string'
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
validateSsisCatalogOnly: bool
}
taskId: 'string'
taskType: 'ConnectToSource.SqlServer'
}
For ConnectToSource.SqlServer.Sync, use:
{
input: {
checkPermissionsGroup: 'string'
collectAgentJobs: bool
collectDatabases: bool
collectLogins: bool
collectTdeCertificateInfo: bool
encryptedKeyForSecureFields: 'string'
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
validateSsisCatalogOnly: bool
}
taskType: 'ConnectToSource.SqlServer.Sync'
}
For ConnectToTarget.AzureDbForMySql, use:
{
input: {
isOfflineMigration: bool
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverName: 'string'
type: 'string'
userName: 'string'
}
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverName: 'string'
type: 'string'
userName: 'string'
}
}
taskType: 'ConnectToTarget.AzureDbForMySql'
}
For ConnectToTarget.AzureDbForPostgreSql.Sync, use:
{
input: {
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
databaseName: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
databaseName: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
}
taskType: 'ConnectToTarget.AzureDbForPostgreSql.Sync'
}
For ConnectToTarget.AzureSqlDbMI, use:
{
input: {
collectAgentJobs: bool
collectLogins: bool
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
validateSsisCatalogOnly: bool
}
taskType: 'ConnectToTarget.AzureSqlDbMI'
}
For ConnectToTarget.AzureSqlDbMI.Sync.LRS, use:
{
input: {
azureApp: {
appKey: 'string'
applicationId: 'string'
ignoreAzurePermissions: bool
tenantId: 'string'
}
targetConnectionInfo: {
managedInstanceResourceId: 'string'
password: 'string'
type: 'string'
userName: 'string'
}
}
taskType: 'ConnectToTarget.AzureSqlDbMI.Sync.LRS'
}
For ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync, use:
{
input: {
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
databaseName: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
}
taskType: 'ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync'
}
For ConnectToTarget.SqlDb, use:
{
createdOn: 'string'
input: {
queryObjectCounts: bool
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
}
taskType: 'ConnectToTarget.SqlDb'
}
For ConnectToTarget.SqlDb.Sync, use:
{
input: {
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
}
taskType: 'ConnectToTarget.SqlDb.Sync'
}
For GetTDECertificates.Sql, use:
{
input: {
backupFileShare: {
password: 'string'
path: 'string'
userName: 'string'
}
connectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
selectedCertificates: [
{
certificateName: 'string'
password: 'string'
}
]
}
taskType: 'GetTDECertificates.Sql'
}
For GetUserTables.AzureSqlDb.Sync, use:
{
input: {
selectedSourceDatabases: [
'string'
]
selectedTargetDatabases: [
'string'
]
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
}
taskType: 'GetUserTables.AzureSqlDb.Sync'
}
For GetUserTables.Sql, use:
{
input: {
connectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
encryptedKeyForSecureFields: 'string'
selectedDatabases: [
'string'
]
}
taskId: 'string'
taskType: 'GetUserTables.Sql'
}
For GetUserTablesMySql, use:
{
input: {
connectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverName: 'string'
type: 'string'
userName: 'string'
}
selectedDatabases: [
'string'
]
}
taskType: 'GetUserTablesMySql'
}
For GetUserTablesOracle, use:
{
input: {
connectionInfo: {
authentication: 'string'
dataSource: 'string'
password: 'string'
port: int
serverName: 'string'
serverVersion: 'string'
type: 'string'
userName: 'string'
}
selectedSchemas: [
'string'
]
}
taskType: 'GetUserTablesOracle'
}
For GetUserTablesPostgreSql, use:
{
input: {
connectionInfo: {
additionalSettings: 'string'
authentication: 'string'
databaseName: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
selectedDatabases: [
'string'
]
}
taskType: 'GetUserTablesPostgreSql'
}
For Migrate.MongoDb, use:
{
input: {
boostRUs: int
databases: {
{customized property}: {
collections: {
{customized property}: {
canDelete: bool
shardKey: {
fields: [
{
name: 'string'
order: 'string'
}
]
isUnique: bool
}
targetRUs: int
}
}
targetRUs: int
}
}
replication: 'string'
source: {
additionalSettings: 'string'
authentication: 'string'
connectionString: 'string'
dataSource: 'string'
encryptConnection: bool
enforceSSL: bool
password: 'string'
port: int
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
target: {
additionalSettings: 'string'
authentication: 'string'
connectionString: 'string'
dataSource: 'string'
encryptConnection: bool
enforceSSL: bool
password: 'string'
port: int
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
throttling: {
maxParallelism: int
minFreeCpu: int
minFreeMemoryMb: int
}
}
taskType: 'Migrate.MongoDb'
}
For Migrate.MySql.AzureDbForMySql, use:
{
input: {
encryptedKeyForSecureFields: 'string'
makeSourceServerReadOnly: bool
optionalAgentSettings: {
{customized property}: 'string'
}
selectedDatabases: [
{
name: 'string'
tableMap: {
{customized property}: 'string'
}
targetDatabaseName: 'string'
}
]
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverName: 'string'
type: 'string'
userName: 'string'
}
startedOn: 'string'
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverName: 'string'
type: 'string'
userName: 'string'
}
}
isCloneable: bool
taskId: 'string'
taskType: 'Migrate.MySql.AzureDbForMySql'
}
For Migrate.MySql.AzureDbForMySql.Sync, use:
{
input: {
selectedDatabases: [
{
migrationSetting: {
{customized property}: 'string'
}
name: 'string'
sourceSetting: {
{customized property}: 'string'
}
tableMap: {
{customized property}: 'string'
}
targetDatabaseName: 'string'
targetSetting: {
{customized property}: 'string'
}
}
]
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverName: 'string'
type: 'string'
userName: 'string'
}
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverName: 'string'
type: 'string'
userName: 'string'
}
}
taskType: 'Migrate.MySql.AzureDbForMySql.Sync'
}
For Migrate.Oracle.AzureDbForPostgreSql.Sync, use:
{
input: {
selectedDatabases: [
{
caseManipulation: 'string'
migrationSetting: {
{customized property}: 'string'
}
name: 'string'
schemaName: 'string'
sourceSetting: {
{customized property}: 'string'
}
tableMap: {
{customized property}: 'string'
}
targetDatabaseName: 'string'
targetSetting: {
{customized property}: 'string'
}
}
]
sourceConnectionInfo: {
authentication: 'string'
dataSource: 'string'
password: 'string'
port: int
serverName: 'string'
serverVersion: 'string'
type: 'string'
userName: 'string'
}
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
databaseName: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
}
taskType: 'Migrate.Oracle.AzureDbForPostgreSql.Sync'
}
For Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2, use:
{
createdOn: 'string'
input: {
encryptedKeyForSecureFields: 'string'
selectedDatabases: [
{
migrationSetting: {
{customized property}: any(...)
}
name: 'string'
selectedTables: [
{
name: 'string'
}
]
sourceSetting: {
{customized property}: 'string'
}
targetDatabaseName: 'string'
targetSetting: {
{customized property}: 'string'
}
}
]
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
databaseName: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
databaseName: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
}
isCloneable: bool
taskId: 'string'
taskType: 'Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2'
}
For Migrate.SqlServer.AzureSqlDb.Sync, use:
{
input: {
selectedDatabases: [
{
id: 'string'
migrationSetting: {
{customized property}: 'string'
}
name: 'string'
schemaName: 'string'
sourceSetting: {
{customized property}: 'string'
}
tableMap: {
{customized property}: 'string'
}
targetDatabaseName: 'string'
targetSetting: {
{customized property}: 'string'
}
}
]
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
validationOptions: {
enableDataIntegrityValidation: bool
enableQueryAnalysisValidation: bool
enableSchemaValidation: bool
}
}
taskType: 'Migrate.SqlServer.AzureSqlDb.Sync'
}
For Migrate.SqlServer.AzureSqlDbMI, use:
{
createdOn: 'string'
input: {
aadDomainName: 'string'
backupBlobShare: {
sasUri: 'string'
}
backupFileShare: {
password: 'string'
path: 'string'
userName: 'string'
}
backupMode: 'string'
encryptedKeyForSecureFields: 'string'
selectedAgentJobs: [
'string'
]
selectedDatabases: [
{
backupFilePaths: [
'string'
]
backupFileShare: {
password: 'string'
path: 'string'
userName: 'string'
}
id: 'string'
name: 'string'
restoreDatabaseName: 'string'
}
]
selectedLogins: [
'string'
]
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
startedOn: 'string'
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
}
isCloneable: bool
parentTaskId: 'string'
taskId: 'string'
taskType: 'Migrate.SqlServer.AzureSqlDbMI'
}
For Migrate.SqlServer.AzureSqlDbMI.Sync.LRS, use:
{
createdOn: 'string'
input: {
azureApp: {
appKey: 'string'
applicationId: 'string'
ignoreAzurePermissions: bool
tenantId: 'string'
}
backupFileShare: {
password: 'string'
path: 'string'
userName: 'string'
}
numberOfParallelDatabaseMigrations: int
selectedDatabases: [
{
backupFilePaths: [
'string'
]
backupFileShare: {
password: 'string'
path: 'string'
userName: 'string'
}
id: 'string'
name: 'string'
restoreDatabaseName: 'string'
}
]
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
storageResourceId: 'string'
targetConnectionInfo: {
managedInstanceResourceId: 'string'
password: 'string'
type: 'string'
userName: 'string'
}
}
taskType: 'Migrate.SqlServer.AzureSqlDbMI.Sync.LRS'
}
For Migrate.SqlServer.SqlDb, use:
{
createdOn: 'string'
input: {
encryptedKeyForSecureFields: 'string'
selectedDatabases: [
{
id: 'string'
makeSourceDbReadOnly: bool
name: 'string'
schemaSetting: any(...)
tableMap: {
{customized property}: 'string'
}
targetDatabaseName: 'string'
}
]
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
startedOn: 'string'
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
validationOptions: {
enableDataIntegrityValidation: bool
enableQueryAnalysisValidation: bool
enableSchemaValidation: bool
}
}
isCloneable: bool
taskId: 'string'
taskType: 'Migrate.SqlServer.SqlDb'
}
For Migrate.Ssis, use:
{
input: {
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
ssisMigrationInfo: {
environmentOverwriteOption: 'string'
projectOverwriteOption: 'string'
ssisStoreType: 'string'
}
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
}
taskType: 'Migrate.Ssis'
}
For MigrateSchemaSqlServerSqlDb, use:
{
createdOn: 'string'
input: {
encryptedKeyForSecureFields: 'string'
selectedDatabases: [
{
id: 'string'
name: 'string'
schemaSetting: {
fileId: 'string'
fileName: 'string'
schemaOption: 'string'
}
targetDatabaseName: 'string'
}
]
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
startedOn: 'string'
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
}
isCloneable: bool
taskId: 'string'
taskType: 'MigrateSchemaSqlServerSqlDb'
}
For Service.Check.OCI, use:
{
input: {
serverVersion: 'string'
}
taskType: 'Service.Check.OCI'
}
For Service.Install.OCI, use:
{
input: {
driverPackageName: 'string'
}
taskType: 'Service.Install.OCI'
}
For Service.Upload.OCI, use:
{
input: {
driverShare: {
password: 'string'
path: 'string'
userName: 'string'
}
}
taskType: 'Service.Upload.OCI'
}
For Validate.MongoDb, use:
{
input: {
boostRUs: int
databases: {
{customized property}: {
collections: {
{customized property}: {
canDelete: bool
shardKey: {
fields: [
{
name: 'string'
order: 'string'
}
]
isUnique: bool
}
targetRUs: int
}
}
targetRUs: int
}
}
replication: 'string'
source: {
additionalSettings: 'string'
authentication: 'string'
connectionString: 'string'
dataSource: 'string'
encryptConnection: bool
enforceSSL: bool
password: 'string'
port: int
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
target: {
additionalSettings: 'string'
authentication: 'string'
connectionString: 'string'
dataSource: 'string'
encryptConnection: bool
enforceSSL: bool
password: 'string'
port: int
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
throttling: {
maxParallelism: int
minFreeCpu: int
minFreeMemoryMb: int
}
}
taskType: 'Validate.MongoDb'
}
For Validate.Oracle.AzureDbPostgreSql.Sync, use:
{
input: {
selectedDatabases: [
{
caseManipulation: 'string'
migrationSetting: {
{customized property}: 'string'
}
name: 'string'
schemaName: 'string'
sourceSetting: {
{customized property}: 'string'
}
tableMap: {
{customized property}: 'string'
}
targetDatabaseName: 'string'
targetSetting: {
{customized property}: 'string'
}
}
]
sourceConnectionInfo: {
authentication: 'string'
dataSource: 'string'
password: 'string'
port: int
serverName: 'string'
serverVersion: 'string'
type: 'string'
userName: 'string'
}
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
databaseName: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
port: int
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
}
taskType: 'Validate.Oracle.AzureDbPostgreSql.Sync'
}
For ValidateMigrationInput.SqlServer.AzureSqlDbMI, use:
{
input: {
backupBlobShare: {
sasUri: 'string'
}
backupFileShare: {
password: 'string'
path: 'string'
userName: 'string'
}
backupMode: 'string'
selectedDatabases: [
{
backupFilePaths: [
'string'
]
backupFileShare: {
password: 'string'
path: 'string'
userName: 'string'
}
id: 'string'
name: 'string'
restoreDatabaseName: 'string'
}
]
selectedLogins: [
'string'
]
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
}
taskType: 'ValidateMigrationInput.SqlServer.AzureSqlDbMI'
}
For ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS, use:
{
input: {
azureApp: {
appKey: 'string'
applicationId: 'string'
ignoreAzurePermissions: bool
tenantId: 'string'
}
backupFileShare: {
password: 'string'
path: 'string'
userName: 'string'
}
selectedDatabases: [
{
backupFilePaths: [
'string'
]
backupFileShare: {
password: 'string'
path: 'string'
userName: 'string'
}
id: 'string'
name: 'string'
restoreDatabaseName: 'string'
}
]
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
storageResourceId: 'string'
targetConnectionInfo: {
managedInstanceResourceId: 'string'
password: 'string'
type: 'string'
userName: 'string'
}
}
taskType: 'ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS'
}
For ValidateMigrationInput.SqlServer.SqlDb.Sync, use:
{
input: {
selectedDatabases: [
{
id: 'string'
migrationSetting: {
{customized property}: 'string'
}
name: 'string'
schemaName: 'string'
sourceSetting: {
{customized property}: 'string'
}
tableMap: {
{customized property}: 'string'
}
targetDatabaseName: 'string'
targetSetting: {
{customized property}: 'string'
}
}
]
sourceConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
targetConnectionInfo: {
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
password: 'string'
platform: 'string'
port: int
resourceId: 'string'
serverBrandVersion: 'string'
serverName: 'string'
serverVersion: 'string'
trustServerCertificate: bool
type: 'string'
userName: 'string'
}
}
taskType: 'ValidateMigrationInput.SqlServer.SqlDb.Sync'
}
Property Values
Microsoft.DataMigration/services/serviceTasks
| Name |
Description |
Value |
| etag |
HTTP strong entity tag value. This is ignored if submitted. |
string |
| name |
The resource name |
string (required) |
| parent |
In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource.
For more information, see Child resource outside parent resource. |
Symbolic name for resource of type: services |
| properties |
Custom task properties |
ProjectTaskProperties |
AzureActiveDirectoryApp
| Name |
Description |
Value |
| appKey |
Key used to authenticate to the Azure Active Directory Application |
string |
| applicationId |
Application ID of the Azure Active Directory Application |
string |
| ignoreAzurePermissions |
Ignore checking azure permissions on the AAD app |
bool |
| tenantId |
Tenant id of the customer |
string |
BlobShare
| Name |
Description |
Value |
| sasUri |
SAS URI of Azure Storage Account Container. |
string |
| Name |
Description |
Value |
| serverVersion |
Version of the source server to check against. Optional. |
string |
CheckOCIDriverTaskProperties
| Name |
Description |
Value |
| input |
Input for the service task to check for OCI drivers. |
CheckOCIDriverTaskInput |
| taskType |
Task type. |
'Service.Check.OCI' (required) |
ConnectToMongoDbTaskProperties
| Name |
Description |
Value |
| input |
Describes a connection to a MongoDB data source |
MongoDbConnectionInfo |
| taskType |
Task type. |
'Connect.MongoDb' (required) |
| Name |
Description |
Value |
| checkPermissionsGroup |
Permission group for validations |
'Default' 'MigrationFromMySQLToAzureDBForMySQL' 'MigrationFromSqlServerToAzureDB' 'MigrationFromSqlServerToAzureMI' 'MigrationFromSqlServerToAzureVM' |
| isOfflineMigration |
Flag for whether or not the migration is offline |
bool |
| sourceConnectionInfo |
Information for connecting to MySQL source |
MySqlConnectionInfo (required) |
| targetPlatform |
Target Platform for the migration |
'AzureDbForMySQL' 'SqlServer' |
ConnectToSourceMySqlTaskProperties
| Name |
Description |
Value |
| sourceConnectionInfo |
Information for connecting to Oracle source |
OracleConnectionInfo (required) |
ConnectToSourceOracleSyncTaskProperties
ConnectToSourcePostgreSqlSyncTaskInput
| Name |
Description |
Value |
| sourceConnectionInfo |
Connection information for source PostgreSQL server |
PostgreSqlConnectionInfo (required) |
ConnectToSourcePostgreSqlSyncTaskProperties
ConnectToSourceSqlServerSyncTaskProperties
| Name |
Description |
Value |
| checkPermissionsGroup |
Permission group for validations |
'Default' 'MigrationFromMySQLToAzureDBForMySQL' 'MigrationFromSqlServerToAzureDB' 'MigrationFromSqlServerToAzureMI' 'MigrationFromSqlServerToAzureVM' |
| collectAgentJobs |
Flag for whether to collect agent jobs from source server. |
bool |
| collectDatabases |
Flag for whether to collect databases from source server. |
bool |
| collectLogins |
Flag for whether to collect logins from source server. |
bool |
| collectTdeCertificateInfo |
Flag for whether to collect TDE Certificate names from source server. |
bool |
| encryptedKeyForSecureFields |
encrypted key for secure fields |
string |
| sourceConnectionInfo |
Connection information for Source SQL Server |
SqlConnectionInfo (required) |
| validateSsisCatalogOnly |
Flag for whether to validate SSIS catalog is reachable on the source server. |
bool |
ConnectToSourceSqlServerTaskProperties
| Name |
Description |
Value |
| isOfflineMigration |
Flag for whether or not the migration is offline |
bool |
| sourceConnectionInfo |
Connection information for source MySQL server |
MySqlConnectionInfo (required) |
| targetConnectionInfo |
Connection information for target Azure Database for MySQL server |
MySqlConnectionInfo (required) |
ConnectToTargetAzureDbForPostgreSqlSyncTaskInput
| Name |
Description |
Value |
| sourceConnectionInfo |
Connection information for source PostgreSQL server |
PostgreSqlConnectionInfo (required) |
| targetConnectionInfo |
Connection information for target Azure Database for PostgreSQL server |
PostgreSqlConnectionInfo (required) |
ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties
ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput
| Name |
Description |
Value |
| targetConnectionInfo |
Connection information for target Azure Database for PostgreSQL server |
PostgreSqlConnectionInfo (required) |
ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties
| Name |
Description |
Value |
| sourceConnectionInfo |
Connection information for source SQL Server |
SqlConnectionInfo (required) |
| targetConnectionInfo |
Connection information for target SQL DB |
SqlConnectionInfo (required) |
ConnectToTargetSqlDbSyncTaskProperties
| Name |
Description |
Value |
| queryObjectCounts |
Boolean flag indicating whether to query object counts for each database on the target server |
bool |
| targetConnectionInfo |
Connection information for target SQL DB |
SqlConnectionInfo (required) |
ConnectToTargetSqlDbTaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
ConnectToTargetSqlDbTaskInput |
| taskType |
Task type. |
'ConnectToTarget.SqlDb' (required) |
| Name |
Description |
Value |
| azureApp |
Azure Active Directory Application the DMS (classic) instance will use to connect to the target instance of Azure SQL Database Managed Instance and the Azure Storage Account |
AzureActiveDirectoryApp (required) |
| targetConnectionInfo |
Connection information for Azure SQL Database Managed Instance |
MiSqlConnectionInfo (required) |
ConnectToTargetSqlMISyncTaskProperties
| Name |
Description |
Value |
| collectAgentJobs |
Flag for whether to collect agent jobs from target SQL MI server. |
bool |
| collectLogins |
Flag for whether to collect logins from target SQL MI server. |
bool |
| targetConnectionInfo |
Connection information for target SQL Server |
SqlConnectionInfo (required) |
| validateSsisCatalogOnly |
Flag for whether to validate SSIS catalog is reachable on the target SQL MI server. |
bool |
ConnectToTargetSqlMITaskProperties
FileShare
| Name |
Description |
Value |
| password |
Password credential used to connect to the share location. |
string |
| path |
The folder path for this share. |
string (required) |
| userName |
User name credential to connect to the share location |
string |
| Name |
Description |
Value |
| backupFileShare |
Backup file share information for file share to be used for temporarily storing files. |
FileShare (required) |
| connectionInfo |
Connection information for SQL Server |
SqlConnectionInfo (required) |
| selectedCertificates |
List containing certificate names and corresponding password to use for encrypting the exported certificate. |
SelectedCertificateInput[] (required) |
GetTdeCertificatesSqlTaskProperties
| Name |
Description |
Value |
| connectionInfo |
Connection information for SQL Server |
MySqlConnectionInfo (required) |
| selectedDatabases |
List of database names to collect tables for |
string[] (required) |
GetUserTablesMySqlTaskProperties
| Name |
Description |
Value |
| connectionInfo |
Information for connecting to Oracle source |
OracleConnectionInfo (required) |
| selectedSchemas |
List of Oracle schemas for which to collect tables |
string[] (required) |
GetUserTablesOracleTaskProperties
GetUserTablesPostgreSqlTaskInput
| Name |
Description |
Value |
| connectionInfo |
Information for connecting to PostgreSQL source |
PostgreSqlConnectionInfo (required) |
| selectedDatabases |
List of PostgreSQL databases for which to collect tables |
string[] (required) |
GetUserTablesPostgreSqlTaskProperties
| Name |
Description |
Value |
| selectedSourceDatabases |
List of source database names to collect tables for |
string[] (required) |
| selectedTargetDatabases |
List of target database names to collect tables for |
string[] (required) |
| sourceConnectionInfo |
Connection information for SQL Server |
SqlConnectionInfo (required) |
| targetConnectionInfo |
Connection information for SQL DB |
SqlConnectionInfo (required) |
GetUserTablesSqlSyncTaskProperties
| Name |
Description |
Value |
| connectionInfo |
Connection information for SQL Server |
SqlConnectionInfo (required) |
| encryptedKeyForSecureFields |
encrypted key for secure fields |
string |
| selectedDatabases |
List of database names to collect tables for |
string[] (required) |
GetUserTablesSqlTaskProperties
| Name |
Description |
Value |
| input |
Task input |
GetUserTablesSqlTaskInput |
| taskId |
Task id |
string |
| taskType |
Task type. |
'GetUserTables.Sql' (required) |
| Name |
Description |
Value |
| driverPackageName |
Name of the uploaded driver package to install. |
string |
InstallOCIDriverTaskProperties
| Name |
Description |
Value |
| input |
Input for the service task to install an OCI driver. |
InstallOCIDriverTaskInput |
| taskType |
Task type. |
'Service.Install.OCI' (required) |
MigrateMongoDbTaskProperties
| Name |
Description |
Value |
| input |
Describes how a MongoDB data migration should be performed |
MongoDbMigrationSettings |
| taskType |
Task type. |
'Migrate.MongoDb' (required) |
| Name |
Description |
Value |
| input |
Task input |
MigrateMySqlAzureDbForMySqlOfflineTaskInput |
| isCloneable |
whether the task can be cloned or not |
bool |
| taskId |
Task id |
string |
| taskType |
Task type. |
'Migrate.MySql.AzureDbForMySql' (required) |
MigrateOracleAzureDbForPostgreSqlSyncTaskProperties
MigrateOracleAzureDbPostgreSqlSyncDatabaseInput
MigrateOracleAzureDbPostgreSqlSyncDatabaseInputMigrationSetting
MigrateOracleAzureDbPostgreSqlSyncDatabaseInputSourceSetting
MigrateOracleAzureDbPostgreSqlSyncDatabaseInputTableMap
MigrateOracleAzureDbPostgreSqlSyncDatabaseInputTargetSetting
MigrateOracleAzureDbPostgreSqlSyncTaskInput
MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput
MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInputMigrationSetting
MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInputSourceSetting
MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInputTargetSetting
MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseTableInput
| Name |
Description |
Value |
| name |
Name of the table to migrate |
string |
MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput
MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput |
| isCloneable |
whether the task can be cloned or not |
bool |
| taskId |
task id |
string |
| taskType |
Task type. |
'Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2' (required) |
| Name |
Description |
Value |
| id |
Id of the source database |
string |
| name |
Name of source database |
string |
| schemaSetting |
Database schema migration settings |
SchemaMigrationSetting |
| targetDatabaseName |
Name of target database |
string |
| Name |
Description |
Value |
| encryptedKeyForSecureFields |
encrypted key for secure fields |
string |
| selectedDatabases |
Databases to migrate |
MigrateSchemaSqlServerSqlDbDatabaseInput[] (required) |
| sourceConnectionInfo |
Information for connecting to source |
SqlConnectionInfo (required) |
| startedOn |
Migration start time |
string |
| targetConnectionInfo |
Information for connecting to target |
SqlConnectionInfo (required) |
MigrateSchemaSqlServerSqlDbTaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
MigrateSchemaSqlServerSqlDbTaskInput |
| isCloneable |
whether the task can be cloned or not |
bool |
| taskId |
Task id |
string |
| taskType |
Task type. |
'MigrateSchemaSqlServerSqlDb' (required) |
| Name |
Description |
Value |
| id |
id of the database |
string |
| makeSourceDbReadOnly |
Whether to set database read only before migration |
bool |
| name |
Name of the database |
string |
| schemaSetting |
Settings selected for DB schema migration. |
any |
| tableMap |
Mapping of source to target tables |
MigrateSqlServerSqlDbDatabaseInputTableMap |
| targetDatabaseName |
Name of target database. Note: Target database will be truncated before starting migration. |
string |
MigrateSqlServerSqlDbSyncTaskProperties
| Name |
Description |
Value |
| encryptedKeyForSecureFields |
encrypted key for secure fields |
string |
| selectedDatabases |
Databases to migrate |
MigrateSqlServerSqlDbDatabaseInput[] (required) |
| sourceConnectionInfo |
Information for connecting to source |
SqlConnectionInfo (required) |
| startedOn |
Date and time relative to UTC when the migration was started on |
string |
| targetConnectionInfo |
Information for connecting to target |
SqlConnectionInfo (required) |
| validationOptions |
Options for enabling various post migration validations. Available options, 1.) Data Integrity Check: Performs a checksum based comparison on source and target tables after the migration to ensure the correctness of the data. 2.) Schema Validation: Performs a thorough schema comparison between the source and target tables and provides a list of differences between the source and target database, 3.) Query Analysis: Executes a set of queries picked up automatically either from the Query Plan Cache or Query Store and execute them and compares the execution time between the source and target database. |
MigrationValidationOptions |
MigrateSqlServerSqlDbTaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
MigrateSqlServerSqlDbTaskInput |
| isCloneable |
whether the task can be cloned or not |
bool |
| taskId |
task id |
string |
| taskType |
Task type. |
'Migrate.SqlServer.SqlDb' (required) |
| Name |
Description |
Value |
| backupFilePaths |
The list of backup files to be used in case of existing backups. |
string[] |
| backupFileShare |
Backup file share information for backing up this database. |
FileShare |
| id |
id of the database |
string |
| name |
Name of the database |
string (required) |
| restoreDatabaseName |
Name of the database at destination |
string (required) |
| Name |
Description |
Value |
| azureApp |
Azure Active Directory Application the DMS (classic) instance will use to connect to the target instance of Azure SQL Database Managed Instance and the Azure Storage Account |
AzureActiveDirectoryApp (required) |
| backupFileShare |
Backup file share information for all selected databases. |
FileShare |
| numberOfParallelDatabaseMigrations |
Number of database migrations to start in parallel |
int |
| selectedDatabases |
Databases to migrate |
MigrateSqlServerSqlMIDatabaseInput[] (required) |
| sourceConnectionInfo |
Connection information for source SQL Server |
SqlConnectionInfo (required) |
| storageResourceId |
Fully qualified resourceId of storage |
string (required) |
| targetConnectionInfo |
Connection information for Azure SQL Database Managed Instance |
MiSqlConnectionInfo (required) |
MigrateSqlServerSqlMISyncTaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
MigrateSqlServerSqlMISyncTaskInput |
| taskType |
Task type. |
'Migrate.SqlServer.AzureSqlDbMI.Sync.LRS' (required) |
| Name |
Description |
Value |
| aadDomainName |
Azure Active Directory domain name in the format of 'contoso.com' for federated Azure AD or 'contoso.onmicrosoft.com' for managed domain, required if and only if Windows logins are selected |
string |
| backupBlobShare |
SAS URI of Azure Storage Account Container to be used for storing backup files. |
BlobShare (required) |
| backupFileShare |
Backup file share information for all selected databases. |
FileShare |
| backupMode |
Backup Mode to specify whether to use existing backup or create new backup. If using existing backups, backup file paths are required to be provided in selectedDatabases. |
'CreateBackup' 'ExistingBackup' |
| encryptedKeyForSecureFields |
encrypted key for secure fields |
string |
| selectedAgentJobs |
Agent Jobs to migrate. |
string[] |
| selectedDatabases |
Databases to migrate |
MigrateSqlServerSqlMIDatabaseInput[] (required) |
| selectedLogins |
Logins to migrate. |
string[] |
| sourceConnectionInfo |
Information for connecting to source |
SqlConnectionInfo (required) |
| startedOn |
Date and time relative to UTC when the migration was started on |
string |
| targetConnectionInfo |
Information for connecting to target |
SqlConnectionInfo (required) |
MigrateSqlServerSqlMITaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
MigrateSqlServerSqlMITaskInput |
| isCloneable |
whether the task can be cloned or not |
bool |
| parentTaskId |
parent task id |
string |
| taskId |
task id |
string |
| taskType |
Task type. |
'Migrate.SqlServer.AzureSqlDbMI' (required) |
| Name |
Description |
Value |
| sourceConnectionInfo |
Information for connecting to source |
SqlConnectionInfo (required) |
| ssisMigrationInfo |
SSIS package migration information. |
SsisMigrationInfo (required) |
| targetConnectionInfo |
Information for connecting to target |
SqlConnectionInfo (required) |
MigrateSsisTaskProperties
| Name |
Description |
Value |
| input |
Task input |
MigrateSsisTaskInput |
| taskType |
Task type. |
'Migrate.Ssis' (required) |
MigrationValidationOptions
| Name |
Description |
Value |
| enableDataIntegrityValidation |
Allows to perform a checksum based data integrity validation between source and target for the selected database / tables . |
bool |
| enableQueryAnalysisValidation |
Allows to perform a quick and intelligent query analysis by retrieving queries from the source database and executes them in the target. The result will have execution statistics for executions in source and target databases for the extracted queries. |
bool |
| enableSchemaValidation |
Allows to compare the schema information between source and target. |
bool |
MiSqlConnectionInfo
| Name |
Description |
Value |
| managedInstanceResourceId |
Resource id for Azure SQL database Managed instance |
string (required) |
| password |
Password credential. |
string |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
MongoDbCollectionSettings
| Name |
Description |
Value |
| canDelete |
Whether the migrator is allowed to drop the target collection in the course of performing a migration. The default is true. |
bool |
| shardKey |
Describes a MongoDB shard key |
MongoDbShardKeySetting |
| targetRUs |
The RUs that should be configured on a CosmosDB target, or null to use the default. This has no effect on non-CosmosDB targets. |
int |
MongoDbConnectionInfo
| Name |
Description |
Value |
| additionalSettings |
Additional connection settings |
string |
| authentication |
Authentication type to use for connection |
'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| connectionString |
A MongoDB connection string or blob container URL. The user name and password can be specified here or in the userName and password properties |
string (required) |
| dataSource |
Data source |
string |
| encryptConnection |
Whether to encrypt the connection |
bool |
| enforceSSL |
|
bool |
| password |
Password credential. |
string |
| port |
port for server |
int |
| serverBrandVersion |
server brand version |
string |
| serverName |
name of the server |
string |
| serverVersion |
server version |
string |
| trustServerCertificate |
Whether to trust the server certificate |
bool |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
MongoDbDatabaseSettings
| Name |
Description |
Value |
| collections |
The collections on the source database to migrate to the target. The keys are the unqualified names of the collections. |
MongoDbDatabaseSettingsCollections (required) |
| targetRUs |
The RUs that should be configured on a CosmosDB target, or null to use the default, or 0 if throughput should not be provisioned for the database. This has no effect on non-CosmosDB targets. |
int |
MongoDbDatabaseSettingsCollections
MongoDbMigrationSettings
| Name |
Description |
Value |
| boostRUs |
The RU limit on a CosmosDB target that collections will be temporarily increased to (if lower) during the initial copy of a migration, from 10,000 to 1,000,000, or 0 to use the default boost (which is generally the maximum), or null to not boost the RUs. This setting has no effect on non-CosmosDB targets. |
int |
| databases |
The databases on the source cluster to migrate to the target. The keys are the names of the databases. |
MongoDbMigrationSettingsDatabases (required) |
| replication |
Describes how changes will be replicated from the source to the target. The default is OneTime. |
'Continuous' 'Disabled' 'OneTime' |
| source |
Settings used to connect to the source cluster |
MongoDbConnectionInfo (required) |
| target |
Settings used to connect to the target cluster |
MongoDbConnectionInfo (required) |
| throttling |
Settings used to limit the resource usage of the migration |
MongoDbThrottlingSettings |
MongoDbMigrationSettingsDatabases
MongoDbShardKeyField
| Name |
Description |
Value |
| name |
The name of the field |
string (required) |
| order |
The field ordering |
'Forward' 'Hashed' 'Reverse' (required) |
MongoDbShardKeySetting
| Name |
Description |
Value |
| fields |
The fields within the shard key |
MongoDbShardKeyField[] (required) |
| isUnique |
Whether the shard key is unique |
bool |
MongoDbThrottlingSettings
| Name |
Description |
Value |
| maxParallelism |
The maximum number of work items (e.g. collection copies) that will be processed in parallel |
int |
| minFreeCpu |
The percentage of CPU time that the migrator will try to avoid using, from 0 to 100 |
int |
| minFreeMemoryMb |
The number of megabytes of RAM that the migrator will try to avoid using |
int |
MySqlConnectionInfo
| Name |
Description |
Value |
| additionalSettings |
Additional connection settings |
string |
| authentication |
Authentication type to use for connection |
'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| dataSource |
Data source |
string |
| encryptConnection |
Whether to encrypt the connection |
bool |
| password |
Password credential. |
string |
| port |
Port for Server |
int (required) |
| serverName |
Name of the server |
string (required) |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
OracleConnectionInfo
| Name |
Description |
Value |
| authentication |
Authentication type to use for connection |
'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| dataSource |
EZConnect or TNSName connection string. |
string (required) |
| password |
Password credential. |
string |
| port |
port for server |
int |
| serverName |
name of the server |
string |
| serverVersion |
server version |
string |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
PostgreSqlConnectionInfo
| Name |
Description |
Value |
| additionalSettings |
Additional connection settings |
string |
| authentication |
Authentication type to use for connection |
'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| databaseName |
Name of the database |
string |
| dataSource |
Data source |
string |
| encryptConnection |
Whether to encrypt the connection |
bool |
| password |
Password credential. |
string |
| port |
Port for Server |
int (required) |
| serverBrandVersion |
server brand version |
string |
| serverName |
Name of the server |
string (required) |
| serverVersion |
server version |
string |
| trustServerCertificate |
Whether to trust the server certificate |
bool |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
ProjectTaskProperties
ProjectTaskPropertiesClientData
SchemaMigrationSetting
| Name |
Description |
Value |
| fileId |
Resource Identifier of a file resource containing the uploaded schema file |
string |
| fileName |
Name of the file resource containing the uploaded schema file |
string |
| schemaOption |
Option on how to migrate the schema |
'ExtractFromSource' 'None' 'UseStorageFile' |
| Name |
Description |
Value |
| certificateName |
Name of certificate to be exported. |
string (required) |
| password |
Password to use for encrypting the exported certificate. |
string (required) |
SqlConnectionInfo
| Name |
Description |
Value |
| additionalSettings |
Additional connection settings |
string |
| authentication |
Authentication type to use for connection |
'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| dataSource |
Data source in the format Protocol:MachineName\SQLServerInstanceName,PortNumber |
string (required) |
| encryptConnection |
Whether to encrypt the connection |
bool |
| password |
Password credential. |
string |
| platform |
Server platform type for connection |
'SqlOnPrem' |
| port |
Port for Server |
int |
| resourceId |
Represents the ID of an HTTP resource represented by an Azure resource provider. |
string |
| serverBrandVersion |
server brand version |
string |
| serverName |
name of the server |
string |
| serverVersion |
server version |
string |
| trustServerCertificate |
Whether to trust the server certificate |
bool |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
SsisMigrationInfo
| Name |
Description |
Value |
| environmentOverwriteOption |
The overwrite option for the SSIS environment migration |
'Ignore' 'Overwrite' |
| projectOverwriteOption |
The overwrite option for the SSIS project migration |
'Ignore' 'Overwrite' |
| ssisStoreType |
The SSIS store type of source, only SSIS catalog is supported now in DMS (classic) |
'SsisCatalog' |
| Name |
Description |
Value |
| driverShare |
File share information for the OCI driver archive. |
FileShare |
UploadOCIDriverTaskProperties
| Name |
Description |
Value |
| input |
Input for the service task to upload an OCI driver. |
UploadOCIDriverTaskInput |
| taskType |
Task type. |
'Service.Upload.OCI' (required) |
| Name |
Description |
Value |
| azureApp |
Azure Active Directory Application the DMS (classic) instance will use to connect to the target instance of Azure SQL Database Managed Instance and the Azure Storage Account |
AzureActiveDirectoryApp (required) |
| backupFileShare |
Backup file share information for all selected databases. |
FileShare |
| selectedDatabases |
Databases to migrate |
MigrateSqlServerSqlMIDatabaseInput[] (required) |
| sourceConnectionInfo |
Connection information for source SQL Server |
SqlConnectionInfo (required) |
| storageResourceId |
Fully qualified resourceId of storage |
string (required) |
| targetConnectionInfo |
Connection information for Azure SQL Database Managed Instance |
MiSqlConnectionInfo (required) |
| Name |
Description |
Value |
| backupBlobShare |
SAS URI of Azure Storage Account Container to be used for storing backup files. |
BlobShare (required) |
| backupFileShare |
Backup file share information for all selected databases. |
FileShare |
| backupMode |
Backup Mode to specify whether to use existing backup or create new backup. |
'CreateBackup' 'ExistingBackup' |
| selectedDatabases |
Databases to migrate |
MigrateSqlServerSqlMIDatabaseInput[] (required) |
| selectedLogins |
Logins to migrate |
string[] |
| sourceConnectionInfo |
Information for connecting to source |
SqlConnectionInfo (required) |
| targetConnectionInfo |
Information for connecting to target |
SqlConnectionInfo (required) |
ValidateMongoDbTaskProperties
| Name |
Description |
Value |
| input |
Describes how a MongoDB data migration should be performed |
MongoDbMigrationSettings |
| taskType |
Task type. |
'Validate.MongoDb' (required) |
ValidateOracleAzureDbForPostgreSqlSyncTaskProperties
| Name |
Description |
Value |
| input |
Input for the task that migrates Oracle databases to Azure Database for PostgreSQL for online migrations |
MigrateOracleAzureDbPostgreSqlSyncTaskInput |
| taskType |
Task type. |
'Validate.Oracle.AzureDbPostgreSql.Sync' (required) |
ARM template resource definition
The services/serviceTasks resource type can be deployed with operations that target:
Usage Examples
To create a Microsoft.DataMigration/services/serviceTasks resource, add the following JSON to your template.
{
"type": "Microsoft.DataMigration/services/serviceTasks",
"apiVersion": "2023-07-15-preview",
"name": "string",
"etag": "string",
"properties": {
"clientData": {
"{customized property}": "string"
},
"taskType": "string"
// For remaining properties, see ProjectTaskProperties objects
}
}
ProjectTaskProperties objects
Set the taskType property to specify the type of object.
For Connect.MongoDb, use:
{
"input": {
"additionalSettings": "string",
"authentication": "string",
"connectionString": "string",
"dataSource": "string",
"encryptConnection": "bool",
"enforceSSL": "bool",
"password": "string",
"port": "int",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"taskType": "Connect.MongoDb"
}
For ConnectToSource.MySql, use:
{
"input": {
"checkPermissionsGroup": "string",
"isOfflineMigration": "bool",
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverName": "string",
"type": "string",
"userName": "string"
},
"targetPlatform": "string"
},
"taskType": "ConnectToSource.MySql"
}
For ConnectToSource.Oracle.Sync, use:
{
"input": {
"sourceConnectionInfo": {
"authentication": "string",
"dataSource": "string",
"password": "string",
"port": "int",
"serverName": "string",
"serverVersion": "string",
"type": "string",
"userName": "string"
}
},
"taskType": "ConnectToSource.Oracle.Sync"
}
For ConnectToSource.PostgreSql.Sync, use:
{
"input": {
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"databaseName": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
}
},
"taskType": "ConnectToSource.PostgreSql.Sync"
}
For ConnectToSource.SqlServer, use:
{
"input": {
"checkPermissionsGroup": "string",
"collectAgentJobs": "bool",
"collectDatabases": "bool",
"collectLogins": "bool",
"collectTdeCertificateInfo": "bool",
"encryptedKeyForSecureFields": "string",
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"validateSsisCatalogOnly": "bool"
},
"taskId": "string",
"taskType": "ConnectToSource.SqlServer"
}
For ConnectToSource.SqlServer.Sync, use:
{
"input": {
"checkPermissionsGroup": "string",
"collectAgentJobs": "bool",
"collectDatabases": "bool",
"collectLogins": "bool",
"collectTdeCertificateInfo": "bool",
"encryptedKeyForSecureFields": "string",
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"validateSsisCatalogOnly": "bool"
},
"taskType": "ConnectToSource.SqlServer.Sync"
}
For ConnectToTarget.AzureDbForMySql, use:
{
"input": {
"isOfflineMigration": "bool",
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverName": "string",
"type": "string",
"userName": "string"
},
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverName": "string",
"type": "string",
"userName": "string"
}
},
"taskType": "ConnectToTarget.AzureDbForMySql"
}
For ConnectToTarget.AzureDbForPostgreSql.Sync, use:
{
"input": {
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"databaseName": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"databaseName": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
}
},
"taskType": "ConnectToTarget.AzureDbForPostgreSql.Sync"
}
For ConnectToTarget.AzureSqlDbMI, use:
{
"input": {
"collectAgentJobs": "bool",
"collectLogins": "bool",
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"validateSsisCatalogOnly": "bool"
},
"taskType": "ConnectToTarget.AzureSqlDbMI"
}
For ConnectToTarget.AzureSqlDbMI.Sync.LRS, use:
{
"input": {
"azureApp": {
"appKey": "string",
"applicationId": "string",
"ignoreAzurePermissions": "bool",
"tenantId": "string"
},
"targetConnectionInfo": {
"managedInstanceResourceId": "string",
"password": "string",
"type": "string",
"userName": "string"
}
},
"taskType": "ConnectToTarget.AzureSqlDbMI.Sync.LRS"
}
For ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync, use:
{
"input": {
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"databaseName": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
}
},
"taskType": "ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync"
}
For ConnectToTarget.SqlDb, use:
{
"createdOn": "string",
"input": {
"queryObjectCounts": "bool",
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
}
},
"taskType": "ConnectToTarget.SqlDb"
}
For ConnectToTarget.SqlDb.Sync, use:
{
"input": {
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
}
},
"taskType": "ConnectToTarget.SqlDb.Sync"
}
For GetTDECertificates.Sql, use:
{
"input": {
"backupFileShare": {
"password": "string",
"path": "string",
"userName": "string"
},
"connectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"selectedCertificates": [
{
"certificateName": "string",
"password": "string"
}
]
},
"taskType": "GetTDECertificates.Sql"
}
For GetUserTables.AzureSqlDb.Sync, use:
{
"input": {
"selectedSourceDatabases": [ "string" ],
"selectedTargetDatabases": [ "string" ],
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
}
},
"taskType": "GetUserTables.AzureSqlDb.Sync"
}
For GetUserTables.Sql, use:
{
"input": {
"connectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"encryptedKeyForSecureFields": "string",
"selectedDatabases": [ "string" ]
},
"taskId": "string",
"taskType": "GetUserTables.Sql"
}
For GetUserTablesMySql, use:
{
"input": {
"connectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverName": "string",
"type": "string",
"userName": "string"
},
"selectedDatabases": [ "string" ]
},
"taskType": "GetUserTablesMySql"
}
For GetUserTablesOracle, use:
{
"input": {
"connectionInfo": {
"authentication": "string",
"dataSource": "string",
"password": "string",
"port": "int",
"serverName": "string",
"serverVersion": "string",
"type": "string",
"userName": "string"
},
"selectedSchemas": [ "string" ]
},
"taskType": "GetUserTablesOracle"
}
For GetUserTablesPostgreSql, use:
{
"input": {
"connectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"databaseName": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"selectedDatabases": [ "string" ]
},
"taskType": "GetUserTablesPostgreSql"
}
For Migrate.MongoDb, use:
{
"input": {
"boostRUs": "int",
"databases": {
"{customized property}": {
"collections": {
"{customized property}": {
"canDelete": "bool",
"shardKey": {
"fields": [
{
"name": "string",
"order": "string"
}
],
"isUnique": "bool"
},
"targetRUs": "int"
}
},
"targetRUs": "int"
}
},
"replication": "string",
"source": {
"additionalSettings": "string",
"authentication": "string",
"connectionString": "string",
"dataSource": "string",
"encryptConnection": "bool",
"enforceSSL": "bool",
"password": "string",
"port": "int",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"target": {
"additionalSettings": "string",
"authentication": "string",
"connectionString": "string",
"dataSource": "string",
"encryptConnection": "bool",
"enforceSSL": "bool",
"password": "string",
"port": "int",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"throttling": {
"maxParallelism": "int",
"minFreeCpu": "int",
"minFreeMemoryMb": "int"
}
},
"taskType": "Migrate.MongoDb"
}
For Migrate.MySql.AzureDbForMySql, use:
{
"input": {
"encryptedKeyForSecureFields": "string",
"makeSourceServerReadOnly": "bool",
"optionalAgentSettings": {
"{customized property}": "string"
},
"selectedDatabases": [
{
"name": "string",
"tableMap": {
"{customized property}": "string"
},
"targetDatabaseName": "string"
}
],
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverName": "string",
"type": "string",
"userName": "string"
},
"startedOn": "string",
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverName": "string",
"type": "string",
"userName": "string"
}
},
"isCloneable": "bool",
"taskId": "string",
"taskType": "Migrate.MySql.AzureDbForMySql"
}
For Migrate.MySql.AzureDbForMySql.Sync, use:
{
"input": {
"selectedDatabases": [
{
"migrationSetting": {
"{customized property}": "string"
},
"name": "string",
"sourceSetting": {
"{customized property}": "string"
},
"tableMap": {
"{customized property}": "string"
},
"targetDatabaseName": "string",
"targetSetting": {
"{customized property}": "string"
}
}
],
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverName": "string",
"type": "string",
"userName": "string"
},
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverName": "string",
"type": "string",
"userName": "string"
}
},
"taskType": "Migrate.MySql.AzureDbForMySql.Sync"
}
For Migrate.Oracle.AzureDbForPostgreSql.Sync, use:
{
"input": {
"selectedDatabases": [
{
"caseManipulation": "string",
"migrationSetting": {
"{customized property}": "string"
},
"name": "string",
"schemaName": "string",
"sourceSetting": {
"{customized property}": "string"
},
"tableMap": {
"{customized property}": "string"
},
"targetDatabaseName": "string",
"targetSetting": {
"{customized property}": "string"
}
}
],
"sourceConnectionInfo": {
"authentication": "string",
"dataSource": "string",
"password": "string",
"port": "int",
"serverName": "string",
"serverVersion": "string",
"type": "string",
"userName": "string"
},
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"databaseName": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
}
},
"taskType": "Migrate.Oracle.AzureDbForPostgreSql.Sync"
}
For Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2, use:
{
"createdOn": "string",
"input": {
"encryptedKeyForSecureFields": "string",
"selectedDatabases": [
{
"migrationSetting": {
"{customized property}": {}
},
"name": "string",
"selectedTables": [
{
"name": "string"
}
],
"sourceSetting": {
"{customized property}": "string"
},
"targetDatabaseName": "string",
"targetSetting": {
"{customized property}": "string"
}
}
],
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"databaseName": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"databaseName": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
}
},
"isCloneable": "bool",
"taskId": "string",
"taskType": "Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2"
}
For Migrate.SqlServer.AzureSqlDb.Sync, use:
{
"input": {
"selectedDatabases": [
{
"id": "string",
"migrationSetting": {
"{customized property}": "string"
},
"name": "string",
"schemaName": "string",
"sourceSetting": {
"{customized property}": "string"
},
"tableMap": {
"{customized property}": "string"
},
"targetDatabaseName": "string",
"targetSetting": {
"{customized property}": "string"
}
}
],
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"validationOptions": {
"enableDataIntegrityValidation": "bool",
"enableQueryAnalysisValidation": "bool",
"enableSchemaValidation": "bool"
}
},
"taskType": "Migrate.SqlServer.AzureSqlDb.Sync"
}
For Migrate.SqlServer.AzureSqlDbMI, use:
{
"createdOn": "string",
"input": {
"aadDomainName": "string",
"backupBlobShare": {
"sasUri": "string"
},
"backupFileShare": {
"password": "string",
"path": "string",
"userName": "string"
},
"backupMode": "string",
"encryptedKeyForSecureFields": "string",
"selectedAgentJobs": [ "string" ],
"selectedDatabases": [
{
"backupFilePaths": [ "string" ],
"backupFileShare": {
"password": "string",
"path": "string",
"userName": "string"
},
"id": "string",
"name": "string",
"restoreDatabaseName": "string"
}
],
"selectedLogins": [ "string" ],
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"startedOn": "string",
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
}
},
"isCloneable": "bool",
"parentTaskId": "string",
"taskId": "string",
"taskType": "Migrate.SqlServer.AzureSqlDbMI"
}
For Migrate.SqlServer.AzureSqlDbMI.Sync.LRS, use:
{
"createdOn": "string",
"input": {
"azureApp": {
"appKey": "string",
"applicationId": "string",
"ignoreAzurePermissions": "bool",
"tenantId": "string"
},
"backupFileShare": {
"password": "string",
"path": "string",
"userName": "string"
},
"numberOfParallelDatabaseMigrations": "int",
"selectedDatabases": [
{
"backupFilePaths": [ "string" ],
"backupFileShare": {
"password": "string",
"path": "string",
"userName": "string"
},
"id": "string",
"name": "string",
"restoreDatabaseName": "string"
}
],
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"storageResourceId": "string",
"targetConnectionInfo": {
"managedInstanceResourceId": "string",
"password": "string",
"type": "string",
"userName": "string"
}
},
"taskType": "Migrate.SqlServer.AzureSqlDbMI.Sync.LRS"
}
For Migrate.SqlServer.SqlDb, use:
{
"createdOn": "string",
"input": {
"encryptedKeyForSecureFields": "string",
"selectedDatabases": [
{
"id": "string",
"makeSourceDbReadOnly": "bool",
"name": "string",
"schemaSetting": {},
"tableMap": {
"{customized property}": "string"
},
"targetDatabaseName": "string"
}
],
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"startedOn": "string",
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"validationOptions": {
"enableDataIntegrityValidation": "bool",
"enableQueryAnalysisValidation": "bool",
"enableSchemaValidation": "bool"
}
},
"isCloneable": "bool",
"taskId": "string",
"taskType": "Migrate.SqlServer.SqlDb"
}
For Migrate.Ssis, use:
{
"input": {
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"ssisMigrationInfo": {
"environmentOverwriteOption": "string",
"projectOverwriteOption": "string",
"ssisStoreType": "string"
},
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
}
},
"taskType": "Migrate.Ssis"
}
For MigrateSchemaSqlServerSqlDb, use:
{
"createdOn": "string",
"input": {
"encryptedKeyForSecureFields": "string",
"selectedDatabases": [
{
"id": "string",
"name": "string",
"schemaSetting": {
"fileId": "string",
"fileName": "string",
"schemaOption": "string"
},
"targetDatabaseName": "string"
}
],
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"startedOn": "string",
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
}
},
"isCloneable": "bool",
"taskId": "string",
"taskType": "MigrateSchemaSqlServerSqlDb"
}
For Service.Check.OCI, use:
{
"input": {
"serverVersion": "string"
},
"taskType": "Service.Check.OCI"
}
For Service.Install.OCI, use:
{
"input": {
"driverPackageName": "string"
},
"taskType": "Service.Install.OCI"
}
For Service.Upload.OCI, use:
{
"input": {
"driverShare": {
"password": "string",
"path": "string",
"userName": "string"
}
},
"taskType": "Service.Upload.OCI"
}
For Validate.MongoDb, use:
{
"input": {
"boostRUs": "int",
"databases": {
"{customized property}": {
"collections": {
"{customized property}": {
"canDelete": "bool",
"shardKey": {
"fields": [
{
"name": "string",
"order": "string"
}
],
"isUnique": "bool"
},
"targetRUs": "int"
}
},
"targetRUs": "int"
}
},
"replication": "string",
"source": {
"additionalSettings": "string",
"authentication": "string",
"connectionString": "string",
"dataSource": "string",
"encryptConnection": "bool",
"enforceSSL": "bool",
"password": "string",
"port": "int",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"target": {
"additionalSettings": "string",
"authentication": "string",
"connectionString": "string",
"dataSource": "string",
"encryptConnection": "bool",
"enforceSSL": "bool",
"password": "string",
"port": "int",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"throttling": {
"maxParallelism": "int",
"minFreeCpu": "int",
"minFreeMemoryMb": "int"
}
},
"taskType": "Validate.MongoDb"
}
For Validate.Oracle.AzureDbPostgreSql.Sync, use:
{
"input": {
"selectedDatabases": [
{
"caseManipulation": "string",
"migrationSetting": {
"{customized property}": "string"
},
"name": "string",
"schemaName": "string",
"sourceSetting": {
"{customized property}": "string"
},
"tableMap": {
"{customized property}": "string"
},
"targetDatabaseName": "string",
"targetSetting": {
"{customized property}": "string"
}
}
],
"sourceConnectionInfo": {
"authentication": "string",
"dataSource": "string",
"password": "string",
"port": "int",
"serverName": "string",
"serverVersion": "string",
"type": "string",
"userName": "string"
},
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"databaseName": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"port": "int",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
}
},
"taskType": "Validate.Oracle.AzureDbPostgreSql.Sync"
}
For ValidateMigrationInput.SqlServer.AzureSqlDbMI, use:
{
"input": {
"backupBlobShare": {
"sasUri": "string"
},
"backupFileShare": {
"password": "string",
"path": "string",
"userName": "string"
},
"backupMode": "string",
"selectedDatabases": [
{
"backupFilePaths": [ "string" ],
"backupFileShare": {
"password": "string",
"path": "string",
"userName": "string"
},
"id": "string",
"name": "string",
"restoreDatabaseName": "string"
}
],
"selectedLogins": [ "string" ],
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
}
},
"taskType": "ValidateMigrationInput.SqlServer.AzureSqlDbMI"
}
For ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS, use:
{
"input": {
"azureApp": {
"appKey": "string",
"applicationId": "string",
"ignoreAzurePermissions": "bool",
"tenantId": "string"
},
"backupFileShare": {
"password": "string",
"path": "string",
"userName": "string"
},
"selectedDatabases": [
{
"backupFilePaths": [ "string" ],
"backupFileShare": {
"password": "string",
"path": "string",
"userName": "string"
},
"id": "string",
"name": "string",
"restoreDatabaseName": "string"
}
],
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"storageResourceId": "string",
"targetConnectionInfo": {
"managedInstanceResourceId": "string",
"password": "string",
"type": "string",
"userName": "string"
}
},
"taskType": "ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS"
}
For ValidateMigrationInput.SqlServer.SqlDb.Sync, use:
{
"input": {
"selectedDatabases": [
{
"id": "string",
"migrationSetting": {
"{customized property}": "string"
},
"name": "string",
"schemaName": "string",
"sourceSetting": {
"{customized property}": "string"
},
"tableMap": {
"{customized property}": "string"
},
"targetDatabaseName": "string",
"targetSetting": {
"{customized property}": "string"
}
}
],
"sourceConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
},
"targetConnectionInfo": {
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"password": "string",
"platform": "string",
"port": "int",
"resourceId": "string",
"serverBrandVersion": "string",
"serverName": "string",
"serverVersion": "string",
"trustServerCertificate": "bool",
"type": "string",
"userName": "string"
}
},
"taskType": "ValidateMigrationInput.SqlServer.SqlDb.Sync"
}
Property Values
Microsoft.DataMigration/services/serviceTasks
| Name |
Description |
Value |
| apiVersion |
The api version |
'2023-07-15-preview' |
| etag |
HTTP strong entity tag value. This is ignored if submitted. |
string |
| name |
The resource name |
string (required) |
| properties |
Custom task properties |
ProjectTaskProperties |
| type |
The resource type |
'Microsoft.DataMigration/services/serviceTasks' |
AzureActiveDirectoryApp
| Name |
Description |
Value |
| appKey |
Key used to authenticate to the Azure Active Directory Application |
string |
| applicationId |
Application ID of the Azure Active Directory Application |
string |
| ignoreAzurePermissions |
Ignore checking azure permissions on the AAD app |
bool |
| tenantId |
Tenant id of the customer |
string |
BlobShare
| Name |
Description |
Value |
| sasUri |
SAS URI of Azure Storage Account Container. |
string |
| Name |
Description |
Value |
| serverVersion |
Version of the source server to check against. Optional. |
string |
CheckOCIDriverTaskProperties
| Name |
Description |
Value |
| input |
Input for the service task to check for OCI drivers. |
CheckOCIDriverTaskInput |
| taskType |
Task type. |
'Service.Check.OCI' (required) |
ConnectToMongoDbTaskProperties
| Name |
Description |
Value |
| input |
Describes a connection to a MongoDB data source |
MongoDbConnectionInfo |
| taskType |
Task type. |
'Connect.MongoDb' (required) |
| Name |
Description |
Value |
| checkPermissionsGroup |
Permission group for validations |
'Default' 'MigrationFromMySQLToAzureDBForMySQL' 'MigrationFromSqlServerToAzureDB' 'MigrationFromSqlServerToAzureMI' 'MigrationFromSqlServerToAzureVM' |
| isOfflineMigration |
Flag for whether or not the migration is offline |
bool |
| sourceConnectionInfo |
Information for connecting to MySQL source |
MySqlConnectionInfo (required) |
| targetPlatform |
Target Platform for the migration |
'AzureDbForMySQL' 'SqlServer' |
ConnectToSourceMySqlTaskProperties
| Name |
Description |
Value |
| sourceConnectionInfo |
Information for connecting to Oracle source |
OracleConnectionInfo (required) |
ConnectToSourceOracleSyncTaskProperties
ConnectToSourcePostgreSqlSyncTaskInput
| Name |
Description |
Value |
| sourceConnectionInfo |
Connection information for source PostgreSQL server |
PostgreSqlConnectionInfo (required) |
ConnectToSourcePostgreSqlSyncTaskProperties
ConnectToSourceSqlServerSyncTaskProperties
| Name |
Description |
Value |
| checkPermissionsGroup |
Permission group for validations |
'Default' 'MigrationFromMySQLToAzureDBForMySQL' 'MigrationFromSqlServerToAzureDB' 'MigrationFromSqlServerToAzureMI' 'MigrationFromSqlServerToAzureVM' |
| collectAgentJobs |
Flag for whether to collect agent jobs from source server. |
bool |
| collectDatabases |
Flag for whether to collect databases from source server. |
bool |
| collectLogins |
Flag for whether to collect logins from source server. |
bool |
| collectTdeCertificateInfo |
Flag for whether to collect TDE Certificate names from source server. |
bool |
| encryptedKeyForSecureFields |
encrypted key for secure fields |
string |
| sourceConnectionInfo |
Connection information for Source SQL Server |
SqlConnectionInfo (required) |
| validateSsisCatalogOnly |
Flag for whether to validate SSIS catalog is reachable on the source server. |
bool |
ConnectToSourceSqlServerTaskProperties
| Name |
Description |
Value |
| isOfflineMigration |
Flag for whether or not the migration is offline |
bool |
| sourceConnectionInfo |
Connection information for source MySQL server |
MySqlConnectionInfo (required) |
| targetConnectionInfo |
Connection information for target Azure Database for MySQL server |
MySqlConnectionInfo (required) |
ConnectToTargetAzureDbForPostgreSqlSyncTaskInput
| Name |
Description |
Value |
| sourceConnectionInfo |
Connection information for source PostgreSQL server |
PostgreSqlConnectionInfo (required) |
| targetConnectionInfo |
Connection information for target Azure Database for PostgreSQL server |
PostgreSqlConnectionInfo (required) |
ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties
ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput
| Name |
Description |
Value |
| targetConnectionInfo |
Connection information for target Azure Database for PostgreSQL server |
PostgreSqlConnectionInfo (required) |
ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties
| Name |
Description |
Value |
| sourceConnectionInfo |
Connection information for source SQL Server |
SqlConnectionInfo (required) |
| targetConnectionInfo |
Connection information for target SQL DB |
SqlConnectionInfo (required) |
ConnectToTargetSqlDbSyncTaskProperties
| Name |
Description |
Value |
| queryObjectCounts |
Boolean flag indicating whether to query object counts for each database on the target server |
bool |
| targetConnectionInfo |
Connection information for target SQL DB |
SqlConnectionInfo (required) |
ConnectToTargetSqlDbTaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
ConnectToTargetSqlDbTaskInput |
| taskType |
Task type. |
'ConnectToTarget.SqlDb' (required) |
| Name |
Description |
Value |
| azureApp |
Azure Active Directory Application the DMS (classic) instance will use to connect to the target instance of Azure SQL Database Managed Instance and the Azure Storage Account |
AzureActiveDirectoryApp (required) |
| targetConnectionInfo |
Connection information for Azure SQL Database Managed Instance |
MiSqlConnectionInfo (required) |
ConnectToTargetSqlMISyncTaskProperties
| Name |
Description |
Value |
| collectAgentJobs |
Flag for whether to collect agent jobs from target SQL MI server. |
bool |
| collectLogins |
Flag for whether to collect logins from target SQL MI server. |
bool |
| targetConnectionInfo |
Connection information for target SQL Server |
SqlConnectionInfo (required) |
| validateSsisCatalogOnly |
Flag for whether to validate SSIS catalog is reachable on the target SQL MI server. |
bool |
ConnectToTargetSqlMITaskProperties
FileShare
| Name |
Description |
Value |
| password |
Password credential used to connect to the share location. |
string |
| path |
The folder path for this share. |
string (required) |
| userName |
User name credential to connect to the share location |
string |
| Name |
Description |
Value |
| backupFileShare |
Backup file share information for file share to be used for temporarily storing files. |
FileShare (required) |
| connectionInfo |
Connection information for SQL Server |
SqlConnectionInfo (required) |
| selectedCertificates |
List containing certificate names and corresponding password to use for encrypting the exported certificate. |
SelectedCertificateInput[] (required) |
GetTdeCertificatesSqlTaskProperties
| Name |
Description |
Value |
| connectionInfo |
Connection information for SQL Server |
MySqlConnectionInfo (required) |
| selectedDatabases |
List of database names to collect tables for |
string[] (required) |
GetUserTablesMySqlTaskProperties
| Name |
Description |
Value |
| connectionInfo |
Information for connecting to Oracle source |
OracleConnectionInfo (required) |
| selectedSchemas |
List of Oracle schemas for which to collect tables |
string[] (required) |
GetUserTablesOracleTaskProperties
GetUserTablesPostgreSqlTaskInput
| Name |
Description |
Value |
| connectionInfo |
Information for connecting to PostgreSQL source |
PostgreSqlConnectionInfo (required) |
| selectedDatabases |
List of PostgreSQL databases for which to collect tables |
string[] (required) |
GetUserTablesPostgreSqlTaskProperties
| Name |
Description |
Value |
| selectedSourceDatabases |
List of source database names to collect tables for |
string[] (required) |
| selectedTargetDatabases |
List of target database names to collect tables for |
string[] (required) |
| sourceConnectionInfo |
Connection information for SQL Server |
SqlConnectionInfo (required) |
| targetConnectionInfo |
Connection information for SQL DB |
SqlConnectionInfo (required) |
GetUserTablesSqlSyncTaskProperties
| Name |
Description |
Value |
| connectionInfo |
Connection information for SQL Server |
SqlConnectionInfo (required) |
| encryptedKeyForSecureFields |
encrypted key for secure fields |
string |
| selectedDatabases |
List of database names to collect tables for |
string[] (required) |
GetUserTablesSqlTaskProperties
| Name |
Description |
Value |
| input |
Task input |
GetUserTablesSqlTaskInput |
| taskId |
Task id |
string |
| taskType |
Task type. |
'GetUserTables.Sql' (required) |
| Name |
Description |
Value |
| driverPackageName |
Name of the uploaded driver package to install. |
string |
InstallOCIDriverTaskProperties
| Name |
Description |
Value |
| input |
Input for the service task to install an OCI driver. |
InstallOCIDriverTaskInput |
| taskType |
Task type. |
'Service.Install.OCI' (required) |
MigrateMongoDbTaskProperties
| Name |
Description |
Value |
| input |
Describes how a MongoDB data migration should be performed |
MongoDbMigrationSettings |
| taskType |
Task type. |
'Migrate.MongoDb' (required) |
| Name |
Description |
Value |
| input |
Task input |
MigrateMySqlAzureDbForMySqlOfflineTaskInput |
| isCloneable |
whether the task can be cloned or not |
bool |
| taskId |
Task id |
string |
| taskType |
Task type. |
'Migrate.MySql.AzureDbForMySql' (required) |
MigrateOracleAzureDbForPostgreSqlSyncTaskProperties
MigrateOracleAzureDbPostgreSqlSyncDatabaseInput
MigrateOracleAzureDbPostgreSqlSyncDatabaseInputMigrationSetting
MigrateOracleAzureDbPostgreSqlSyncDatabaseInputSourceSetting
MigrateOracleAzureDbPostgreSqlSyncDatabaseInputTableMap
MigrateOracleAzureDbPostgreSqlSyncDatabaseInputTargetSetting
MigrateOracleAzureDbPostgreSqlSyncTaskInput
MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput
MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInputMigrationSetting
MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInputSourceSetting
MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInputTargetSetting
MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseTableInput
| Name |
Description |
Value |
| name |
Name of the table to migrate |
string |
MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput
MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput |
| isCloneable |
whether the task can be cloned or not |
bool |
| taskId |
task id |
string |
| taskType |
Task type. |
'Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2' (required) |
| Name |
Description |
Value |
| id |
Id of the source database |
string |
| name |
Name of source database |
string |
| schemaSetting |
Database schema migration settings |
SchemaMigrationSetting |
| targetDatabaseName |
Name of target database |
string |
| Name |
Description |
Value |
| encryptedKeyForSecureFields |
encrypted key for secure fields |
string |
| selectedDatabases |
Databases to migrate |
MigrateSchemaSqlServerSqlDbDatabaseInput[] (required) |
| sourceConnectionInfo |
Information for connecting to source |
SqlConnectionInfo (required) |
| startedOn |
Migration start time |
string |
| targetConnectionInfo |
Information for connecting to target |
SqlConnectionInfo (required) |
MigrateSchemaSqlServerSqlDbTaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
MigrateSchemaSqlServerSqlDbTaskInput |
| isCloneable |
whether the task can be cloned or not |
bool |
| taskId |
Task id |
string |
| taskType |
Task type. |
'MigrateSchemaSqlServerSqlDb' (required) |
| Name |
Description |
Value |
| id |
id of the database |
string |
| makeSourceDbReadOnly |
Whether to set database read only before migration |
bool |
| name |
Name of the database |
string |
| schemaSetting |
Settings selected for DB schema migration. |
any |
| tableMap |
Mapping of source to target tables |
MigrateSqlServerSqlDbDatabaseInputTableMap |
| targetDatabaseName |
Name of target database. Note: Target database will be truncated before starting migration. |
string |
MigrateSqlServerSqlDbSyncTaskProperties
| Name |
Description |
Value |
| encryptedKeyForSecureFields |
encrypted key for secure fields |
string |
| selectedDatabases |
Databases to migrate |
MigrateSqlServerSqlDbDatabaseInput[] (required) |
| sourceConnectionInfo |
Information for connecting to source |
SqlConnectionInfo (required) |
| startedOn |
Date and time relative to UTC when the migration was started on |
string |
| targetConnectionInfo |
Information for connecting to target |
SqlConnectionInfo (required) |
| validationOptions |
Options for enabling various post migration validations. Available options, 1.) Data Integrity Check: Performs a checksum based comparison on source and target tables after the migration to ensure the correctness of the data. 2.) Schema Validation: Performs a thorough schema comparison between the source and target tables and provides a list of differences between the source and target database, 3.) Query Analysis: Executes a set of queries picked up automatically either from the Query Plan Cache or Query Store and execute them and compares the execution time between the source and target database. |
MigrationValidationOptions |
MigrateSqlServerSqlDbTaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
MigrateSqlServerSqlDbTaskInput |
| isCloneable |
whether the task can be cloned or not |
bool |
| taskId |
task id |
string |
| taskType |
Task type. |
'Migrate.SqlServer.SqlDb' (required) |
| Name |
Description |
Value |
| backupFilePaths |
The list of backup files to be used in case of existing backups. |
string[] |
| backupFileShare |
Backup file share information for backing up this database. |
FileShare |
| id |
id of the database |
string |
| name |
Name of the database |
string (required) |
| restoreDatabaseName |
Name of the database at destination |
string (required) |
| Name |
Description |
Value |
| azureApp |
Azure Active Directory Application the DMS (classic) instance will use to connect to the target instance of Azure SQL Database Managed Instance and the Azure Storage Account |
AzureActiveDirectoryApp (required) |
| backupFileShare |
Backup file share information for all selected databases. |
FileShare |
| numberOfParallelDatabaseMigrations |
Number of database migrations to start in parallel |
int |
| selectedDatabases |
Databases to migrate |
MigrateSqlServerSqlMIDatabaseInput[] (required) |
| sourceConnectionInfo |
Connection information for source SQL Server |
SqlConnectionInfo (required) |
| storageResourceId |
Fully qualified resourceId of storage |
string (required) |
| targetConnectionInfo |
Connection information for Azure SQL Database Managed Instance |
MiSqlConnectionInfo (required) |
MigrateSqlServerSqlMISyncTaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
MigrateSqlServerSqlMISyncTaskInput |
| taskType |
Task type. |
'Migrate.SqlServer.AzureSqlDbMI.Sync.LRS' (required) |
| Name |
Description |
Value |
| aadDomainName |
Azure Active Directory domain name in the format of 'contoso.com' for federated Azure AD or 'contoso.onmicrosoft.com' for managed domain, required if and only if Windows logins are selected |
string |
| backupBlobShare |
SAS URI of Azure Storage Account Container to be used for storing backup files. |
BlobShare (required) |
| backupFileShare |
Backup file share information for all selected databases. |
FileShare |
| backupMode |
Backup Mode to specify whether to use existing backup or create new backup. If using existing backups, backup file paths are required to be provided in selectedDatabases. |
'CreateBackup' 'ExistingBackup' |
| encryptedKeyForSecureFields |
encrypted key for secure fields |
string |
| selectedAgentJobs |
Agent Jobs to migrate. |
string[] |
| selectedDatabases |
Databases to migrate |
MigrateSqlServerSqlMIDatabaseInput[] (required) |
| selectedLogins |
Logins to migrate. |
string[] |
| sourceConnectionInfo |
Information for connecting to source |
SqlConnectionInfo (required) |
| startedOn |
Date and time relative to UTC when the migration was started on |
string |
| targetConnectionInfo |
Information for connecting to target |
SqlConnectionInfo (required) |
MigrateSqlServerSqlMITaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
MigrateSqlServerSqlMITaskInput |
| isCloneable |
whether the task can be cloned or not |
bool |
| parentTaskId |
parent task id |
string |
| taskId |
task id |
string |
| taskType |
Task type. |
'Migrate.SqlServer.AzureSqlDbMI' (required) |
| Name |
Description |
Value |
| sourceConnectionInfo |
Information for connecting to source |
SqlConnectionInfo (required) |
| ssisMigrationInfo |
SSIS package migration information. |
SsisMigrationInfo (required) |
| targetConnectionInfo |
Information for connecting to target |
SqlConnectionInfo (required) |
MigrateSsisTaskProperties
| Name |
Description |
Value |
| input |
Task input |
MigrateSsisTaskInput |
| taskType |
Task type. |
'Migrate.Ssis' (required) |
MigrationValidationOptions
| Name |
Description |
Value |
| enableDataIntegrityValidation |
Allows to perform a checksum based data integrity validation between source and target for the selected database / tables . |
bool |
| enableQueryAnalysisValidation |
Allows to perform a quick and intelligent query analysis by retrieving queries from the source database and executes them in the target. The result will have execution statistics for executions in source and target databases for the extracted queries. |
bool |
| enableSchemaValidation |
Allows to compare the schema information between source and target. |
bool |
MiSqlConnectionInfo
| Name |
Description |
Value |
| managedInstanceResourceId |
Resource id for Azure SQL database Managed instance |
string (required) |
| password |
Password credential. |
string |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
MongoDbCollectionSettings
| Name |
Description |
Value |
| canDelete |
Whether the migrator is allowed to drop the target collection in the course of performing a migration. The default is true. |
bool |
| shardKey |
Describes a MongoDB shard key |
MongoDbShardKeySetting |
| targetRUs |
The RUs that should be configured on a CosmosDB target, or null to use the default. This has no effect on non-CosmosDB targets. |
int |
MongoDbConnectionInfo
| Name |
Description |
Value |
| additionalSettings |
Additional connection settings |
string |
| authentication |
Authentication type to use for connection |
'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| connectionString |
A MongoDB connection string or blob container URL. The user name and password can be specified here or in the userName and password properties |
string (required) |
| dataSource |
Data source |
string |
| encryptConnection |
Whether to encrypt the connection |
bool |
| enforceSSL |
|
bool |
| password |
Password credential. |
string |
| port |
port for server |
int |
| serverBrandVersion |
server brand version |
string |
| serverName |
name of the server |
string |
| serverVersion |
server version |
string |
| trustServerCertificate |
Whether to trust the server certificate |
bool |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
MongoDbDatabaseSettings
| Name |
Description |
Value |
| collections |
The collections on the source database to migrate to the target. The keys are the unqualified names of the collections. |
MongoDbDatabaseSettingsCollections (required) |
| targetRUs |
The RUs that should be configured on a CosmosDB target, or null to use the default, or 0 if throughput should not be provisioned for the database. This has no effect on non-CosmosDB targets. |
int |
MongoDbDatabaseSettingsCollections
MongoDbMigrationSettings
| Name |
Description |
Value |
| boostRUs |
The RU limit on a CosmosDB target that collections will be temporarily increased to (if lower) during the initial copy of a migration, from 10,000 to 1,000,000, or 0 to use the default boost (which is generally the maximum), or null to not boost the RUs. This setting has no effect on non-CosmosDB targets. |
int |
| databases |
The databases on the source cluster to migrate to the target. The keys are the names of the databases. |
MongoDbMigrationSettingsDatabases (required) |
| replication |
Describes how changes will be replicated from the source to the target. The default is OneTime. |
'Continuous' 'Disabled' 'OneTime' |
| source |
Settings used to connect to the source cluster |
MongoDbConnectionInfo (required) |
| target |
Settings used to connect to the target cluster |
MongoDbConnectionInfo (required) |
| throttling |
Settings used to limit the resource usage of the migration |
MongoDbThrottlingSettings |
MongoDbMigrationSettingsDatabases
MongoDbShardKeyField
| Name |
Description |
Value |
| name |
The name of the field |
string (required) |
| order |
The field ordering |
'Forward' 'Hashed' 'Reverse' (required) |
MongoDbShardKeySetting
| Name |
Description |
Value |
| fields |
The fields within the shard key |
MongoDbShardKeyField[] (required) |
| isUnique |
Whether the shard key is unique |
bool |
MongoDbThrottlingSettings
| Name |
Description |
Value |
| maxParallelism |
The maximum number of work items (e.g. collection copies) that will be processed in parallel |
int |
| minFreeCpu |
The percentage of CPU time that the migrator will try to avoid using, from 0 to 100 |
int |
| minFreeMemoryMb |
The number of megabytes of RAM that the migrator will try to avoid using |
int |
MySqlConnectionInfo
| Name |
Description |
Value |
| additionalSettings |
Additional connection settings |
string |
| authentication |
Authentication type to use for connection |
'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| dataSource |
Data source |
string |
| encryptConnection |
Whether to encrypt the connection |
bool |
| password |
Password credential. |
string |
| port |
Port for Server |
int (required) |
| serverName |
Name of the server |
string (required) |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
OracleConnectionInfo
| Name |
Description |
Value |
| authentication |
Authentication type to use for connection |
'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| dataSource |
EZConnect or TNSName connection string. |
string (required) |
| password |
Password credential. |
string |
| port |
port for server |
int |
| serverName |
name of the server |
string |
| serverVersion |
server version |
string |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
PostgreSqlConnectionInfo
| Name |
Description |
Value |
| additionalSettings |
Additional connection settings |
string |
| authentication |
Authentication type to use for connection |
'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| databaseName |
Name of the database |
string |
| dataSource |
Data source |
string |
| encryptConnection |
Whether to encrypt the connection |
bool |
| password |
Password credential. |
string |
| port |
Port for Server |
int (required) |
| serverBrandVersion |
server brand version |
string |
| serverName |
Name of the server |
string (required) |
| serverVersion |
server version |
string |
| trustServerCertificate |
Whether to trust the server certificate |
bool |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
ProjectTaskProperties
ProjectTaskPropertiesClientData
SchemaMigrationSetting
| Name |
Description |
Value |
| fileId |
Resource Identifier of a file resource containing the uploaded schema file |
string |
| fileName |
Name of the file resource containing the uploaded schema file |
string |
| schemaOption |
Option on how to migrate the schema |
'ExtractFromSource' 'None' 'UseStorageFile' |
| Name |
Description |
Value |
| certificateName |
Name of certificate to be exported. |
string (required) |
| password |
Password to use for encrypting the exported certificate. |
string (required) |
SqlConnectionInfo
| Name |
Description |
Value |
| additionalSettings |
Additional connection settings |
string |
| authentication |
Authentication type to use for connection |
'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| dataSource |
Data source in the format Protocol:MachineName\SQLServerInstanceName,PortNumber |
string (required) |
| encryptConnection |
Whether to encrypt the connection |
bool |
| password |
Password credential. |
string |
| platform |
Server platform type for connection |
'SqlOnPrem' |
| port |
Port for Server |
int |
| resourceId |
Represents the ID of an HTTP resource represented by an Azure resource provider. |
string |
| serverBrandVersion |
server brand version |
string |
| serverName |
name of the server |
string |
| serverVersion |
server version |
string |
| trustServerCertificate |
Whether to trust the server certificate |
bool |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
SsisMigrationInfo
| Name |
Description |
Value |
| environmentOverwriteOption |
The overwrite option for the SSIS environment migration |
'Ignore' 'Overwrite' |
| projectOverwriteOption |
The overwrite option for the SSIS project migration |
'Ignore' 'Overwrite' |
| ssisStoreType |
The SSIS store type of source, only SSIS catalog is supported now in DMS (classic) |
'SsisCatalog' |
| Name |
Description |
Value |
| driverShare |
File share information for the OCI driver archive. |
FileShare |
UploadOCIDriverTaskProperties
| Name |
Description |
Value |
| input |
Input for the service task to upload an OCI driver. |
UploadOCIDriverTaskInput |
| taskType |
Task type. |
'Service.Upload.OCI' (required) |
| Name |
Description |
Value |
| azureApp |
Azure Active Directory Application the DMS (classic) instance will use to connect to the target instance of Azure SQL Database Managed Instance and the Azure Storage Account |
AzureActiveDirectoryApp (required) |
| backupFileShare |
Backup file share information for all selected databases. |
FileShare |
| selectedDatabases |
Databases to migrate |
MigrateSqlServerSqlMIDatabaseInput[] (required) |
| sourceConnectionInfo |
Connection information for source SQL Server |
SqlConnectionInfo (required) |
| storageResourceId |
Fully qualified resourceId of storage |
string (required) |
| targetConnectionInfo |
Connection information for Azure SQL Database Managed Instance |
MiSqlConnectionInfo (required) |
| Name |
Description |
Value |
| backupBlobShare |
SAS URI of Azure Storage Account Container to be used for storing backup files. |
BlobShare (required) |
| backupFileShare |
Backup file share information for all selected databases. |
FileShare |
| backupMode |
Backup Mode to specify whether to use existing backup or create new backup. |
'CreateBackup' 'ExistingBackup' |
| selectedDatabases |
Databases to migrate |
MigrateSqlServerSqlMIDatabaseInput[] (required) |
| selectedLogins |
Logins to migrate |
string[] |
| sourceConnectionInfo |
Information for connecting to source |
SqlConnectionInfo (required) |
| targetConnectionInfo |
Information for connecting to target |
SqlConnectionInfo (required) |
ValidateMongoDbTaskProperties
| Name |
Description |
Value |
| input |
Describes how a MongoDB data migration should be performed |
MongoDbMigrationSettings |
| taskType |
Task type. |
'Validate.MongoDb' (required) |
ValidateOracleAzureDbForPostgreSqlSyncTaskProperties
| Name |
Description |
Value |
| input |
Input for the task that migrates Oracle databases to Azure Database for PostgreSQL for online migrations |
MigrateOracleAzureDbPostgreSqlSyncTaskInput |
| taskType |
Task type. |
'Validate.Oracle.AzureDbPostgreSql.Sync' (required) |
The services/serviceTasks resource type can be deployed with operations that target:
- Resource groups
For a list of changed properties in each API version, see change log.
To create a Microsoft.DataMigration/services/serviceTasks resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.DataMigration/services/serviceTasks@2023-07-15-preview"
name = "string"
parent_id = "string"
body = {
etag = "string"
properties = {
clientData = {
{customized property} = "string"
}
taskType = "string"
// For remaining properties, see ProjectTaskProperties objects
}
}
}
ProjectTaskProperties objects
Set the taskType property to specify the type of object.
For Connect.MongoDb, use:
{
input = {
additionalSettings = "string"
authentication = "string"
connectionString = "string"
dataSource = "string"
encryptConnection = bool
enforceSSL = bool
password = "string"
port = int
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
taskType = "Connect.MongoDb"
}
For ConnectToSource.MySql, use:
{
input = {
checkPermissionsGroup = "string"
isOfflineMigration = bool
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverName = "string"
type = "string"
userName = "string"
}
targetPlatform = "string"
}
taskType = "ConnectToSource.MySql"
}
For ConnectToSource.Oracle.Sync, use:
{
input = {
sourceConnectionInfo = {
authentication = "string"
dataSource = "string"
password = "string"
port = int
serverName = "string"
serverVersion = "string"
type = "string"
userName = "string"
}
}
taskType = "ConnectToSource.Oracle.Sync"
}
For ConnectToSource.PostgreSql.Sync, use:
{
input = {
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
databaseName = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
}
taskType = "ConnectToSource.PostgreSql.Sync"
}
For ConnectToSource.SqlServer, use:
{
input = {
checkPermissionsGroup = "string"
collectAgentJobs = bool
collectDatabases = bool
collectLogins = bool
collectTdeCertificateInfo = bool
encryptedKeyForSecureFields = "string"
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
validateSsisCatalogOnly = bool
}
taskId = "string"
taskType = "ConnectToSource.SqlServer"
}
For ConnectToSource.SqlServer.Sync, use:
{
input = {
checkPermissionsGroup = "string"
collectAgentJobs = bool
collectDatabases = bool
collectLogins = bool
collectTdeCertificateInfo = bool
encryptedKeyForSecureFields = "string"
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
validateSsisCatalogOnly = bool
}
taskType = "ConnectToSource.SqlServer.Sync"
}
For ConnectToTarget.AzureDbForMySql, use:
{
input = {
isOfflineMigration = bool
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverName = "string"
type = "string"
userName = "string"
}
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverName = "string"
type = "string"
userName = "string"
}
}
taskType = "ConnectToTarget.AzureDbForMySql"
}
For ConnectToTarget.AzureDbForPostgreSql.Sync, use:
{
input = {
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
databaseName = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
databaseName = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
}
taskType = "ConnectToTarget.AzureDbForPostgreSql.Sync"
}
For ConnectToTarget.AzureSqlDbMI, use:
{
input = {
collectAgentJobs = bool
collectLogins = bool
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
validateSsisCatalogOnly = bool
}
taskType = "ConnectToTarget.AzureSqlDbMI"
}
For ConnectToTarget.AzureSqlDbMI.Sync.LRS, use:
{
input = {
azureApp = {
appKey = "string"
applicationId = "string"
ignoreAzurePermissions = bool
tenantId = "string"
}
targetConnectionInfo = {
managedInstanceResourceId = "string"
password = "string"
type = "string"
userName = "string"
}
}
taskType = "ConnectToTarget.AzureSqlDbMI.Sync.LRS"
}
For ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync, use:
{
input = {
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
databaseName = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
}
taskType = "ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync"
}
For ConnectToTarget.SqlDb, use:
{
createdOn = "string"
input = {
queryObjectCounts = bool
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
}
taskType = "ConnectToTarget.SqlDb"
}
For ConnectToTarget.SqlDb.Sync, use:
{
input = {
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
}
taskType = "ConnectToTarget.SqlDb.Sync"
}
For GetTDECertificates.Sql, use:
{
input = {
backupFileShare = {
password = "string"
path = "string"
userName = "string"
}
connectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
selectedCertificates = [
{
certificateName = "string"
password = "string"
}
]
}
taskType = "GetTDECertificates.Sql"
}
For GetUserTables.AzureSqlDb.Sync, use:
{
input = {
selectedSourceDatabases = [
"string"
]
selectedTargetDatabases = [
"string"
]
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
}
taskType = "GetUserTables.AzureSqlDb.Sync"
}
For GetUserTables.Sql, use:
{
input = {
connectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
encryptedKeyForSecureFields = "string"
selectedDatabases = [
"string"
]
}
taskId = "string"
taskType = "GetUserTables.Sql"
}
For GetUserTablesMySql, use:
{
input = {
connectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverName = "string"
type = "string"
userName = "string"
}
selectedDatabases = [
"string"
]
}
taskType = "GetUserTablesMySql"
}
For GetUserTablesOracle, use:
{
input = {
connectionInfo = {
authentication = "string"
dataSource = "string"
password = "string"
port = int
serverName = "string"
serverVersion = "string"
type = "string"
userName = "string"
}
selectedSchemas = [
"string"
]
}
taskType = "GetUserTablesOracle"
}
For GetUserTablesPostgreSql, use:
{
input = {
connectionInfo = {
additionalSettings = "string"
authentication = "string"
databaseName = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
selectedDatabases = [
"string"
]
}
taskType = "GetUserTablesPostgreSql"
}
For Migrate.MongoDb, use:
{
input = {
boostRUs = int
databases = {
{customized property} = {
collections = {
{customized property} = {
canDelete = bool
shardKey = {
fields = [
{
name = "string"
order = "string"
}
]
isUnique = bool
}
targetRUs = int
}
}
targetRUs = int
}
}
replication = "string"
source = {
additionalSettings = "string"
authentication = "string"
connectionString = "string"
dataSource = "string"
encryptConnection = bool
enforceSSL = bool
password = "string"
port = int
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
target = {
additionalSettings = "string"
authentication = "string"
connectionString = "string"
dataSource = "string"
encryptConnection = bool
enforceSSL = bool
password = "string"
port = int
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
throttling = {
maxParallelism = int
minFreeCpu = int
minFreeMemoryMb = int
}
}
taskType = "Migrate.MongoDb"
}
For Migrate.MySql.AzureDbForMySql, use:
{
input = {
encryptedKeyForSecureFields = "string"
makeSourceServerReadOnly = bool
optionalAgentSettings = {
{customized property} = "string"
}
selectedDatabases = [
{
name = "string"
tableMap = {
{customized property} = "string"
}
targetDatabaseName = "string"
}
]
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverName = "string"
type = "string"
userName = "string"
}
startedOn = "string"
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverName = "string"
type = "string"
userName = "string"
}
}
isCloneable = bool
taskId = "string"
taskType = "Migrate.MySql.AzureDbForMySql"
}
For Migrate.MySql.AzureDbForMySql.Sync, use:
{
input = {
selectedDatabases = [
{
migrationSetting = {
{customized property} = "string"
}
name = "string"
sourceSetting = {
{customized property} = "string"
}
tableMap = {
{customized property} = "string"
}
targetDatabaseName = "string"
targetSetting = {
{customized property} = "string"
}
}
]
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverName = "string"
type = "string"
userName = "string"
}
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverName = "string"
type = "string"
userName = "string"
}
}
taskType = "Migrate.MySql.AzureDbForMySql.Sync"
}
For Migrate.Oracle.AzureDbForPostgreSql.Sync, use:
{
input = {
selectedDatabases = [
{
caseManipulation = "string"
migrationSetting = {
{customized property} = "string"
}
name = "string"
schemaName = "string"
sourceSetting = {
{customized property} = "string"
}
tableMap = {
{customized property} = "string"
}
targetDatabaseName = "string"
targetSetting = {
{customized property} = "string"
}
}
]
sourceConnectionInfo = {
authentication = "string"
dataSource = "string"
password = "string"
port = int
serverName = "string"
serverVersion = "string"
type = "string"
userName = "string"
}
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
databaseName = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
}
taskType = "Migrate.Oracle.AzureDbForPostgreSql.Sync"
}
For Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2, use:
{
createdOn = "string"
input = {
encryptedKeyForSecureFields = "string"
selectedDatabases = [
{
migrationSetting = {
{customized property} = ?
}
name = "string"
selectedTables = [
{
name = "string"
}
]
sourceSetting = {
{customized property} = "string"
}
targetDatabaseName = "string"
targetSetting = {
{customized property} = "string"
}
}
]
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
databaseName = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
databaseName = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
}
isCloneable = bool
taskId = "string"
taskType = "Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2"
}
For Migrate.SqlServer.AzureSqlDb.Sync, use:
{
input = {
selectedDatabases = [
{
id = "string"
migrationSetting = {
{customized property} = "string"
}
name = "string"
schemaName = "string"
sourceSetting = {
{customized property} = "string"
}
tableMap = {
{customized property} = "string"
}
targetDatabaseName = "string"
targetSetting = {
{customized property} = "string"
}
}
]
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
validationOptions = {
enableDataIntegrityValidation = bool
enableQueryAnalysisValidation = bool
enableSchemaValidation = bool
}
}
taskType = "Migrate.SqlServer.AzureSqlDb.Sync"
}
For Migrate.SqlServer.AzureSqlDbMI, use:
{
createdOn = "string"
input = {
aadDomainName = "string"
backupBlobShare = {
sasUri = "string"
}
backupFileShare = {
password = "string"
path = "string"
userName = "string"
}
backupMode = "string"
encryptedKeyForSecureFields = "string"
selectedAgentJobs = [
"string"
]
selectedDatabases = [
{
backupFilePaths = [
"string"
]
backupFileShare = {
password = "string"
path = "string"
userName = "string"
}
id = "string"
name = "string"
restoreDatabaseName = "string"
}
]
selectedLogins = [
"string"
]
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
startedOn = "string"
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
}
isCloneable = bool
parentTaskId = "string"
taskId = "string"
taskType = "Migrate.SqlServer.AzureSqlDbMI"
}
For Migrate.SqlServer.AzureSqlDbMI.Sync.LRS, use:
{
createdOn = "string"
input = {
azureApp = {
appKey = "string"
applicationId = "string"
ignoreAzurePermissions = bool
tenantId = "string"
}
backupFileShare = {
password = "string"
path = "string"
userName = "string"
}
numberOfParallelDatabaseMigrations = int
selectedDatabases = [
{
backupFilePaths = [
"string"
]
backupFileShare = {
password = "string"
path = "string"
userName = "string"
}
id = "string"
name = "string"
restoreDatabaseName = "string"
}
]
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
storageResourceId = "string"
targetConnectionInfo = {
managedInstanceResourceId = "string"
password = "string"
type = "string"
userName = "string"
}
}
taskType = "Migrate.SqlServer.AzureSqlDbMI.Sync.LRS"
}
For Migrate.SqlServer.SqlDb, use:
{
createdOn = "string"
input = {
encryptedKeyForSecureFields = "string"
selectedDatabases = [
{
id = "string"
makeSourceDbReadOnly = bool
name = "string"
schemaSetting = ?
tableMap = {
{customized property} = "string"
}
targetDatabaseName = "string"
}
]
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
startedOn = "string"
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
validationOptions = {
enableDataIntegrityValidation = bool
enableQueryAnalysisValidation = bool
enableSchemaValidation = bool
}
}
isCloneable = bool
taskId = "string"
taskType = "Migrate.SqlServer.SqlDb"
}
For Migrate.Ssis, use:
{
input = {
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
ssisMigrationInfo = {
environmentOverwriteOption = "string"
projectOverwriteOption = "string"
ssisStoreType = "string"
}
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
}
taskType = "Migrate.Ssis"
}
For MigrateSchemaSqlServerSqlDb, use:
{
createdOn = "string"
input = {
encryptedKeyForSecureFields = "string"
selectedDatabases = [
{
id = "string"
name = "string"
schemaSetting = {
fileId = "string"
fileName = "string"
schemaOption = "string"
}
targetDatabaseName = "string"
}
]
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
startedOn = "string"
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
}
isCloneable = bool
taskId = "string"
taskType = "MigrateSchemaSqlServerSqlDb"
}
For Service.Check.OCI, use:
{
input = {
serverVersion = "string"
}
taskType = "Service.Check.OCI"
}
For Service.Install.OCI, use:
{
input = {
driverPackageName = "string"
}
taskType = "Service.Install.OCI"
}
For Service.Upload.OCI, use:
{
input = {
driverShare = {
password = "string"
path = "string"
userName = "string"
}
}
taskType = "Service.Upload.OCI"
}
For Validate.MongoDb, use:
{
input = {
boostRUs = int
databases = {
{customized property} = {
collections = {
{customized property} = {
canDelete = bool
shardKey = {
fields = [
{
name = "string"
order = "string"
}
]
isUnique = bool
}
targetRUs = int
}
}
targetRUs = int
}
}
replication = "string"
source = {
additionalSettings = "string"
authentication = "string"
connectionString = "string"
dataSource = "string"
encryptConnection = bool
enforceSSL = bool
password = "string"
port = int
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
target = {
additionalSettings = "string"
authentication = "string"
connectionString = "string"
dataSource = "string"
encryptConnection = bool
enforceSSL = bool
password = "string"
port = int
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
throttling = {
maxParallelism = int
minFreeCpu = int
minFreeMemoryMb = int
}
}
taskType = "Validate.MongoDb"
}
For Validate.Oracle.AzureDbPostgreSql.Sync, use:
{
input = {
selectedDatabases = [
{
caseManipulation = "string"
migrationSetting = {
{customized property} = "string"
}
name = "string"
schemaName = "string"
sourceSetting = {
{customized property} = "string"
}
tableMap = {
{customized property} = "string"
}
targetDatabaseName = "string"
targetSetting = {
{customized property} = "string"
}
}
]
sourceConnectionInfo = {
authentication = "string"
dataSource = "string"
password = "string"
port = int
serverName = "string"
serverVersion = "string"
type = "string"
userName = "string"
}
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
databaseName = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
port = int
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
}
taskType = "Validate.Oracle.AzureDbPostgreSql.Sync"
}
For ValidateMigrationInput.SqlServer.AzureSqlDbMI, use:
{
input = {
backupBlobShare = {
sasUri = "string"
}
backupFileShare = {
password = "string"
path = "string"
userName = "string"
}
backupMode = "string"
selectedDatabases = [
{
backupFilePaths = [
"string"
]
backupFileShare = {
password = "string"
path = "string"
userName = "string"
}
id = "string"
name = "string"
restoreDatabaseName = "string"
}
]
selectedLogins = [
"string"
]
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
}
taskType = "ValidateMigrationInput.SqlServer.AzureSqlDbMI"
}
For ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS, use:
{
input = {
azureApp = {
appKey = "string"
applicationId = "string"
ignoreAzurePermissions = bool
tenantId = "string"
}
backupFileShare = {
password = "string"
path = "string"
userName = "string"
}
selectedDatabases = [
{
backupFilePaths = [
"string"
]
backupFileShare = {
password = "string"
path = "string"
userName = "string"
}
id = "string"
name = "string"
restoreDatabaseName = "string"
}
]
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
storageResourceId = "string"
targetConnectionInfo = {
managedInstanceResourceId = "string"
password = "string"
type = "string"
userName = "string"
}
}
taskType = "ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS"
}
For ValidateMigrationInput.SqlServer.SqlDb.Sync, use:
{
input = {
selectedDatabases = [
{
id = "string"
migrationSetting = {
{customized property} = "string"
}
name = "string"
schemaName = "string"
sourceSetting = {
{customized property} = "string"
}
tableMap = {
{customized property} = "string"
}
targetDatabaseName = "string"
targetSetting = {
{customized property} = "string"
}
}
]
sourceConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
targetConnectionInfo = {
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
password = "string"
platform = "string"
port = int
resourceId = "string"
serverBrandVersion = "string"
serverName = "string"
serverVersion = "string"
trustServerCertificate = bool
type = "string"
userName = "string"
}
}
taskType = "ValidateMigrationInput.SqlServer.SqlDb.Sync"
}
Property Values
Microsoft.DataMigration/services/serviceTasks
| Name |
Description |
Value |
| etag |
HTTP strong entity tag value. This is ignored if submitted. |
string |
| name |
The resource name |
string (required) |
| parent_id |
The ID of the resource that is the parent for this resource. |
ID for resource of type: services |
| properties |
Custom task properties |
ProjectTaskProperties |
| type |
The resource type |
"Microsoft.DataMigration/services/serviceTasks@2023-07-15-preview" |
AzureActiveDirectoryApp
| Name |
Description |
Value |
| appKey |
Key used to authenticate to the Azure Active Directory Application |
string |
| applicationId |
Application ID of the Azure Active Directory Application |
string |
| ignoreAzurePermissions |
Ignore checking azure permissions on the AAD app |
bool |
| tenantId |
Tenant id of the customer |
string |
BlobShare
| Name |
Description |
Value |
| sasUri |
SAS URI of Azure Storage Account Container. |
string |
| Name |
Description |
Value |
| serverVersion |
Version of the source server to check against. Optional. |
string |
CheckOCIDriverTaskProperties
| Name |
Description |
Value |
| input |
Input for the service task to check for OCI drivers. |
CheckOCIDriverTaskInput |
| taskType |
Task type. |
'Service.Check.OCI' (required) |
ConnectToMongoDbTaskProperties
| Name |
Description |
Value |
| input |
Describes a connection to a MongoDB data source |
MongoDbConnectionInfo |
| taskType |
Task type. |
'Connect.MongoDb' (required) |
| Name |
Description |
Value |
| checkPermissionsGroup |
Permission group for validations |
'Default' 'MigrationFromMySQLToAzureDBForMySQL' 'MigrationFromSqlServerToAzureDB' 'MigrationFromSqlServerToAzureMI' 'MigrationFromSqlServerToAzureVM' |
| isOfflineMigration |
Flag for whether or not the migration is offline |
bool |
| sourceConnectionInfo |
Information for connecting to MySQL source |
MySqlConnectionInfo (required) |
| targetPlatform |
Target Platform for the migration |
'AzureDbForMySQL' 'SqlServer' |
ConnectToSourceMySqlTaskProperties
| Name |
Description |
Value |
| sourceConnectionInfo |
Information for connecting to Oracle source |
OracleConnectionInfo (required) |
ConnectToSourceOracleSyncTaskProperties
ConnectToSourcePostgreSqlSyncTaskInput
| Name |
Description |
Value |
| sourceConnectionInfo |
Connection information for source PostgreSQL server |
PostgreSqlConnectionInfo (required) |
ConnectToSourcePostgreSqlSyncTaskProperties
ConnectToSourceSqlServerSyncTaskProperties
| Name |
Description |
Value |
| checkPermissionsGroup |
Permission group for validations |
'Default' 'MigrationFromMySQLToAzureDBForMySQL' 'MigrationFromSqlServerToAzureDB' 'MigrationFromSqlServerToAzureMI' 'MigrationFromSqlServerToAzureVM' |
| collectAgentJobs |
Flag for whether to collect agent jobs from source server. |
bool |
| collectDatabases |
Flag for whether to collect databases from source server. |
bool |
| collectLogins |
Flag for whether to collect logins from source server. |
bool |
| collectTdeCertificateInfo |
Flag for whether to collect TDE Certificate names from source server. |
bool |
| encryptedKeyForSecureFields |
encrypted key for secure fields |
string |
| sourceConnectionInfo |
Connection information for Source SQL Server |
SqlConnectionInfo (required) |
| validateSsisCatalogOnly |
Flag for whether to validate SSIS catalog is reachable on the source server. |
bool |
ConnectToSourceSqlServerTaskProperties
| Name |
Description |
Value |
| isOfflineMigration |
Flag for whether or not the migration is offline |
bool |
| sourceConnectionInfo |
Connection information for source MySQL server |
MySqlConnectionInfo (required) |
| targetConnectionInfo |
Connection information for target Azure Database for MySQL server |
MySqlConnectionInfo (required) |
ConnectToTargetAzureDbForPostgreSqlSyncTaskInput
| Name |
Description |
Value |
| sourceConnectionInfo |
Connection information for source PostgreSQL server |
PostgreSqlConnectionInfo (required) |
| targetConnectionInfo |
Connection information for target Azure Database for PostgreSQL server |
PostgreSqlConnectionInfo (required) |
ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties
ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput
| Name |
Description |
Value |
| targetConnectionInfo |
Connection information for target Azure Database for PostgreSQL server |
PostgreSqlConnectionInfo (required) |
ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties
| Name |
Description |
Value |
| sourceConnectionInfo |
Connection information for source SQL Server |
SqlConnectionInfo (required) |
| targetConnectionInfo |
Connection information for target SQL DB |
SqlConnectionInfo (required) |
ConnectToTargetSqlDbSyncTaskProperties
| Name |
Description |
Value |
| queryObjectCounts |
Boolean flag indicating whether to query object counts for each database on the target server |
bool |
| targetConnectionInfo |
Connection information for target SQL DB |
SqlConnectionInfo (required) |
ConnectToTargetSqlDbTaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
ConnectToTargetSqlDbTaskInput |
| taskType |
Task type. |
'ConnectToTarget.SqlDb' (required) |
| Name |
Description |
Value |
| azureApp |
Azure Active Directory Application the DMS (classic) instance will use to connect to the target instance of Azure SQL Database Managed Instance and the Azure Storage Account |
AzureActiveDirectoryApp (required) |
| targetConnectionInfo |
Connection information for Azure SQL Database Managed Instance |
MiSqlConnectionInfo (required) |
ConnectToTargetSqlMISyncTaskProperties
| Name |
Description |
Value |
| collectAgentJobs |
Flag for whether to collect agent jobs from target SQL MI server. |
bool |
| collectLogins |
Flag for whether to collect logins from target SQL MI server. |
bool |
| targetConnectionInfo |
Connection information for target SQL Server |
SqlConnectionInfo (required) |
| validateSsisCatalogOnly |
Flag for whether to validate SSIS catalog is reachable on the target SQL MI server. |
bool |
ConnectToTargetSqlMITaskProperties
FileShare
| Name |
Description |
Value |
| password |
Password credential used to connect to the share location. |
string |
| path |
The folder path for this share. |
string (required) |
| userName |
User name credential to connect to the share location |
string |
| Name |
Description |
Value |
| backupFileShare |
Backup file share information for file share to be used for temporarily storing files. |
FileShare (required) |
| connectionInfo |
Connection information for SQL Server |
SqlConnectionInfo (required) |
| selectedCertificates |
List containing certificate names and corresponding password to use for encrypting the exported certificate. |
SelectedCertificateInput[] (required) |
GetTdeCertificatesSqlTaskProperties
| Name |
Description |
Value |
| connectionInfo |
Connection information for SQL Server |
MySqlConnectionInfo (required) |
| selectedDatabases |
List of database names to collect tables for |
string[] (required) |
GetUserTablesMySqlTaskProperties
| Name |
Description |
Value |
| connectionInfo |
Information for connecting to Oracle source |
OracleConnectionInfo (required) |
| selectedSchemas |
List of Oracle schemas for which to collect tables |
string[] (required) |
GetUserTablesOracleTaskProperties
GetUserTablesPostgreSqlTaskInput
| Name |
Description |
Value |
| connectionInfo |
Information for connecting to PostgreSQL source |
PostgreSqlConnectionInfo (required) |
| selectedDatabases |
List of PostgreSQL databases for which to collect tables |
string[] (required) |
GetUserTablesPostgreSqlTaskProperties
| Name |
Description |
Value |
| selectedSourceDatabases |
List of source database names to collect tables for |
string[] (required) |
| selectedTargetDatabases |
List of target database names to collect tables for |
string[] (required) |
| sourceConnectionInfo |
Connection information for SQL Server |
SqlConnectionInfo (required) |
| targetConnectionInfo |
Connection information for SQL DB |
SqlConnectionInfo (required) |
GetUserTablesSqlSyncTaskProperties
| Name |
Description |
Value |
| connectionInfo |
Connection information for SQL Server |
SqlConnectionInfo (required) |
| encryptedKeyForSecureFields |
encrypted key for secure fields |
string |
| selectedDatabases |
List of database names to collect tables for |
string[] (required) |
GetUserTablesSqlTaskProperties
| Name |
Description |
Value |
| input |
Task input |
GetUserTablesSqlTaskInput |
| taskId |
Task id |
string |
| taskType |
Task type. |
'GetUserTables.Sql' (required) |
| Name |
Description |
Value |
| driverPackageName |
Name of the uploaded driver package to install. |
string |
InstallOCIDriverTaskProperties
| Name |
Description |
Value |
| input |
Input for the service task to install an OCI driver. |
InstallOCIDriverTaskInput |
| taskType |
Task type. |
'Service.Install.OCI' (required) |
MigrateMongoDbTaskProperties
| Name |
Description |
Value |
| input |
Describes how a MongoDB data migration should be performed |
MongoDbMigrationSettings |
| taskType |
Task type. |
'Migrate.MongoDb' (required) |
| Name |
Description |
Value |
| input |
Task input |
MigrateMySqlAzureDbForMySqlOfflineTaskInput |
| isCloneable |
whether the task can be cloned or not |
bool |
| taskId |
Task id |
string |
| taskType |
Task type. |
'Migrate.MySql.AzureDbForMySql' (required) |
MigrateOracleAzureDbForPostgreSqlSyncTaskProperties
MigrateOracleAzureDbPostgreSqlSyncDatabaseInput
MigrateOracleAzureDbPostgreSqlSyncDatabaseInputMigrationSetting
MigrateOracleAzureDbPostgreSqlSyncDatabaseInputSourceSetting
MigrateOracleAzureDbPostgreSqlSyncDatabaseInputTableMap
MigrateOracleAzureDbPostgreSqlSyncDatabaseInputTargetSetting
MigrateOracleAzureDbPostgreSqlSyncTaskInput
MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput
MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInputMigrationSetting
MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInputSourceSetting
MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInputTargetSetting
MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseTableInput
| Name |
Description |
Value |
| name |
Name of the table to migrate |
string |
MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput
MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput |
| isCloneable |
whether the task can be cloned or not |
bool |
| taskId |
task id |
string |
| taskType |
Task type. |
'Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2' (required) |
| Name |
Description |
Value |
| id |
Id of the source database |
string |
| name |
Name of source database |
string |
| schemaSetting |
Database schema migration settings |
SchemaMigrationSetting |
| targetDatabaseName |
Name of target database |
string |
| Name |
Description |
Value |
| encryptedKeyForSecureFields |
encrypted key for secure fields |
string |
| selectedDatabases |
Databases to migrate |
MigrateSchemaSqlServerSqlDbDatabaseInput[] (required) |
| sourceConnectionInfo |
Information for connecting to source |
SqlConnectionInfo (required) |
| startedOn |
Migration start time |
string |
| targetConnectionInfo |
Information for connecting to target |
SqlConnectionInfo (required) |
MigrateSchemaSqlServerSqlDbTaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
MigrateSchemaSqlServerSqlDbTaskInput |
| isCloneable |
whether the task can be cloned or not |
bool |
| taskId |
Task id |
string |
| taskType |
Task type. |
'MigrateSchemaSqlServerSqlDb' (required) |
| Name |
Description |
Value |
| id |
id of the database |
string |
| makeSourceDbReadOnly |
Whether to set database read only before migration |
bool |
| name |
Name of the database |
string |
| schemaSetting |
Settings selected for DB schema migration. |
any |
| tableMap |
Mapping of source to target tables |
MigrateSqlServerSqlDbDatabaseInputTableMap |
| targetDatabaseName |
Name of target database. Note: Target database will be truncated before starting migration. |
string |
MigrateSqlServerSqlDbSyncTaskProperties
| Name |
Description |
Value |
| encryptedKeyForSecureFields |
encrypted key for secure fields |
string |
| selectedDatabases |
Databases to migrate |
MigrateSqlServerSqlDbDatabaseInput[] (required) |
| sourceConnectionInfo |
Information for connecting to source |
SqlConnectionInfo (required) |
| startedOn |
Date and time relative to UTC when the migration was started on |
string |
| targetConnectionInfo |
Information for connecting to target |
SqlConnectionInfo (required) |
| validationOptions |
Options for enabling various post migration validations. Available options, 1.) Data Integrity Check: Performs a checksum based comparison on source and target tables after the migration to ensure the correctness of the data. 2.) Schema Validation: Performs a thorough schema comparison between the source and target tables and provides a list of differences between the source and target database, 3.) Query Analysis: Executes a set of queries picked up automatically either from the Query Plan Cache or Query Store and execute them and compares the execution time between the source and target database. |
MigrationValidationOptions |
MigrateSqlServerSqlDbTaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
MigrateSqlServerSqlDbTaskInput |
| isCloneable |
whether the task can be cloned or not |
bool |
| taskId |
task id |
string |
| taskType |
Task type. |
'Migrate.SqlServer.SqlDb' (required) |
| Name |
Description |
Value |
| backupFilePaths |
The list of backup files to be used in case of existing backups. |
string[] |
| backupFileShare |
Backup file share information for backing up this database. |
FileShare |
| id |
id of the database |
string |
| name |
Name of the database |
string (required) |
| restoreDatabaseName |
Name of the database at destination |
string (required) |
| Name |
Description |
Value |
| azureApp |
Azure Active Directory Application the DMS (classic) instance will use to connect to the target instance of Azure SQL Database Managed Instance and the Azure Storage Account |
AzureActiveDirectoryApp (required) |
| backupFileShare |
Backup file share information for all selected databases. |
FileShare |
| numberOfParallelDatabaseMigrations |
Number of database migrations to start in parallel |
int |
| selectedDatabases |
Databases to migrate |
MigrateSqlServerSqlMIDatabaseInput[] (required) |
| sourceConnectionInfo |
Connection information for source SQL Server |
SqlConnectionInfo (required) |
| storageResourceId |
Fully qualified resourceId of storage |
string (required) |
| targetConnectionInfo |
Connection information for Azure SQL Database Managed Instance |
MiSqlConnectionInfo (required) |
MigrateSqlServerSqlMISyncTaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
MigrateSqlServerSqlMISyncTaskInput |
| taskType |
Task type. |
'Migrate.SqlServer.AzureSqlDbMI.Sync.LRS' (required) |
| Name |
Description |
Value |
| aadDomainName |
Azure Active Directory domain name in the format of 'contoso.com' for federated Azure AD or 'contoso.onmicrosoft.com' for managed domain, required if and only if Windows logins are selected |
string |
| backupBlobShare |
SAS URI of Azure Storage Account Container to be used for storing backup files. |
BlobShare (required) |
| backupFileShare |
Backup file share information for all selected databases. |
FileShare |
| backupMode |
Backup Mode to specify whether to use existing backup or create new backup. If using existing backups, backup file paths are required to be provided in selectedDatabases. |
'CreateBackup' 'ExistingBackup' |
| encryptedKeyForSecureFields |
encrypted key for secure fields |
string |
| selectedAgentJobs |
Agent Jobs to migrate. |
string[] |
| selectedDatabases |
Databases to migrate |
MigrateSqlServerSqlMIDatabaseInput[] (required) |
| selectedLogins |
Logins to migrate. |
string[] |
| sourceConnectionInfo |
Information for connecting to source |
SqlConnectionInfo (required) |
| startedOn |
Date and time relative to UTC when the migration was started on |
string |
| targetConnectionInfo |
Information for connecting to target |
SqlConnectionInfo (required) |
MigrateSqlServerSqlMITaskProperties
| Name |
Description |
Value |
| createdOn |
DateTime in UTC when the task was created |
string |
| input |
Task input |
MigrateSqlServerSqlMITaskInput |
| isCloneable |
whether the task can be cloned or not |
bool |
| parentTaskId |
parent task id |
string |
| taskId |
task id |
string |
| taskType |
Task type. |
'Migrate.SqlServer.AzureSqlDbMI' (required) |
| Name |
Description |
Value |
| sourceConnectionInfo |
Information for connecting to source |
SqlConnectionInfo (required) |
| ssisMigrationInfo |
SSIS package migration information. |
SsisMigrationInfo (required) |
| targetConnectionInfo |
Information for connecting to target |
SqlConnectionInfo (required) |
MigrateSsisTaskProperties
| Name |
Description |
Value |
| input |
Task input |
MigrateSsisTaskInput |
| taskType |
Task type. |
'Migrate.Ssis' (required) |
MigrationValidationOptions
| Name |
Description |
Value |
| enableDataIntegrityValidation |
Allows to perform a checksum based data integrity validation between source and target for the selected database / tables . |
bool |
| enableQueryAnalysisValidation |
Allows to perform a quick and intelligent query analysis by retrieving queries from the source database and executes them in the target. The result will have execution statistics for executions in source and target databases for the extracted queries. |
bool |
| enableSchemaValidation |
Allows to compare the schema information between source and target. |
bool |
MiSqlConnectionInfo
| Name |
Description |
Value |
| managedInstanceResourceId |
Resource id for Azure SQL database Managed instance |
string (required) |
| password |
Password credential. |
string |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
MongoDbCollectionSettings
| Name |
Description |
Value |
| canDelete |
Whether the migrator is allowed to drop the target collection in the course of performing a migration. The default is true. |
bool |
| shardKey |
Describes a MongoDB shard key |
MongoDbShardKeySetting |
| targetRUs |
The RUs that should be configured on a CosmosDB target, or null to use the default. This has no effect on non-CosmosDB targets. |
int |
MongoDbConnectionInfo
| Name |
Description |
Value |
| additionalSettings |
Additional connection settings |
string |
| authentication |
Authentication type to use for connection |
'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| connectionString |
A MongoDB connection string or blob container URL. The user name and password can be specified here or in the userName and password properties |
string (required) |
| dataSource |
Data source |
string |
| encryptConnection |
Whether to encrypt the connection |
bool |
| enforceSSL |
|
bool |
| password |
Password credential. |
string |
| port |
port for server |
int |
| serverBrandVersion |
server brand version |
string |
| serverName |
name of the server |
string |
| serverVersion |
server version |
string |
| trustServerCertificate |
Whether to trust the server certificate |
bool |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
MongoDbDatabaseSettings
| Name |
Description |
Value |
| collections |
The collections on the source database to migrate to the target. The keys are the unqualified names of the collections. |
MongoDbDatabaseSettingsCollections (required) |
| targetRUs |
The RUs that should be configured on a CosmosDB target, or null to use the default, or 0 if throughput should not be provisioned for the database. This has no effect on non-CosmosDB targets. |
int |
MongoDbDatabaseSettingsCollections
MongoDbMigrationSettings
| Name |
Description |
Value |
| boostRUs |
The RU limit on a CosmosDB target that collections will be temporarily increased to (if lower) during the initial copy of a migration, from 10,000 to 1,000,000, or 0 to use the default boost (which is generally the maximum), or null to not boost the RUs. This setting has no effect on non-CosmosDB targets. |
int |
| databases |
The databases on the source cluster to migrate to the target. The keys are the names of the databases. |
MongoDbMigrationSettingsDatabases (required) |
| replication |
Describes how changes will be replicated from the source to the target. The default is OneTime. |
'Continuous' 'Disabled' 'OneTime' |
| source |
Settings used to connect to the source cluster |
MongoDbConnectionInfo (required) |
| target |
Settings used to connect to the target cluster |
MongoDbConnectionInfo (required) |
| throttling |
Settings used to limit the resource usage of the migration |
MongoDbThrottlingSettings |
MongoDbMigrationSettingsDatabases
MongoDbShardKeyField
| Name |
Description |
Value |
| name |
The name of the field |
string (required) |
| order |
The field ordering |
'Forward' 'Hashed' 'Reverse' (required) |
MongoDbShardKeySetting
| Name |
Description |
Value |
| fields |
The fields within the shard key |
MongoDbShardKeyField[] (required) |
| isUnique |
Whether the shard key is unique |
bool |
MongoDbThrottlingSettings
| Name |
Description |
Value |
| maxParallelism |
The maximum number of work items (e.g. collection copies) that will be processed in parallel |
int |
| minFreeCpu |
The percentage of CPU time that the migrator will try to avoid using, from 0 to 100 |
int |
| minFreeMemoryMb |
The number of megabytes of RAM that the migrator will try to avoid using |
int |
MySqlConnectionInfo
| Name |
Description |
Value |
| additionalSettings |
Additional connection settings |
string |
| authentication |
Authentication type to use for connection |
'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| dataSource |
Data source |
string |
| encryptConnection |
Whether to encrypt the connection |
bool |
| password |
Password credential. |
string |
| port |
Port for Server |
int (required) |
| serverName |
Name of the server |
string (required) |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
OracleConnectionInfo
| Name |
Description |
Value |
| authentication |
Authentication type to use for connection |
'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| dataSource |
EZConnect or TNSName connection string. |
string (required) |
| password |
Password credential. |
string |
| port |
port for server |
int |
| serverName |
name of the server |
string |
| serverVersion |
server version |
string |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
PostgreSqlConnectionInfo
| Name |
Description |
Value |
| additionalSettings |
Additional connection settings |
string |
| authentication |
Authentication type to use for connection |
'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| databaseName |
Name of the database |
string |
| dataSource |
Data source |
string |
| encryptConnection |
Whether to encrypt the connection |
bool |
| password |
Password credential. |
string |
| port |
Port for Server |
int (required) |
| serverBrandVersion |
server brand version |
string |
| serverName |
Name of the server |
string (required) |
| serverVersion |
server version |
string |
| trustServerCertificate |
Whether to trust the server certificate |
bool |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
ProjectTaskProperties
ProjectTaskPropertiesClientData
SchemaMigrationSetting
| Name |
Description |
Value |
| fileId |
Resource Identifier of a file resource containing the uploaded schema file |
string |
| fileName |
Name of the file resource containing the uploaded schema file |
string |
| schemaOption |
Option on how to migrate the schema |
'ExtractFromSource' 'None' 'UseStorageFile' |
| Name |
Description |
Value |
| certificateName |
Name of certificate to be exported. |
string (required) |
| password |
Password to use for encrypting the exported certificate. |
string (required) |
SqlConnectionInfo
| Name |
Description |
Value |
| additionalSettings |
Additional connection settings |
string |
| authentication |
Authentication type to use for connection |
'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| dataSource |
Data source in the format Protocol:MachineName\SQLServerInstanceName,PortNumber |
string (required) |
| encryptConnection |
Whether to encrypt the connection |
bool |
| password |
Password credential. |
string |
| platform |
Server platform type for connection |
'SqlOnPrem' |
| port |
Port for Server |
int |
| resourceId |
Represents the ID of an HTTP resource represented by an Azure resource provider. |
string |
| serverBrandVersion |
server brand version |
string |
| serverName |
name of the server |
string |
| serverVersion |
server version |
string |
| trustServerCertificate |
Whether to trust the server certificate |
bool |
| type |
Type of connection info |
string (required) |
| userName |
User name |
string |
SsisMigrationInfo
| Name |
Description |
Value |
| environmentOverwriteOption |
The overwrite option for the SSIS environment migration |
'Ignore' 'Overwrite' |
| projectOverwriteOption |
The overwrite option for the SSIS project migration |
'Ignore' 'Overwrite' |
| ssisStoreType |
The SSIS store type of source, only SSIS catalog is supported now in DMS (classic) |
'SsisCatalog' |
| Name |
Description |
Value |
| driverShare |
File share information for the OCI driver archive. |
FileShare |
UploadOCIDriverTaskProperties
| Name |
Description |
Value |
| input |
Input for the service task to upload an OCI driver. |
UploadOCIDriverTaskInput |
| taskType |
Task type. |
'Service.Upload.OCI' (required) |
| Name |
Description |
Value |
| azureApp |
Azure Active Directory Application the DMS (classic) instance will use to connect to the target instance of Azure SQL Database Managed Instance and the Azure Storage Account |
AzureActiveDirectoryApp (required) |
| backupFileShare |
Backup file share information for all selected databases. |
FileShare |
| selectedDatabases |
Databases to migrate |
MigrateSqlServerSqlMIDatabaseInput[] (required) |
| sourceConnectionInfo |
Connection information for source SQL Server |
SqlConnectionInfo (required) |
| storageResourceId |
Fully qualified resourceId of storage |
string (required) |
| targetConnectionInfo |
Connection information for Azure SQL Database Managed Instance |
MiSqlConnectionInfo (required) |
| Name |
Description |
Value |
| backupBlobShare |
SAS URI of Azure Storage Account Container to be used for storing backup files. |
BlobShare (required) |
| backupFileShare |
Backup file share information for all selected databases. |
FileShare |
| backupMode |
Backup Mode to specify whether to use existing backup or create new backup. |
'CreateBackup' 'ExistingBackup' |
| selectedDatabases |
Databases to migrate |
MigrateSqlServerSqlMIDatabaseInput[] (required) |
| selectedLogins |
Logins to migrate |
string[] |
| sourceConnectionInfo |
Information for connecting to source |
SqlConnectionInfo (required) |
| targetConnectionInfo |
Information for connecting to target |
SqlConnectionInfo (required) |
ValidateMongoDbTaskProperties
| Name |
Description |
Value |
| input |
Describes how a MongoDB data migration should be performed |
MongoDbMigrationSettings |
| taskType |
Task type. |
'Validate.MongoDb' (required) |
ValidateOracleAzureDbForPostgreSqlSyncTaskProperties
| Name |
Description |
Value |
| input |
Input for the task that migrates Oracle databases to Azure Database for PostgreSQL for online migrations |
MigrateOracleAzureDbPostgreSqlSyncTaskInput |
| taskType |
Task type. |
'Validate.Oracle.AzureDbPostgreSql.Sync' (required) |