Delen via


Overzicht van logboekherhalingsservice met Azure SQL Managed Instance

van toepassing op:Azure SQL Managed Instance

Dit artikel bevat een overzicht van De Log Replay Service (LRS), die u kunt gebruiken om databases te migreren van SQL Server naar Azure SQL Managed Instance. LRS is een gratis cloudservice die beschikbaar is voor Azure SQL Managed Instance en op basis van SQL Server-technologie voor logboekverzending.

Omdat LRS standaard backupbestanden van SQL Server herstelt, kunt u deze gebruiken om te migreren van SQL Server overal (on-premises of in een cloud) naar Azure SQL Managed Instance.

Als u uw migratie met LRS wilt starten, raadpleegt u Databases migreren met behulp van de Log Replay Service-.

Belangrijk

Voordat u databases migreert naar de Bedrijfskritieke servicelaag, moet u deze beperkingen overwegen, die niet van toepassing zijn op de Algemene Gebruik servicelaag.

Wanneer gebruikt u de Service voor opnieuw afspelen van logboeken

Azure Database Migration Service, gebruiken de Azure SQL-migratie-extensie voor Azure Data Studioen LRS allemaal dezelfde onderliggende migratietechnologie en API's. LRS maakt complexe aangepaste migraties en hybride architecturen mogelijk tussen on-premises SQL Server-exemplaren en implementaties van SQL Managed Instance.

Wanneer u Azure Database Migration Service of de Azure SQL-extensie voor migratie niet kunt gebruiken, kunt u LRS rechtstreeks gebruiken met PowerShell, Azure CLI-cmdlets of API's om handmatig databasemigraties naar SQL Managed Instance te bouwen en te organiseren.

Overweeg om LRS in de volgende gevallen te gebruiken, wanneer:

  • U hebt meer controle over uw databasemigratieproject nodig.
  • Er is weinig tolerantie voor downtime tijdens de overstap van de migratie.
  • Het uitvoerbare bestand van Database Migration Service kan niet in uw omgeving worden geïnstalleerd.
  • Het uitvoerbare bestand van Database Migration Service heeft geen bestandstoegang tot uw databaseback-ups.
  • De Azure SQL-migratie-extensie kan niet worden geïnstalleerd in uw omgeving of heeft geen toegang tot uw databaseback-ups.
  • Er is geen toegang tot het hostbesturingssysteem beschikbaar of er zijn geen beheerdersbevoegdheden.
  • U kunt geen netwerkpoorten van uw omgeving naar Azure openen.
  • Netwerkbeperking of problemen met proxyblokkering bestaan in uw omgeving.
  • Back-ups worden rechtstreeks opgeslagen in Azure Blob Storage-accounts via de optie TO URL.
  • U moet differentiële back-ups gebruiken.

Omdat LRS werkt door standaard back-upbestanden van SQL Server te herstellen, moet het migraties vanaf elke bron ondersteunen. De volgende bronnen zijn getest:

  • SQL Server lokaal/box
  • SQL Server op virtuele 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)
  • Alibaba Cloud RDS voor SQL Server

Als u onverwachte problemen ondervindt bij het migreren vanuit een niet-vermelde bron, opent u een ondersteuningsticket voor hulp.

Notitie

  • Het is raadzaam om de migratie van databases van SQL Server naar Azure SQL Managed Instance te automatiseren met behulp van de Azure SQL-migratie-extensie voor Azure Data Studio. Overweeg om LRS te gebruiken om migraties te organiseren wanneer de Azure SQL-migratie-extensie uw scenario's niet volledig ondersteunt.
  • LRS is de enige methode voor het herstellen van differentiële back-ups op beheerde exemplaren. Het is niet mogelijk om differentiële back-ups handmatig te herstellen op beheerde exemplaren of om de NORECOVERY-modus handmatig in te stellen met behulp van T-SQL.

Hoe LRS werkt

Voor het bouwen van een aangepaste oplossing voor het migreren van databases naar de cloud met LRS zijn verschillende indelingsstappen vereist, zoals wordt weergegeven in het diagram en de tabel verderop in deze sectie.

Migratie bestaat uit het maken van databaseback-ups op SQL Server en het kopiëren van back-upbestanden naar een Azure Blob Storage-account. Volledige back-ups, logback-ups en differentiële back-ups worden ondersteund. Vervolgens gebruikt u de LRS-cloudservice om back-upbestanden van het Azure Blob Storage-account te herstellen naar SQL Managed Instance. Het Blob Storage-account fungeert als intermediaire opslag voor back-upbestanden tussen SQL Server en SQL Managed Instance.

