Migratiehandleiding: SQL Server naar Azure SQL Managed Instance

Van toepassing op: Azure SQL Managed Instance

Deze handleiding helpt u bij het migreren van uw SQL Server-exemplaar naar Azure SQL Managed Instance.

U kunt SQL Server migreren die on-premises of on-premises wordt uitgevoerd:

  • SQL Server on Virtual Machines
  • Amazon EC2 (Elastic Compute Cloud)
  • Amazon RDS (Relational Database Service) voor SQL Server
  • Google Compute Engine
  • Cloud SQL voor SQL Server - GCP (Google Cloud Platform)

Zie het migratieoverzicht voor meer informatie over migratie. Zie Databasemigratie voor andere migratiehandleidingen.

Migration process flow

Vereisten

Als u uw SQL Server wilt migreren naar Azure SQL Managed Instance, moet u het volgende hebben:

Premigratie

Nadat u hebt gecontroleerd of uw bronomgeving wordt ondersteund, begint u met de fase vóór de migratie. Ontdek alle bestaande gegevensbronnen, beoordeel de haalbaarheid van de migratie en identificeer eventuele blokkeringsproblemen die uw migratie kunnen voorkomen.

Detecteren

Scan in de fase Ontdekken het netwerk om alle SQL Server-exemplaren en -functies te identificeren die door uw organisatie worden gebruikt.

Gebruik Azure Migrate om de geschiktheid voor migratie van on-premises servers te beoordelen, de grootte op basis van prestaties uit te voeren en kostenramingen te bieden voor het uitvoeren ervan in Azure.

U kunt ook de Microsoft Assessment and Planning Toolkit (de MAP Toolkit) gebruiken om uw huidige IT-infrastructuur te evalueren. De toolkit biedt een krachtig hulpprogramma voor inventarisatie, evaluatie en rapportage om het migratieplanningsproces te vereenvoudigen.

Zie Services en hulpprogramma's die beschikbaar zijn voor gegevensmigratiescenario's voor meer informatie over hulpprogramma's die beschikbaar zijn voor de detectiefase.

Nadat gegevensbronnen zijn gedetecteerd, evalueert u een of meer on-premises SQL Server-exemplaren die kunnen worden gemigreerd naar Azure SQL Managed Instance om migratieblokkeringen of compatibiliteitsproblemen te identificeren. Ga verder met de volgende stappen om databases te evalueren en te migreren naar Azure SQL Managed Instance:

Steps for migration to Azure SQL Managed Instance

Evalueren

Notitie

Als u de volledige SQL Server-gegevensomgeving op schaal beoordeelt op VMware, gebruikt u Azure Migrate om aanbevelingen voor Azure SQL-implementaties, doelgrootten en maandelijkse schattingen op te halen.

Bepaal of SQL Managed Instance compatibel is met de databasevereisten van uw toepassing. SQL Managed Instance is ontworpen om eenvoudige lift-and-shift-migratie te bieden voor de meeste bestaande toepassingen die gebruikmaken van SQL Server. Soms hebt u echter functies of mogelijkheden nodig die nog niet worden ondersteund en de kosten voor het implementeren van een tijdelijke oplossing te hoog zijn.

De Azure SQL-migratie-extensie voor Azure Data Studio biedt een naadloze ervaring op basis van wizards om azure-aanbevelingen te beoordelen, aanbevelingen te krijgen en uw SQL Server-databases on-premises te migreren naar SQL Server op virtuele Azure-machines. Naast het markeren van eventuele migratieblokkeringen of waarschuwingen, bevat de extensie ook een optie voor Azure-aanbevelingen voor het verzamelen van de prestatiegegevens van uw databases om een geschikt Azure SQL Managed Instance aan te bevelen om te voldoen aan de prestatiebehoeften van uw workload (met de minste prijs).

U kunt de Azure SQL Migration-extensie voor Azure Data Studio gebruiken om databases te evalueren om het volgende te verkrijgen:

Voer de volgende stappen uit om uw omgeving te evalueren met behulp van de Azure SQL Migration-extensie:

  1. Open de Azure SQL Migration-extensie voor Azure Data Studio.
  2. Verbinding maken naar uw SQL Server-bronexemplaren
  3. Klik op de knop Migreren naar Azure SQL in de wizard Azure SQL Migration in Azure Data Studio
  4. Selecteer databases voor evaluatie en klik vervolgens op volgende
  5. Selecteer uw Azure SQL-doel, in dit geval Azure SQL Managed Instance
  6. Klik op Weergeven/Selecteren om het evaluatierapport te bekijken
  7. Zoek naar problemen met migratieblokkering en functiepariteit. Het evaluatierapport kan ook worden geëxporteerd naar een bestand dat kan worden gedeeld met andere teams of medewerkers in uw organisatie.
  8. Bepaal het compatibiliteitsniveau van de database waarmee de inspanningen na de migratie worden geminimaliseerd.

