Customers use AWS Database Migration Service (AWS DMS) to migrate SQL Server databases to Babelfish for Aurora PostgreSQL. AWS DMS supports all SQL Server editions for full load migrations, but for continuous replication, SQL Server must have transactional replication or change data capture (CDC) enabled. SQL Server editions like Enterprise, Standard, and Developer support these features, while Web Edition and Azure SQL do not, limiting them to full load migrations only.
A workaround for ongoing changes in unsupported editions involves using change tracking with a linked server. Change tracking monitors data alterations and requires enabling it at both the database and table levels. The process includes migrating the source database with an initial full load using AWS DMS, creating a linked server to the source SQL Server, and setting up an anchor table at the target to track change versions.
Prerequisites for this solution include a source SQL Server or Azure SQL instance, the Northwind database, and a Babelfish for Aurora PostgreSQL instance version 4.0 or later. Steps to enable change tracking and migrate data involve connecting to the SQL Server instance, executing specific SQL commands, and verifying that change tracking is functioning correctly.
To synchronize data, the target database retrieves the current change tracking version, deletes matching records, extracts new records, and updates the anchor table with the latest version. Cleanup involves removing components created during testing to avoid future charges.