LRS bewaakt uw Blob Storage-account voor nieuwe differentiële of logboekback-ups die worden toegevoegd nadat de volledige back-up is hersteld. LRS herstelt deze nieuwe bestanden vervolgens automatisch. U kunt de service gebruiken om de voortgang te controleren van back-upbestanden die worden hersteld naar SQL Managed Instance en het proces zo nodig te stoppen.

LRS vereist geen specifieke naamconventie voor back-upbestanden. Hiermee worden alle bestanden gescand die in het Azure Blob Storage-account zijn geplaatst, waarna de back-upketen wordt geconstrueerd door alleen de bestandsheaders te lezen. Databases bevinden zich in een herstelfase tijdens het migratieproces. Databases worden hersteld in NORECOVERY- modus, zodat ze niet kunnen worden gebruikt voor lees- of schrijfworkloads totdat het migratieproces is voltooid.

Als u meerdere databases migreert, moet u het volgende doen:

  • Plaats back-upbestanden voor elke database in een afzonderlijke map in het Blob Storage-account in een platte bestandsstructuur. Gebruik bijvoorbeeld afzonderlijke databasemappen: blobcontainer/database1/files, blobcontainer/database2/files, enzovoort.
  • Gebruik geen geneste mappen in databasemappen, omdat de structuur van geneste mappen niet wordt ondersteund. Gebruik bijvoorbeeld geen submappen zoals blobcontainer/database1/submap/bestanden.
  • Start LRS afzonderlijk voor elke database.
  • Geef verschillende URI-paden op om databasemappen in het Blob Storage-account te scheiden.

Hoewel CHECKSUM ingeschakeld voor back-ups niet vereist is, raden we dit ten zeerste aan. Het herstellen van databases zonder CHECKSUM duurt langer, omdat SQL Managed Instance een integriteitscontrole uitvoert op back-ups die worden hersteld zonder CHECKSUM ingeschakeld.

Zie Databases migreren van SQL Server naar SQL Managed Instance met behulp van de Log Replay Servicevoor meer informatie.

Voorzichtigheid

Het maken van back-ups op SQL Server waarvoor CHECKSUM is ingeschakeld, wordt ten zeerste aanbevolen omdat er een risico bestaat om een beschadigde database zonder deze te herstellen naar Azure.

Migratie van automatisch aanvullen versus continue modus

U kunt LRS starten in automatisch aanvullen of continue modus.

Gebruik modus voor automatisch aanvullen wanneer u de volledige back-upketen van tevoren hebt gegenereerd en wanneer u geen bestanden meer wilt toevoegen nadat de migratie is gestart. Deze migratiemodus wordt aanbevolen voor passieve workloads waarvoor geen inhaalbewerking van gegevens is vereist. Upload alle back-upbestanden naar het Blob Storage-account en start de migratie van de autocompletemodus. De migratie wordt automatisch voltooid wanneer het laatst opgegeven back-upbestand is hersteld. De gemigreerde database wordt beschikbaar voor lees-/schrijftoegang op SQL Managed Instance.

Als u nieuwe back-upbestanden wilt blijven toevoegen terwijl de migratie wordt uitgevoerd, gebruikt u continue modus. We raden deze modus aan voor actieve workloads waarvoor gegevens moeten worden ingehaald. Upload de momenteel beschikbare back-upketen naar het Blob Storage-account, start de migratie in de continue modus en blijf zo nodig nieuwe back-upbestanden van uw workload toevoegen. Het systeem scant periodiek de map Azure Blob Storage en herstelt nieuwe logboek- of differentiële back-upbestanden die worden gevonden.

Wanneer u klaar bent voor de cutover, stopt u de workload op uw SQL Server-exemplaar, genereert u het laatste back-upbestand en uploadt u het. Zorg ervoor dat het laatste back-upbestand is hersteld door te controleren of de laatste logtail-back-up wordt weergegeven als hersteld op SQL Managed Instance. Start vervolgens handmatige cutover. De laatste cutover-stap maakt de database online en beschikbaar voor lees-/schrijftoegang op SQL Managed Instance.