Voer de volgende stappen uit om een Azure-aanbeveling te krijgen met behulp van de Azure SQL Migration-extensie:

  1. Open de Azure SQL Migration-extensie voor Azure Data Studio.
  2. Verbinding maken naar uw SQL Server-bronexemplaren
  3. Klik op de knop Migreren naar Azure SQL in de wizard Azure SQL Migration in Azure Data Studio
  4. Selecteer databases voor evaluatie en klik vervolgens op volgende
  5. Selecteer uw Azure SQL-doel, in dit geval Azure SQL Managed Instance
  6. Ga naar de secties met Azure-aanbevelingen en klik op Azure-aanbeveling ophalen
  7. Selecteer Nu prestatiegegevens verzamelen. Selecteer een map op uw lokale computer om de prestatielogboeken op te slaan en selecteer vervolgens Start.
  8. Na tien minuten geeft Azure Data Studio aan dat er een aanbeveling beschikbaar is voor Azure SQL Managed Instance.
  9. Controleer de kaart Azure SQL Managed Instance in het azure SQL-doelvenster om uw SKU-aanbeveling voor Azure SQL Managed Instance te controleren

Zie zelfstudie: SQL Server online migreren naar Azure SQL Managed Instance met behulp van Azure Data Studio voor meer informatie.

Zie Zelfstudie: SQL Server offline migreren naar Azure SQL Managed Instance met behulp van Azure Data Studio voor meer informatie.

Als de evaluatie meerdere obstakels tegenkomt om te bevestigen dat uw database niet gereed is voor een Azure SQL Managed Instance, kunt u ook het volgende overwegen:

Geschaalde evaluaties en analyse

De Azure SQL Migration-extensie voor Azure Data Studio en Azure Migrate ondersteunt het uitvoeren van geschaalde evaluaties en consolidatie van de evaluatierapporten voor analyse.

Als u meerdere servers en databases hebt die op schaal moeten worden beoordeeld en geanalyseerd om een breder overzicht van de gegevensomgeving te bieden, raadpleegt u de volgende koppelingen voor meer informatie:

Belangrijk

Het uitvoeren van evaluaties op schaal voor meerdere databases kan ook worden geautomatiseerd met behulp van het opdrachtregelprogramma van DMA, waardoor de resultaten ook kunnen worden geüpload naar Azure Migrate voor verdere analyse en doelgereedheid.

Implementeren naar een optimaal beheerd exemplaar

U kunt de Azure SQL-migratieextensie voor Azure Data Studio gebruiken om een aanbeveling voor Azure SQL Managed Instance te krijgen. De extensie verzamelt prestatiegegevens van uw SQL Server-bronexemplaren om azure-aanbevelingen te bieden die voldoen aan de prestatiebehoeften van uw workload met minimale kosten. Zie De aanbeveling van Azure met de juiste grootte krijgen voor uw on-premises SQL Server-database(s) voor meer informatie

Op basis van de informatie in de detectie- en evaluatiefase maakt u een doel-SQL Managed Instance met de juiste grootte. U kunt dit doen met behulp van de Azure-portal, PowerShell of een ARM-sjabloon (Azure Resource Manager).

