Migrate an on-premises Microsoft SQL Server database to Amazon RDS for SQL Server
Created by Henrique Lobao (AWS), Jonathan Pereira Cruz (AWS), and Vishal Singh (AWS)
Environment: PoC or pilot | Source: Microsoft SQL Server | Target: Amazon RDS for SQL Server |
R Type: Replatform | Workload: Microsoft | Technologies: Migration; Databases |
AWS services: Amazon RDS |
Summary
This pattern provides guidance for migrating from an on-premises Microsoft SQL Server database to Amazon Relational Database Service (Amazon RDS) for SQL Server. It describes two options for migration: using AWS Data Migration Service (AWS DMS) or using native Microsoft SQL Server tools such as Copy Database Wizard.
Prerequisites and limitations
Prerequisites
An active AWS account
A source Microsoft SQL Server database in an on-premises data center
Limitations
Database size limit: 16 TB
Product versions
SQL Server 2014-2019, Enterprise, Standard, Workgroup, and Developer editions. For the latest list of supported versions and features, see Microsoft SQL Server on Amazon RDS in the AWS documentation. If you're using AWS DMS, see also Using a Microsoft SQL Server Database as a Target for AWS DMS for SQL Server versions supported by AWS DMS.
Architecture
Source technology stack
An on-premises Microsoft SQL Server database
Target technology stack
An Amazon RDS for SQL Server DB instance
Source and target architecture
Using AWS DMS:
Using native SQL Server tools:
Tools
AWS DMS supports several types of source and target databases. For details, see AWS DMS Step-by-Step Walkthroughs. If AWS DMS doesn't support the source database, select another method for migrating the data.
Native Microsoft SQL Server tools include backup and restore, Copy Database Wizard, copy and attach database.
Epics
Task | Description | Skills required |
---|---|---|
Validate the source and target database version and engine. | DBA | |
Identify the hardware requirements for the target server instance. | DBA, Systems administrator | |
Identify the storage requirements (storage type and capacity). | DBA, Systems administrator | |
Choose the proper instance type based on capacity, storage features, and network features. | DBA, Systems administrator | |
Identify the network access security requirements for source and target databases. | DBA, Systems administrator | |
Identify the application migration strategy. | DBA, Systems administrator |
Task | Description | Skills required |
---|---|---|
Create a virtual private cloud (VPC). | Systems administrator | |
Create security groups. | Systems administrator | |
Configure and start an Amazon RDS DB instance. | DBA, Systems administrator |
Task | Description | Skills required |
---|---|---|
Use native SQL Server tools or third-party tools to migrate database objects and data. | DBA |
Task | Description | Skills required |
---|---|---|
Migrate data with AWS DMS. | DBA |
Task | Description | Skills required |
---|---|---|
Follow the application migration strategy. | DBA, App owner, Systems administrator |
Task | Description | Skills required |
---|---|---|
Switch the application clients over to the new infrastructure. | DBA, App owner, Systems administrator |
Task | Description | Skills required |
---|---|---|
Shut down the temporary AWS resources. | DBA, Systems administrator | |
Review and validate the project documents. | DBA, App owner, Systems administrator | |
Gather metrics such as time to migrate, percentage of manual versus automated tasks, and cost savings. | DBA, App owner, Systems administrator | |
Close out the project and provide feedback. | DBA, App owner, Systems administrator |
Related resources
References
Tutorials and videos