Nadat LRS is gestopt, automatisch via automatisch aanvullen of handmatig via cutover, kunt u het herstelproces niet hervatten voor een database die online is gebracht in SQL Managed Instance. Nadat de migratie is voltooid, kunt u bijvoorbeeld geen meer differentiële back-ups voor een onlinedatabase herstellen. Als u meer back-upbestanden wilt herstellen nadat de migratie is voltooid, moet u de database verwijderen uit het beheerde exemplaar en de migratie opnieuw starten vanaf het begin.

Migratiewerkstroom

Een typische migratiewerkstroom wordt weergegeven in de volgende afbeelding en de stappen worden beschreven in de tabel.

U moet de modus voor automatisch aanvullen alleen gebruiken wanneer alle back-upketenbestanden van tevoren beschikbaar zijn. We raden deze modus aan voor passieve workloads waarvoor geen gegevensophaalbewerking is vereist.

Gebruik continue modusmigratie wanneer u niet de volledige back-upketen van tevoren hebt en wanneer u nieuwe back-upbestanden wilt toevoegen nadat de migratie is uitgevoerd. We raden deze modus aan voor actieve werkbelastingen waarvoor gegevensophaalbewerking is vereist.

Diagram dat de orkestratiestappen illustreert voor de Log Replay Service voor SQL Managed Instance.

Operatie Bijzonderheden
1. Kopieer databaseback-ups van het SQL Server-exemplaar naar het Blob Storage-account. Kopieer volledige, differentiële en logboekback-ups van het SQL Server-exemplaar naar de Blob Storage-container met behulp van AzCopy- of Azure Storage Explorer-.

Gebruik willekeurige bestandsnamen. LRS vereist geen specifieke naamconventie voor bestanden.

Gebruik een afzonderlijke map voor elke database wanneer u meerdere databases migreert.
2. Start LRS in de cloud. U kunt de service starten met PowerShell (start-azsqlinstancedatabaselogreplay) of de Azure CLI (az_sql_midb_log_replay_start cmdlets). Kies tussen de modus voor automatisch aanvullen of continue migratie.

Start LRS afzonderlijk voor elke database die verwijst naar een back-upmap in het Blob Storage-account.

Nadat de service is gestart, worden er back-ups gemaakt van de Blob Storage-container en wordt deze hersteld naar SQL Managed Instance.

Wanneer LRS wordt gestart in de modus voor automatisch aanvullen, worden alle back-ups hersteld via het opgegeven laatste back-upbestand. Alle back-upbestanden moeten vooraf worden geüpload en het is niet mogelijk om nieuwe back-upbestanden toe te voegen terwijl de migratie wordt uitgevoerd. Deze modus wordt aanbevolen voor passieve workloads waarvoor geen gegevensophaalbewerking is vereist.

Wanneer LRS wordt gestart in de continue modus, worden alle back-ups hersteld die aanvankelijk zijn geüpload en worden vervolgens gecontroleerd op nieuwe bestanden die naar de map zijn geüpload. De service past continu logboeken toe op basis van de LSN-keten (logboekreeksnummer) totdat deze handmatig wordt gestopt. We raden deze modus aan voor actieve werkbelastingen waarvoor gegevensophaalbewerking is vereist.
2.1. De voortgang van de bewerking controleren. U kunt de voortgang van de lopende herstelbewerking bewaken met PowerShell (get-azsqlinstancedatabaselogreplay) of de Azure CLI (az_sql_midb_log_replay_show cmdlets). Als u aanvullende informatie over een mislukte aanvraag wilt bijhouden, gebruikt u de PowerShell-opdracht Get-AzSqlInstanceOperation of gebruikt u de Azure CLI-opdracht az sql mi op show.
2.2. Stop de bewerking indien nodig (optioneel). Als u het migratieproces wilt stoppen, gebruikt u PowerShell (stop-azsqlinstancedatabaselogreplay) of de Azure CLI (az_sql_midb_log_replay_stop).

Als u de bewerking stopt, wordt de database verwijderd die u herstelt naar SQL Managed Instance. Nadat u een bewerking hebt gestopt, kunt u LRS niet hervatten voor een database. U moet het migratieproces vanaf het begin opnieuw starten.
3. Schakel over naar de cloud wanneer u klaar bent. Als LRS is gestart in de modus voor automatisch aanvullen, wordt de migratie automatisch voltooid nadat het opgegeven laatste back-upbestand is hersteld.