SQL Managed Instance is afgestemd op on-premises workloads die van plan zijn om over te stappen naar de cloud. Het introduceert een aankoopmodel dat meer flexibiliteit biedt bij het selecteren van het juiste niveau van resources voor uw workloads. In de on-premises wereld bent u waarschijnlijk gewend om de grootte van deze workloads te wijzigen met behulp van fysieke kernen en IO-bandbreedte. Het aankoopmodel voor een beheerd exemplaar is gebaseerd op virtuele kernen of 'vCores', waarbij extra opslag en I/O afzonderlijk beschikbaar zijn. Het vCore-model is een eenvoudigere manier om inzicht te hebben in uw rekenvereisten in de cloud en wat u on-premises gebruikt. Met dit aankoopmodel kunt u de grootte van uw doelomgeving in de cloud aanpassen. Enkele algemene richtlijnen die u kunnen helpen bij het kiezen van de juiste servicelaag en kenmerken, worden hier beschreven:

  • Op basis van het CPU-gebruik volgens de basislijn kunt u een beheerd exemplaar inrichten dat overeenkomt met het aantal kernen dat u op SQL Server gebruikt. Houd er rekening mee dat CPU-kenmerken mogelijk moeten worden geschaald zodat deze overeenkomen met de VM-kenmerken waarop het beheerde exemplaar is geïnstalleerd.
  • Kies op basis van het geheugengebruik volgens de basislijn de servicelaag met overeenkomend geheugen. De hoeveelheid geheugen kan niet rechtstreeks worden gekozen, dus moet u het beheerde exemplaar selecteren met de hoeveelheid vCores die overeenkomend geheugen heeft (bijvoorbeeld 5,1 GB/vCore in standard-serie (Gen5)).
  • Kies op basis van de IO-latentie van het bestandssubsysteem de servicelagen Algemeen gebruik (latentie groter dan 5 ms) en Bedrijfskritiek (latentie kleiner dan 3 ms).
  • Wijs op basislijndoorvoer de grootte van gegevens of logboekbestanden vooraf toe om verwachte IO-prestaties te verkrijgen.

U kunt reken- en opslagresources kiezen tijdens de implementatie en deze later wijzigen zonder downtime voor uw toepassing te introduceren met behulp van Azure Portal:

Managed Instance Sizing

Zie Een beheerd exemplaar maken voor meer informatie over het maken van de VNet-infrastructuur en een beheerd exemplaar.

Belangrijk

Het is belangrijk om uw doel-VNet en subnet in overeenstemming te houden met de VNet-vereisten van het beheerde exemplaar. Eventuele incompatibiliteit kan voorkomen dat u nieuwe exemplaren maakt of nieuwe exemplaren gebruikt die u al hebt gemaakt. Meer informatie over het maken van nieuwe en het configureren van bestaande netwerken.

Migrate

Nadat u taken hebt voltooid die zijn gekoppeld aan de fase Vóór de migratie, kunt u het schema en de gegevensmigratie uitvoeren.

Migreer uw gegevens met behulp van de gekozen migratiemethode.

SQL Managed Instance is gericht op gebruikersscenario's waarvoor massamigratie van databases van on-premises of Azure VM-database-implementaties is vereist. Ze zijn de optimale keuze wanneer u de back-end van de toepassingen die regelmatig gebruikmaken van het exemplaarniveau en/of functies voor meerdere databases, moet optillen en verplaatsen. Als dit uw scenario is, kunt u een hele instantie verplaatsen naar een bijbehorende omgeving in Azure zonder dat u uw toepassingen opnieuw hoeft te ontwerpen.

Als u SQL-exemplaren wilt verplaatsen, moet u zorgvuldig plannen:

  • De migratie van alle databases die moeten worden gemigreerde (databases die op hetzelfde exemplaar worden uitgevoerd).
  • De migratie van objecten op exemplaarniveau waarvan uw toepassing afhankelijk is, inclusief aanmeldingen, referenties, SQL Agent-taken en -operators en triggers op serverniveau.

SQL Managed Instance is een beheerde service waarmee u enkele van de reguliere DBA-activiteiten naar het platform kunt delegeren terwijl ze zijn ingebouwd. Daarom hoeven sommige gegevens op exemplaarniveau niet te worden gemigreerd, zoals onderhoudstaken voor regelmatige back-ups of AlwaysOn-configuratie, omdat hoge beschikbaarheid is ingebouwd.

In dit artikel worden twee van de aanbevolen migratieopties behandeld:

  • Azure SQL-migratie-extensie voor Azure Data Studio: migratie met bijna nul downtime.
  • Systeemeigen RESTORE DATABASE FROM URL : maakt gebruik van systeemeigen back-ups van SQL Server en vereist enige downtime.

In deze handleiding worden de twee populairste opties beschreven: Azure Database Migration Service (DMS) en systeemeigen back-up en herstel.

Zie Migratieopties vergelijken voor andere hulpprogramma's voor migratie.

Migreren met behulp van de Azure SQL-migratie-extensie voor Azure Data Studio (minimale downtime)

