Migratieoverzicht: SQL Server naar Azure SQL Database

VAN TOEPASSING OP: Azure SQL Database

Meer informatie over de opties en overwegingen voor het migreren van uw SQL Server databases naar Azure SQL Database.

U kunt SQL Server databases migreren die on-premises of op worden uitgevoerd:

  • SQL Server in Azure Virtual Machines.
  • Amazon Web Services (AWS) Elastic Compute Cloud (EC2).
  • AWS Relational Database Service (RDS).
  • Compute Engine in Google Cloud Platform (GCP).
  • Cloud SQL voor SQL Server in GCP.

Zie Database migration (Databasemigratie) voor andere migratiehandleidingen.

Overzicht

Azure SQL Database is een aanbevolen doeloptie voor SQL Server workloads waarvoor een volledig beheerde platform as a service (PaaS) is vereist. SQL Database verwerkt de meeste databasebeheerfuncties. Het bevat ook ingebouwde mogelijkheden voor hoge beschikbaarheid, intelligente queryverwerking, schaalbaarheid en prestaties voor veel toepassingstypen.

SQL Database biedt flexibiliteit met meerdere implementatiemodellen en servicelagen die geschikt zijn voor verschillende soorten toepassingen of workloads.

Een van de belangrijkste voordelen van de migratie naar SQL Database is dat u uw toepassing kunt moderniseren met behulp van de PaaS-mogelijkheden. U kunt vervolgens elke afhankelijkheid elimineren van technische onderdelen die zijn beperkt tot het niveau van het exemplaar, zoals SQL Agent-taken.

U kunt ook kosten besparen met behulp van de Azure Hybrid Benefit voor SQL Server om uw on-premises SQL Server te migreren naar Azure SQL Database. Deze optie is beschikbaar als u het aankoopmodel op basis van vCore kiest.

Controleer de functies van SQL Server database-engine die beschikbaar zijn in Azure SQL Database ondersteuning van uw migratiedoel te valideren.

Overwegingen

De belangrijkste factoren die u moet overwegen bij het evalueren van migratieopties zijn:

  • Aantal servers en databases
  • Grootte van databases
  • Acceptabele bedrijfsuitvaltijd tijdens het migratieproces

Bij de migratieopties die in deze handleiding worden vermeld, wordt rekening gehouden met deze factoren. Voor logische gegevensmigratie naar Azure SQL Database kan de tijd die moet worden gemigreerd afhankelijk zijn van zowel het aantal objecten in een database als de grootte van de database.

Hulpprogramma's zijn beschikbaar voor verschillende workloads en gebruikersvoorkeuren. Sommige hulpprogramma's kunnen worden gebruikt om een snelle migratie van een individuele database uit te voeren via een hulpprogramma op basis van de gebruikersinterface. Andere hulpprogramma's kunnen de migratie van meerdere databases automatiseren om migraties op schaal af te handelen.

Een geschikt doel kiezen

Overweeg algemene richtlijnen om u te helpen bij het kiezen van het juiste implementatiemodel en de juiste servicelaag van Azure SQL Database. U kunt compute- en opslagbronnen kiezen tijdens de implementatie en deze vervolgens wijzigen met behulp van de Azure Portal zonder uitvaltijd voor uw toepassing.

Implementatiemodellen: inzicht in de workload van uw toepassing en het gebruikspatroon om te kiezen tussen één database of een elastische pool.

  • Eén database vertegenwoordigt een volledig beheerde database die geschikt is voor de meeste moderne cloudtoepassingen en microservices.
  • Een elastische pool is een verzameling individuele databases met een gedeelde set resources, zoals CPU of geheugen. Het is geschikt voor het combineren van databases in een pool met voorspelbare gebruikspatronen die effectief dezelfde set resources kunnen delen.

Aankoopmodellen: kies tussen de aankoopmodellen vCore, Database Transaction Unit (DTU) of serverloze aankoop.

  • Met het vCore-model kunt u het aantal vCores voor Azure SQL Database kiezen. Dit is dus de eenvoudigste keuze wanneer u vertaalt van on-premises SQL Server. Dit is de enige optie die ondersteuning biedt voor het besparen van licentiekosten met de Azure Hybrid Benefit.
  • Het DTU-model abstraheert de onderliggende reken-, geheugen- en I/O-resources om een gemengde DTU te bieden.
  • Het serverloze model is voor workloads waarvoor automatische schaalbaarheid op aanvraag is vereist met rekenbronnen die per seconde van het gebruik worden gefactureerd. De serverloze rekenlaag pauzeert databases automatisch tijdens inactieve perioden (waarbij alleen opslag wordt gefactureerd). Databases worden automatisch hervat wanneer de activiteit wordt hervat.