Als LRS in de continuemodus is gestart, stop dan de toepassing en werkbelasting. Maak de laatste back-up van log-tail en upload deze naar de Azure Blob Storage-implementatie. Zorg ervoor dat de laatste back-up van het logboek is hersteld op de beheerde instantie. Voltooi de cutover door een LRS-complete-bewerking te starten met PowerShell (complete-azsqlinstancedatabaselogreplay) of met de Azure CLI az_sql_midb_log_replay_complete. Deze bewerking stopt LRS en brengt de database online voor lees-/schrijfworkloads in SQL Managed Instance.

Wijs de verbindingsreeks van de toepassing opnieuw aan van het SQL Server-exemplaar naar SQL Managed Instance. U moet deze stap zelf organiseren via een handmatige verbindingsreekswijziging in uw toepassing of automatisch (bijvoorbeeld als uw toepassing de verbindingsreeks van een eigenschap of een database kan lezen).

Belangrijk

Na de cutover kan het voor SQL Managed Instance met Bedrijfskritieke servicelaag aanzienlijk langer duren dan Algemeen Gebruik om beschikbaar te zijn, omdat drie secundaire replica's gezaaid moeten worden voor de beschikbaarheidsgroep. De duur van de bewerking is afhankelijk van de grootte van de gegevens. Zie Duur van beheerbewerkingenvoor meer informatie.

Grote databases migreren

Als u grote databases van meerdere terabytes in grootte migreert, kunt u het volgende overwegen:

  • Eén LRS-taak kan maximaal 30 dagen worden uitgevoerd. Wanneer deze periode verloopt, wordt de taak automatisch geannuleerd.
  • Voor langlopende taken zorgen systeemupdates voor onderbrekingen en verlengen ze migratietaken. We raden u ten zeerste aan een onderhoudsvenster te gebruiken om geplande systeemupdates te plannen. Plan uw migratie rond het geplande onderhoudsvenster.
  • Migratietaken die worden onderbroken door systeemupdates, worden automatisch onderbroken en hervat voor algemeen gebruik beheerde exemplaren. Ze worden opnieuw gestart voor bedrijfskritieke beheerde exemplaren. Deze updates zijn van invloed op het tijdsbestek van uw migratie.
  • Als u de uploadsnelheid van uw SQL Server-back-upbestanden naar het Blob Storage-account wilt verhogen, kunt u overwegen om parallellisatie met meerdere threads te gebruiken als uw infrastructuur voldoende netwerkbandbreedte heeft.

De migratie starten

U start de migratie door LRS te starten. U kunt de service starten in de modus 'automatisch aanvullen' of 'doorgaan'. Raadpleeg Migreren met LRS-voor specifieke informatie.

  • Automatisch aanvullen modus. Wanneer u de modus voor automatisch aanvullen gebruikt, wordt de migratie automatisch voltooid wanneer de laatste van de opgegeven back-upbestanden zijn hersteld. Deze optie:

    • Vereist dat de volledige back-upketen vooraf beschikbaar is en geüpload naar het Azure Blob Storage-account.
    • Het toevoegen van nieuwe back-upbestanden is niet toegestaan terwijl de migratie wordt uitgevoerd.
    • Vereist de startopdracht om de bestandsnaam van het laatste back-upbestand op te geven.

    U wordt aangeraden de modus voor automatisch aanvullen te gebruiken voor passieve werkbelastingen waarvoor geen gegevensophaalbewerking is vereist.

  • continue modus. Wanneer u continue modus gebruikt, scant de service continu de map Azure Blob Storage en herstelt deze nieuwe back-upbestanden die worden toegevoegd terwijl de migratie wordt uitgevoerd.

    De migratie wordt pas voltooid nadat de handmatige cutover is aangevraagd.

    U moet continue modusmigratie gebruiken wanneer u niet de volledige back-upketen van tevoren hebt en wanneer u van plan bent om nieuwe back-upbestanden toe te voegen nadat de migratie wordt uitgevoerd.

    We raden u aan continue modus te gebruiken voor actieve werkbelastingen waarvoor een inhaalbewerking van gegevens is vereist.

Plan om één LRS-migratietaak binnen maximaal 30 dagen te voltooien. Wanneer deze periode verloopt, wordt de LRS-taak automatisch geannuleerd.

Notitie

Wanneer u meerdere databases migreert, moet elke database zich in een eigen map bevinden. LRS moet afzonderlijk worden gestart voor elke database, die verwijst naar het volledige URI-pad van de Azure Blob Storage-container en de afzonderlijke databasemap. Geneste mappen in databasemappen worden niet ondersteund.

Beperkingen van LRS

Raadpleeg beperkingen bij het gebruik van LRS voor meer informatie.

Volgende stappen