Als u een minimale downtimemigratie wilt uitvoeren met behulp van Azure Data Studio, volgt u de onderstaande stappen op hoog niveau. Zie SQL Server online migreren naar een azure SQL Managed Instance met behulp van Azure Data Studio voor een gedetailleerde stapsgewijze zelfstudie:

  1. Download en installeer Azure Data Studio en de Azure SQL-migratie-extensie.
  2. Start de wizard Migreren naar Azure SQL Migration in de extensie in Azure Data Studio.
  3. Selecteer databases voor evaluatie en bekijk migratiegereedheid of problemen (indien van toepassing). Daarnaast verzamelt u prestatiegegevens en krijgt u een azure-aanbeveling met de juiste grootte.
  4. Selecteer uw Azure-account en uw doel-Azure SQL Managed Instance in uw abonnement.
  5. Selecteer de locatie van uw databaseback-ups. Uw databaseback-ups kunnen zich bevinden op een on-premises netwerkshare of in een Azure Blob Storage-container.
  6. Maak een nieuwe Azure Database Migration Service met behulp van de wizard in Azure Data Studio. Als u eerder een Azure Database Migration Service hebt gemaakt met behulp van Azure Data Studio, kunt u dit desgewenst opnieuw gebruiken.
  7. Optioneel: Als uw back-ups zich op een on-premises netwerkshare bevinden, downloadt en installeert u zelf-hostende Integration Runtime op een computer die verbinding kan maken met de bron-SQL Server en de locatie met de back-upbestanden.
  8. Start de databasemigratie en controleer de voortgang in Azure Data Studio. U kunt ook de voortgang bewaken onder de Azure Database Migration Service-resource in Azure Portal.
  9. Voltooi de cutover.
    1. Stop alle binnenkomende transacties naar de brondatabase.
    2. Breng wijzigingen in de toepassingsconfiguratie aan zodat deze verwijst naar de doeldatabase in Azure SQL Managed Instance.
    3. Maak back-ups van taillogboeken voor de brondatabase op de opgegeven back-uplocatie.
    4. Zorg ervoor dat alle databaseback-ups de status Hersteld hebben op de pagina met bewakingsgegevens.
    5. Selecteer Cutover voltooien op de pagina met bewakingsgegevens.

Back-ups en herstellen

Een van de belangrijkste mogelijkheden van Azure SQL Managed Instance om snelle en eenvoudige databasemigratie mogelijk te maken, is het systeemeigen herstel van back-upbestanden van databases die.bak zijn opgeslagen in Azure Storage. Back-ups maken en herstellen zijn asynchrone bewerkingen op basis van de grootte van uw database.

Het volgende diagram biedt een algemeen overzicht van het proces:

Diagram shows SQL Server with an arrow labeled BACKUP / Upload to URL flowing to Azure Storage and a second arrow labeled RESTORE from URL flowing from Azure Storage to a SQL Managed Instance.

Notitie

De tijd om de back-up te maken, deze te uploaden naar Azure Storage en een systeemeigen herstelbewerking uit te voeren naar Azure SQL Managed Instance, is gebaseerd op de grootte van de database. Houd rekening met voldoende downtime voor de bewerking voor grote databases.

De volgende tabel bevat meer informatie over de methoden die u kunt gebruiken, afhankelijk van de bronversie van SQL Server die u uitvoert:

Stap SQL Engine en versie Back-up-/herstelmethode
Back-up maken naar Azure Storage Vóór 2012 SP1 CU2 BAK-bestand rechtstreeks uploaden naar Azure Storage
2012 SP1 CU2 - 2016 Directe back-up met afgeschafte WITH CREDENTIAL-syntaxis
2016 en hoger Directe back-up met SAS CREDENTIAL
Herstellen van Azure Storage naar een beheerd exemplaar RESTORE FROM URL with SAS CREDENTIAL

Belangrijk

  • Wanneer u een database migreert die wordt beveiligd door Transparent Data Encryption naar een beheerd exemplaar met behulp van de systeemeigen hersteloptie, moet het bijbehorende certificaat van de on-premises of Azure VM SQL Server worden gemigreerd voordat de database wordt hersteld. Zie Een TDE-certificaat migreren naar een beheerd exemplaar voor gedetailleerde stappen.
  • Herstellen van systeemdatabases wordt niet ondersteund. Als u objecten op exemplaarniveau wilt migreren (opgeslagen in master of msdb databases), raden we u aan om ze uit te voeren en T-SQL-scripts uit te voeren op het doelexemplaren.