Servicelagen: kies uit drie servicelagen die zijn ontworpen voor verschillende typen toepassingen.

  • Algemeen/standard-servicelaag biedt een gebalanceerde budgetgeoriënteerde optie met reken- en opslagmogelijkheden die geschikt zijn voor het leveren van toepassingen in de middelste en lagere lagen. Redundantie is ingebouwd in de opslaglaag om fouten te herstellen. Het is ontworpen voor de meeste databaseworkloads.
  • Bedrijfskritiek/premium-servicelaag is voor toepassingen met hoge lagen waarvoor hoge transactiesnelheden, I/O met lage latentie en een hoog tolerantieniveau zijn vereist. Secundaire replica's zijn beschikbaar voor failover en voor het offloaden van leesworkloads.
  • De Hyperscale-servicelaag is voor databases met groeiende gegevensvolumes en die automatisch moeten worden geschaald tot 100 TB aan databasegrootte. Het is ontworpen voor zeer grote databases.

Belangrijk

De snelheid van transactielogboek is Azure SQL Database om hoge opnamesnelheden te beperken. Zo moet u tijdens de migratie mogelijk de schaal van doeldatabasebronnen (vCores of DTUs) verlagen om de druk op de CPU of doorvoer te verminderen. Kies de doeldatabase met de juiste grootte, maar plan het omhoog schalen van resources voor de migratie, indien nodig.

SQL Server VM-alternatief

Uw bedrijf kan vereisten hebben die ervoor zorgen dat SQL Server in Azure Virtual Machines een geschikter doel is dan Azure SQL Database.

Als een van de volgende voorwaarden van toepassing is op uw bedrijf, kunt u in plaats daarvan overwegen SQL Server virtuele machine (VM) te gebruiken:

  • U hebt directe toegang tot het besturingssysteem of bestandssysteem nodig, zoals om agents van derden of aangepaste agents te installeren op dezelfde virtuele machine met SQL Server.
  • U bent strikt afhankelijk van functies die nog steeds niet worden ondersteund, zoals FileStream/FileTable, PolyBase en transacties tussen exemplaren.
  • U moet in een specifieke versie van SQL Server (bijvoorbeeld 2012) blijven.
  • Uw rekenvereisten zijn veel lager dan een beheerd exemplaar biedt (bijvoorbeeld één vCore) en databaseconsolidatie is geen acceptabele optie.

Hulpprogramma's voor migratie

We raden de volgende migratiehulpprogramma's aan:

Technologie Beschrijving
Azure Migrate Deze Azure-service helpt u bij het op schaal ontdekken en beoordelen van uw SQL-gegevensgegevens op VMware. Het biedt Azure SQL implementatieaanbevelingen, doelschattingen en maandelijkse schattingen.
Gegevensmigratieassistent Dit bureaubladhulpprogramma van Microsoft biedt naadloze evaluaties van migraties van SQL Server en één database naar Azure SQL Database (schema en gegevens).

Het hulpprogramma kan worden geïnstalleerd op een on-premises server of op uw lokale computer die verbinding heeft met uw brondatabases. Het migratieproces is een logische gegevensver movement tussen objecten in de bron- en doeldatabases.
Azure Database Migration Service Deze Azure-service kan SQL Server databases migreren naar Azure SQL Database via de Azure Portal of automatisch via PowerShell. Database Migration Service moet u tijdens het inrichten een voorkeurs virtueel Azure-netwerk selecteren om ervoor te zorgen dat uw SQL Server databases. U kunt individuele databases migreren of op schaal.

De volgende tabel bevat alternatieve migratiehulpprogramma's:

Technologie Beschrijving
Transactionele replicatie Repliceer gegevens van SQL Server databasetabellen naar Azure SQL Database door een migratieoptie van het type uitgever-abonnee te bieden, met behoud van transactionele consistentie. Incrementele gegevenswijzigingen worden doorgegeven aan abonnees wanneer deze worden uitgevoerd op de uitgevers.
Exportservice/BACPAC importeren BACPAC is een Windows-bestand met een .bacpac-extensie die het schema en de gegevens van een database bevat. U kunt BACPAC gebruiken om gegevens uit een SQL Server te exporteren en de gegevens in een Azure SQL Database. Een BACPAC-bestand kan worden geïmporteerd in een nieuw SQL database via de Azure Portal.

