MigrationProject ​
The MigrationProject resource allows you to manage AWS Database Migration Service (DMS) migration projects, providing a framework for defining and controlling the migration of databases to AWS. For more information, refer to the AWS DMS MigrationProjects documentation.
Minimal Example ​
Create a basic migration project with required properties and a few common optional settings.
ts
import AWS from "alchemy/aws/control";
const basicMigrationProject = await AWS.DMS.MigrationProject("basicMigrationProject", {
MigrationProjectName: "CustomerDBMigration",
Description: "Migration project for customer database",
Tags: [
{ Key: "Environment", Value: "Production" },
{ Key: "Department", Value: "IT" }
]
});
Advanced Configuration ​
Configure a migration project with additional settings such as source and target data provider descriptors and transformation rules.
ts
const advancedMigrationProject = await AWS.DMS.MigrationProject("advancedMigrationProject", {
MigrationProjectName: "OrderDBMigration",
Description: "Migration project for order database",
SourceDataProviderDescriptors: [
{
DataProviderType: "RDS",
DatabaseName: "OrderDB",
Engine: "mysql"
}
],
TargetDataProviderDescriptors: [
{
DataProviderType: "S3",
BucketName: "my-s3-bucket",
Prefix: "migrations/"
}
],
TransformationRules: JSON.stringify([
{
RuleType: "AddColumn",
SourceColumn: "oldColumn",
TargetColumn: "newColumn",
TransformationType: "string"
}
])
});
Using Schema Conversion Application Attributes ​
Create a migration project that specifies schema conversion application attributes for better control over schema transformations.
ts
const schemaConversionProject = await AWS.DMS.MigrationProject("schemaConversionProject", {
MigrationProjectName: "ProductDBMigration",
Description: "Migration project for product database",
SchemaConversionApplicationAttributes: {
SchemaConversionApplicationVersion: "1.0",
TargetDatabaseType: "PostgreSQL"
}
});
Adoption of Existing Resources ​
Create a migration project while adopting an existing resource if it already exists.
ts
const adoptMigrationProject = await AWS.DMS.MigrationProject("adoptMigrationProject", {
MigrationProjectIdentifier: "existingMigrationProjectId",
MigrationProjectName: "AdoptedMigrationProject",
adopt: true
});