Voer de volgende stappen uit om te migreren met behulp van back-up en herstel:

  1. Maak een back-up van uw database naar Azure Blob Storage. Gebruik bijvoorbeeld back-up naar URL in SQL Server Management Studio. Gebruik het Microsoft Azure-hulpprogramma om databases te ondersteunen die ouder zijn dan SQL Server 2012 SP1 CU2.

  2. Verbinding maken naar uw Azure SQL Managed Instance met behulp van SQL Server Management Studio.

  3. Maak een referentie met behulp van een Shared Access Signature voor toegang tot uw Azure Blob Storage-account met uw databaseback-ups. Bijvoorbeeld:

    CREATE CREDENTIAL [https://mitutorials.blob.core.windows.net/databases]
    WITH IDENTITY = 'SHARED ACCESS SIGNATURE'
    , SECRET = 'sv=2017-11-09&ss=bfqt&srt=sco&sp=rwdlacup&se=2028-09-06T02:52:55Z&st=2018-09-04T18:52:55Z&spr=https&sig=WOTiM%2FS4GVF%2FEEs9DGQR9Im0W%2BwndxW2CQ7%2B5fHd7Is%3D'
    
  4. Herstel de back-up vanuit de Azure Storage-blobcontainer. Bijvoorbeeld:

    RESTORE DATABASE [TargetDatabaseName] FROM URL =
      'https://mitutorials.blob.core.windows.net/databases/WideWorldImporters-Standard.bak'
    
  5. Zodra het herstellen is voltooid, bekijkt u de database in Objectverkenner in SQL Server Management Studio.

Zie Een database herstellen naar Azure SQL Managed Instance met SSMS voor meer informatie over deze migratieoptie.

Notitie

Een databaseherstelbewerking is asynchroon en kan opnieuw worden geprobeerd. Mogelijk wordt er een fout weergegeven in SQL Server Management Studio als de verbinding wordt verbroken of als er een time-out optreedt. Op de achtergrond wordt blijvend geprobeerd om de database terug te zetten. U kunt de voortgang hiervan volgen in de weergaven sys.dm_exec_requests en sys.dm_operation_status.

Gegevenssynchronisatie en cutover

Wanneer u migratieopties gebruikt waarmee gegevenswijzigingen van bron naar het doel continu worden gerepliceerd/gesynchroniseerd, kunnen de brongegevens en het schema van het doel veranderen en afwijken. Zorg er tijdens de gegevenssynchronisatie voor dat alle wijzigingen in de bron worden vastgelegd en toegepast op het doel tijdens het migratieproces.

Nadat u hebt gecontroleerd of de gegevens hetzelfde zijn op zowel de bron als het doel, kunt u oversnijden van de bron naar de doelomgeving. Het is belangrijk om het cutover-proces te plannen met bedrijfs- of toepassingsteams om ervoor te zorgen dat minimale onderbrekingen tijdens cutover geen invloed hebben op de bedrijfscontinuïteit.

Postmigratie

Nadat u de migratiefase hebt voltooid, doorloopt u een reeks taken na de migratie om ervoor te zorgen dat alles soepel en efficiënt functioneert.

De fase na de migratie is van cruciaal belang voor het afstemmen van eventuele problemen met gegevensnauwkeurigheid en het controleren van de volledigheid en het oplossen van prestatieproblemen met de workload.

Toepassingen bewaken en herstellen

Zodra u de migratie naar een beheerd exemplaar hebt voltooid, moet u het gedrag en de prestaties van uw workload bijhouden. Dit proces omvat de volgende activiteiten:

Tests uitvoeren

De testbenadering voor databasemigratie bestaat uit de volgende activiteiten:

  1. Validatietests ontwikkelen: als u databasemigratie wilt testen, moet u SQL-query's gebruiken. U moet de validatiequery's maken om te worden uitgevoerd op zowel de bron- als de doeldatabase. Uw validatiequery's moeten betrekking hebben op het bereik dat u hebt gedefinieerd.
  2. Testomgeving instellen: de testomgeving moet een kopie van de brondatabase en de doeldatabase bevatten. Zorg ervoor dat u de testomgeving isoleert.
  3. Validatietests uitvoeren: voer de validatietests uit op de bron en het doel en analyseer vervolgens de resultaten.
  4. Prestatietests uitvoeren: voer de prestatietest uit op de bron en het doel en analyseer en vergelijk vervolgens de resultaten.

Geavanceerde functies gebruiken

U kunt profiteren van de geavanceerde cloudfuncties die worden aangeboden door SQL Managed Instance, zoals ingebouwde hoge beschikbaarheid, detectie van bedreigingen en het bewaken en afstemmen van uw workload.

Met Azure SQL Analytics kunt u een grote set beheerde exemplaren op een gecentraliseerde manier bewaken.

Sommige SQL Server-functies zijn alleen beschikbaar zodra het compatibiliteitsniveau van de database is gewijzigd in het meest recente compatibiliteitsniveau (150).

Volgende stappen