Voor schaal en prestaties met grote databases of een groot aantal databases kunt u het opdrachtregelprogramma SqlPackage gebruiken om databases te exporteren en te importeren.
Bulksgewijs kopiëren Het hulpprogramma BCP (Bulk Copy Program) kopieert gegevens van een exemplaar van SQL Server naar een gegevensbestand. Gebruik het hulpprogramma om de gegevens uit uw bron te exporteren en het gegevensbestand te importeren in de SQL database.

Voor snelle bulksgetalbewerkingen om gegevens naar Azure SQL Database te verplaatsen, kunt u het hulpprogramma Smart Bulk Copy gebruiken om de overdrachtssnelheid te maximaliseren door gebruik te maken van parallelle kopieertaken.
Azure Data Factory De Copy-activiteit in Azure Data Factory migreert gegevens van SQL Server-databases naar Azure SQL Database met behulp van ingebouwde connectors en een integration runtime.

Data Factory ondersteunt een breed scala aan connectors voor het verplaatsen van gegevens van SQL Server bronnen naar Azure SQL Database.
SQL Data Sync SQL Data Sync is een service die is gebouwd op Azure SQL Database waarmee u geselecteerde gegevens bidirectioneel kunt synchroniseren tussen meerdere databases, zowel on-premises als in de cloud.
Data Sync is handig in gevallen waarin gegevens moeten worden bijgewerkt in verschillende databases in Azure SQL Database of SQL Server.

Migratieopties vergelijken

Vergelijk migratieopties om het pad te kiezen dat geschikt is voor uw bedrijfsbehoeften.

In de volgende tabel worden de migratieopties vergeleken die we aanbevelen:

Migratieoptie Wanneer gebruikt u dit? Overwegingen
Gegevensmigratieassistent - Individuele databases migreren (schema en gegevens).
- Kan downtime tijdens het gegevensmigratieproces opvangen.

Ondersteunde bronnen:
- SQL Server (2005 tot 2019) on-premises of Azure VM
- AWS EC2
- AWS RDS
- GCP Compute SQL Server VM
- De migratieactiviteit voert gegevensverhuizing uit tussen databaseobjecten (van bron naar doel), dus we raden u aan deze tijdens daluren uit te voeren.
- Data Migration Assistant de status van de migratie per databaseobject, inclusief het aantal gemigreerde rijen.
- Voor grote migraties (aantal databases of de grootte van de database) gebruikt u Azure Database Migration Service.
Azure Database Migration Service - Individuele databases migreren of op schaal.
- Kan downtime tijdens het migratieproces opvangen.

Ondersteunde bronnen:
- SQL Server (2005 tot 2019) on-premises of Azure VM
- AWS EC2
- AWS RDS
- GCP Compute SQL Server VM
- Migraties op schaal kunnen worden geautomatiseerd via PowerShell.
- De tijd voor het voltooien van de migratie is afhankelijk van de databasegrootte en het aantal objecten in de database.
- Vereist dat de brondatabase wordt ingesteld als alleen-lezen.

In de volgende tabel worden de alternatieve migratieopties vergeleken:

Methode of technologie Wanneer gebruikt u dit? Overwegingen
Transactionele replicatie - Migreren door continu wijzigingen te publiceren van brondatabasetabellen naar doeltabellen SQL Database doeldatabasetabellen.
- Volledige of gedeeltelijke databasemigraties van geselecteerde tabellen (subset van een database).

Ondersteunde bronnen:
- SQL Server (2016 tot 2019) met enkele beperkingen
- AWS EC2
- GCP Compute SQL Server VM
- Setup is relatief complex in vergelijking met andere migratieopties.
- Biedt een continue replicatieoptie voor het migreren van gegevens (zonder dat de databases offline worden gehaald).
- Transactionele replicatie heeft beperkingen om rekening mee te houden wanneer u de uitgever in het bron-SQL Server instellen. Zie Beperkingen voor het publiceren van objecten voor meer informatie.
- Het is mogelijk om replicatieactiviteit te bewaken.
Exportservice/BACPAC importeren - Migreert afzonderlijke Line-Of-Business-toepassingsdatabases.
- Geschikt voor kleinere databases.
- Vereist geen afzonderlijke migratieservice of een afzonderlijk hulpprogramma.

Ondersteunde bronnen:
- SQL Server (2005 tot 2019) on-premises of Azure VM
- AWS EC2
- AWS RDS
- GCP Compute SQL Server VM
- Uitvaltijd vereist omdat gegevens moeten worden geëxporteerd bij de bron en moeten worden geïmporteerd op de bestemming.
- De bestandsindelingen en gegevenstypen die worden gebruikt in het exporteren of importeren, moeten consistent zijn met tabelschema's om afroepen of fouten met niet-overeenkomende gegevenstypen te voorkomen.
- De tijd die nodig is om een database met een groot aantal objecten te exporteren, kan aanzienlijk hoger zijn.
Bulksgewijs kopiëren - Volledige of gedeeltelijke gegevensmigraties.
- Kan downtime opvangen.

