SQL Server Migration to Azure Readiness Resources
This learning plan aggregates content for understanding and successfully migrating SQL Server databases into Microsoft Azure.
In any database migration, it is important to have the source system documented in order to evaluate target options. For the source system, a minimum amount of information needed includes:
- Overall system size (CPU/RAM/IO subsystem), current usage, and version
- Architectural diagram showing database layout and interconnectivity. This includes cross database connectivity, ETL processes, and any feature usage such as transactional replication.
- Security requirements: information on account types (for example, Azure AD), encryption requirements (such as TDE)
- BCDR requirements: clustering, high availability, georeplication, etc. - having defined RPO (recovery point objective) and RTO (recovery time objective) numbers are essential.
With this information, options can be evaluated for both cost and technical feasibility. For example, a large server with many interconnected databases will likely be a better fit for Azure SQL Database Managed Instance, whereas a server with dozens or hundreds of independent databases will likely be a better fit for Azure SQL Database (singleton) with Elastic Pools.
Content is broken down as follows:
- Pre-migration, Migration, Post-migration
- Certifications: relevant Microsoft exams or certifications
- Community resources: user groups, events, blogs
Pre-migration
The single best resource is the Microsoft Online Migration Guide, as it allows you to select both source and target systems and see prescriptive guidance:
SQL Server Resources
- Learn how to use Transact-SQL to query data in a database
- Learn how to use Transact-SQL to query data in a database
- SQL Server Discovery using the Microsoft Assessment and Planning (MAP) toolkit (Microsoft Learn Module)
- Data Migraton Assistant (Microsoft Docs \ Application)
- Primary tool for evaluating a SQL Database for compatibility issues
- Test and optimize SQL Server databases using the Database Experimentation Assistant (DEA) (Microsoft Learn Module)
- Azure Data Studio (Microsoft Docs \ Application)
- Plan and implement data platform resources (Microsoft Learning Path)
- Explore options for deployment and migration
- Calculate resource requirements and create templates
- PaaS vs IaaS (Video)
- Presentation that contrasts Azure SQL DB and SQL in VMs.
- Information is dated as it does not include Azure SQL Database Managed Instance, but conceptually many of the ideas apply
- Migrate SQL workloads to Azure (Micorosft Learning Path)
- Learn how to migrate SQL Server workloads to SQL Services that exist on Azure
- Choose the Right Deployment Option in Azure SQL (Microsoft Docs)
- Outlines the deployment options for SQL Server in Azure
- SQL Server on Azure VMs (Microsoft Docs)
- Overview of best practices in creating SQL Server in VMs
- Checklist: Best practices for SQL Server on Azure VMs (Microsoft Docs)
- This article provides a checklist of best practices and guidelines for SQL Server on Azure Virtual Machines. The article also includes links to additional learning content.
Migration
- Data Access Migration Toolkit (Tooling)
- This tool can be useful in scanning application source documents/code for data access patterns.
SQL Server Resources
- Key Causes of Performance Differences with SQL Managed Instance (Blog)
- SQL Managed Instance Network Requirements
- SQL Managed Instance Connectivity Architecture
Post-migration
- Migrate SQL Server to Azure SQL DB (Tutorial)
SQL Server Resources
- Monitor and optimize operational resources in Azure SQL (Microsoft Learning Path)
- Optimize query performance in Azure SQL (Microsoft Learning Path)
- Explore performance-related Dynamic Management Objects
- Investigate how indexes and database design affect queries
Pluralsight Courses
- Pluralsight: Migrating to SQL Server 2016 (3rd Party, $)
- Pluralsight: Azure SQL Database (3rd Party, $)
Video Series
Certifications
- AZ-900 Azure Fundamentals Certification
Demonstrate a fundamental knowledge of cloud concepts, along with Azure services, workloads, security, privacy, pricing, and support - DP-900 Azure Data Fundamentals Certification
Demonstrate knowledge of core data concepts and related Microsoft Azure data services - DP-300: Administering Relational Databases on Microsoft Azure
This exam is for database administrators who manage on-premises and cloud databases built with SQL Server and SQL database services. Candidates for this exam should have knowledge of and experience with Azure SQL Edge, Azure SQL Database, Azure SQL Managed Instance, and SQL Server on Azure Virtual Machines (Windows and Linux).