Ondersteunde bronnen:
- SQL Server (2005 tot 2019) on-premises of Azure VM
- AWS EC2
- AWS RDS
- GCP Compute SQL Server VM
- Er is downtime vereist voor het exporteren van gegevens uit de bron en het importeren in het doel.
- De bestandsindelingen en gegevenstypen die worden gebruikt in het exporteren of importeren, moeten consistent zijn met tabelschema's.
Azure Data Factory - Gegevens migreren en/of transformeren vanuit SQL Server databases.
- Het samenvoegen van gegevens uit meerdere gegevensbronnen naar Azure SQL Database is doorgaans voor business intelligence (BI)-workloads.
- Vereist het maken van pijplijnen voor gegevensverplaatsing in Data Factory om gegevens van de bron naar de bestemming te verplaatsen.
- Kosten zijn een belangrijke overweging en zijn gebaseerd op factoren zoals pijplijntriggers, activiteits runs en de duur van gegevens movement.
SQL Data Sync - Gegevens synchroniseren tussen bron- en doeldatabases.
- Geschikt voor het uitvoeren van continue synchronisatie tussen Azure SQL Database en on-premises SQL Server in een bidirectionele stroom.
- Azure SQL Database moet de hubdatabase zijn voor synchronisatie met een on-premises SQL Server database als liddatabase.
- Vergeleken met transactionele replicatie biedt SQL Data Sync ondersteuning voor bidirectionele gegevenssynchronisatie tussen on-premises en Azure SQL Database.
- Kan een hogere invloed hebben op de prestaties, afhankelijk van de workload.

Functie-interoperabiliteit

Er zijn meer overwegingen bij het migreren van workloads die afhankelijk zijn van andere SQL Server functies.

SQL Server Integration Services

Mier SQL Server Integration Services pakketten (SSIS) naar Azure door de pakketten opnieuw te implementeren naar de Azure-SSIS-runtime in Azure Data Factory. Azure Data Factory ondersteunt de migratie van SSIS-pakketten door een runtime te bieden die is gebouwd om SSIS-pakketten uit te voeren in Azure. U kunt de SSIS ETL-logica (extraheren, transformeren, laden) ook systeemeigen herschrijven in Azure Data Factory met behulp van gegevensstromen.

SQL Server Reporting Services

Migreert SQL Server Reporting Services (SSRS) naar ge pagineerde rapporten in Power BI. Gebruik het hulpprogramma voor RDL-migratie om uw rapporten voor te bereiden en te migreren. Microsoft heeft dit hulpprogramma ontwikkeld om klanten te helpen Report Definition Language (RDL)-rapporten te migreren van hun SSRS-servers naar Power BI. Het is beschikbaar op GitHub en bevat een end-to-end overzicht van het migratiescenario.

Hoge beschikbaarheid

Handmatige installatie van SQL Server functies voor hoge beschikbaarheid, zoals Always On-failovercluster-exemplaren en Always On-beschikbaarheidsgroepen, worden verouderd op de doelgroep SQL database. Architectuur voor hoge beschikbaarheid is al ingebouwd in Algemeen-servicelagen (standaardbeschikbaarheidsmodel) en Bedrijfskritiek -servicelagen (premium-beschikbaarheidsmodel) voor Azure SQL Database. De Bedrijfskritiek/premium-servicelaag biedt ook uitschalen van lees lezen waarmee u verbinding kunt maken met een van de secundaire knooppunten voor alleen-lezendoeleinden.

Naast de architectuur voor hoge beschikbaarheid die is opgenomen in Azure SQL Database, kunt u met de functie voor groepen voor automatische failover de replicatie en failover van databases in een beheerd exemplaar naar een andere regio beheren.

Aanmeldingen en groepen

Windows-aanmeldingen worden niet ondersteund in Azure SQL Database. Maak in plaats daarvan een Azure Active Directory aanmelding. Maak handmatig SQL-aanmeldingen opnieuw.

SQL Agent-taken

SQL Agent-taken worden niet rechtstreeks ondersteund in Azure SQL Database en moeten worden geïmplementeerd voor elastische databasetaken (preview).

Systeemdatabases

Voor Azure SQL Database zijn de enige toepasselijke systeemdatabases master en tempdb. Zie Tempdb inAzure SQL Database .

Geavanceerde functies

Zorg ervoor dat u profiteert van de geavanceerde cloudfuncties in SQL Database. U hoeft zich bijvoorbeeld geen zorgen te maken over het beheren van back-ups, omdat de service dit voor u doet. U kunt binnen de retentieperiode herstellen naar een bepaald tijdstip.

U kunt de beveiliging verbeteren door Azure AD-verificatie, controle,detectie van bedreigingen, beveiliging op rijniveau en dynamische gegevensmaskering te gebruiken.

Naast geavanceerde beheer- en beveiligingsfuncties biedt SQL Database waarmee u uw workload kunt bewaken en afstemmen. Azure SQL-analyse (Preview) is een geavanceerde oplossing voor het bewaken van de prestaties van al uw databases in Azure SQL Database op schaal en voor meerdere abonnementen in één weergave. Azure SQL-analyse verzamelt en visualiseert belangrijke prestatiemetrieken met ingebouwde intelligentie voor het oplossen van prestatieproblemen.

Automatisch afstemmen   controleert continu de prestaties van uw SQL-uitvoeringsplan en lost automatisch geïdentificeerde prestatieproblemen op.

Migratie-assets

Zie de volgende resources die zijn ontwikkeld voor echte migratieprojecten voor meer hulp.

Asset Beschrijving
Model en hulpprogramma voor evaluatie van gegevensworkloads Dit hulpprogramma biedt voorgestelde 'best fit' doelplatforms, cloud-gereedheid en een herstelniveau voor een toepassing/database voor een workload. Het biedt eenvoudige berekening met één klik en het genereren van een rapport waarmee u grote evaluaties van onroerend goed kunt versnellen door een geautomatiseerd en uniform beslissingsproces te bieden voor doelplatforms.
DbLoader-hulpprogramma U kunt DBLoader gebruiken om gegevens uit tekstbestanden met scheidingstekens te laden in SQL Server. Dit Windows-consoleprogramma maakt gebruik van SQL Server systeemeigen clientinterface voor bulksgewijs laden. De interface werkt op alle versies van SQL Server, samen met Azure SQL Database.
Bulksgewijs databases maken met PowerShell U kunt een set van drie PowerShell-scripts gebruiken voor het maken van een resourcegroep (create_rg.ps1), de logische server in Azure (create_sqlserver.ps1) en een SQL database (create_sqldb.ps1). De scripts bevatten lusmogelijkheden, zodat u zoveel servers en databases kunt herhalen en maken als nodig is.
Bulkschema-implementatie met MSSQL-Scripter en PowerShell Met deze asset maakt u een resourcegroep, maakt u een of meer logische servers in Azure voor het hosten van Azure SQL Database, exporteert u elk schema vanuit een on-premises SQL Server-exemplaar (of meerdere SQL Server 2005+-exemplaren) en importeert u de schema's naar Azure SQL Database.
Taken SQL Server Agent naar elastische databasetaken Met dit script migreert u uw SQL Server Agent taken naar elastische databasetaken.
E-mailberichten verzenden Azure SQL Database Deze oplossing is een alternatief voor SendMail en is beschikbaar voor on-premises SQL Server. Er wordt gebruikgemaakt Azure Functions en de SendGrid-service voor het verzenden van e-mailberichten Azure SQL Database.
Hulpprogramma voor het verplaatsen van on-premises SQL Server aanmeldingen naar Azure SQL Database Met een PowerShell-script kunt u een T-SQL-opdrachtscript maken om aanmeldingen opnieuw te maken en databasegebruikers te selecteren van on-premises SQL Server naar Azure SQL Database. Het hulpprogramma staat automatische toewijzing van Windows Server Active Directory-accounts toe aan Azure AD-accounts, samen met optioneel SQL Server systeemeigen aanmeldingen.
Automatisering van gegevensverzameling perfmon met behulp van Logman U kunt het Hulpprogramma Logman gebruiken om Perfmon-gegevens te verzamelen (om inzicht te krijgen in de basislijnprestaties) en aanbevelingen voor het migratiedoel op te halen. Dit hulpprogramma gebruikt logman.exe om de opdracht te maken waarmee prestatiemeters worden gemaakt, starten, stoppen en verwijderen die zijn ingesteld op een extern SQL Server exemplaar.
Databasemigratie naar Azure SQL Database met behulp van BACPAC Dit whitepaper bevat richtlijnen en stappen voor het versnellen van migraties van SQL Server naar Azure SQL Database met behulp van BACPAC-bestanden.

Het Data SQL Engineering-team heeft deze resources ontwikkeld. De kern van dit team is het deblokkeren en versnellen van complexe modernisering voor gegevensplatformmigratieprojecten naar het Azure-gegevensplatform van Microsoft.

Volgende stappen