Sdílet prostřednictvím


Přehled služby přehrání protokolů se službou Azure SQL Managed Instance

Platí pro: Azure SQL Managed Instance

Tento článek obsahuje přehled služby Replay Service (LRS), kterou můžete použít k migraci databází z SQL Serveru do azure SQL Managed Instance. LRS je bezplatná cloudová služba dostupná pro Azure SQL Managed Instance a založená na technologii přesouvání protokolů SQL Serveru.

Vzhledem k tomu, že LRS obnovuje standardní záložní soubory SQL Serveru, můžete ho použít k migraci z SQL Serveru hostovaného kdekoli (místně nebo v libovolném cloudu) do spravované instance Azure SQL.

Pokud chcete zahájit migraci pomocí LRS, zkontrolujte migraci databází pomocí služby Přehrání protokolu.

Důležité

Před migrací databází na úroveň služby Pro důležité obchodní informace zvažte tato omezení, která neplatí pro úroveň služby Pro obecné účely.

Kdy použít službu přehrání protokolu

Azure Database Migration Service, rozšíření migrace Azure SQL pro Azure Data Studio a LRS používají stejnou základní technologii migrace a rozhraní API. LRS dále umožňuje komplexní vlastní migrace a hybridní architektury mezi místními instancemi SQL Serveru a nasazeními služby SQL Managed Instance.

Pokud pro migraci nemůžete použít službu Azure Database Migration Service nebo rozšíření Azure SQL, můžete použít LRS přímo s PowerShellem, rutinami Azure CLI nebo rozhraními API k ručnímu sestavování a orchestraci migrací databází do služby SQL Managed Instance.

Zvažte použití LRS v následujících případech, kdy:

  • Pro projekt migrace databáze potřebujete větší kontrolu.
  • Během přímé migrace existuje malá tolerance pro výpadky.
  • Spustitelný soubor Database Migration Service nejde do vašeho prostředí nainstalovat.
  • Spustitelný soubor Database Migration Service nemá přístup k zálohám databáze.
  • Rozšíření migrace Azure SQL nejde nainstalovat do vašeho prostředí nebo nemá přístup k zálohám databáze.
  • Není k dispozici žádný přístup k hostitelskému operačnímu systému nebo neexistují žádná oprávnění správce.
  • Síťové porty z prostředí nemůžete otevřít do Azure.
  • Ve vašem prostředí existují problémy s omezováním sítě nebo blokováním proxy serveru.
  • Zálohy se ukládají přímo v účtech Azure Blob Storage prostřednictvím této TO URL možnosti.
  • Potřebujete použít rozdílové zálohy.

Vzhledem k tomu, že LRS funguje obnovením standardních záložních souborů SQL Serveru, měla by podporovat migrace z libovolného zdroje. Byly testovány následující zdroje:

  • Místní/box SQL Serveru
  • SQL Server na virtuálních počítačích
  • Amazon EC2 (Elastic Compute Cloud)
  • Amazon RDS (relační databázová služba) pro SQL Server
  • Google Compute Engine
  • Cloud SQL pro SQL Server – GCP (Google Cloud Platform)
  • Alibaba Cloud RDS pro SQL Server

Pokud narazíte na neočekávané problémy s migrací z nezařazeného zdroje, otevřete lístek podpory a požádejte o pomoc.

Poznámka:

  • Doporučujeme automatizovat migraci databází z SQL Serveru do azure SQL Managed Instance pomocí rozšíření migrace Azure SQL pro Azure Data Studio. Pokud rozšíření migrace Azure SQL plně nepodporuje vaše scénáře, zvažte použití LRS k orchestraci migrací.
  • LRS je jediná metoda obnovení rozdílových záloh ve spravovaných instancích. Pomocí T-SQL není možné ručně obnovit rozdílové zálohy ve spravovaných instancích ani ručně nastavit NORECOVERY režim.

Jak funguje LRS

Vytvoření vlastního řešení pro migraci databází do cloudu pomocí LRS vyžaduje několik kroků orchestrace, jak je znázorněno v diagramu a tabulce dále v této části.

Migrace se skládá ze zálohování databáze na SQL Serveru a kopírování záložních souborů do účtu Azure Blob Storage. Podporuje se úplné zálohování, zálohování protokolů a rozdílové zálohování. Potom použijete cloudovou službu LRS k obnovení záložních souborů z účtu Azure Blob Storage do služby SQL Managed Instance. Účet Blob Storage slouží jako zprostředkující úložiště pro záložní soubory mezi SQL Serverem a spravovanou instancí SQL.

LRS monitoruje váš účet Blob Storage pro všechny nové rozdílové zálohy nebo zálohy protokolů, které se přidají po obnovení úplného zálohování. LRS pak tyto nové soubory automaticky obnoví. Pomocí služby můžete monitorovat průběh obnovovaných záložních souborů do služby SQL Managed Instance a v případě potřeby proces zastavit.

LRS nevyžaduje u záložních souborů použití konkrétních zásad vytváření názvů. Prohledá všechny soubory umístěné v účtu služby Azure Blob Storage a vytvoří řetěz záloh jen ze čtení hlaviček souborů. Databáze jsou během procesu migrace ve stavu obnovování. Databáze se obnovují v režimu NORECOVERY , takže je nelze použít pro úlohy čtení nebo zápisu, dokud se proces migrace nedokončí.

Pokud migrujete několik databází, musíte:

  • Umístěte záložní soubory pro každou databázi do samostatné složky v účtu Blob Storage ve struktuře plochých souborů. Použijte například samostatné složky databáze: blobcontainer/database1/files, blobcontainer/database2/files atd.
  • Nepoužívejte vnořené složky do databázových složek, protože struktura vnořených složek není podporovaná. Nepoužívejte například podsložky, jako je blobcontainer/database1/podsložka/soubory.
  • Spusťte službu LRS samostatně pro každou databázi.
  • Zadejte různé cesty identifikátoru URI k oddělení databázových složek v účtu služby Blob Storage.

I když povolení CHECKSUM zálohování není povinné, důrazně doporučujeme. Obnovení databází bez CHECKSUM delšího provozu, protože spravovaná instance SQL provádí kontrolu integrity záloh, které jsou obnoveny bez CHECKSUM povolení.

Další informace naleznete v tématu Migrace databází z SQL Serveru do SLUŽBY SQL Managed Instance pomocí služby přehrání protokolu.

Upozornění

Zálohování na SQL Serveru s povoleným povolením CHECKSUM se důrazně doporučuje, protože existuje riziko obnovení poškozené databáze do Azure bez ní.

Automatické dokončování vs. průběžná migrace v režimu

LRS můžete spustit buď v automatickém dokončování, nebo v průběžném režimu.

Režim automatického dokončování použijte, pokud máte předem vygenerovaný celý řetěz záloh a když neplánujete přidat další soubory po spuštění migrace. Tento režim migrace se doporučuje pro pasivní úlohy, které nevyžadují zachytávání dat. Nahrajte všechny záložní soubory do účtu Blob Storage a spusťte migraci režimu automatického dokončování. Migrace se dokončí automaticky po obnovení posledního zadaného záložního souboru. Migrovaná databáze bude dostupná pro přístup pro čtení a zápis ve službě SQL Managed Instance.

Pokud máte v úmyslu přidávat nové záložní soubory v průběhu migrace, použijte průběžný režim. Tento režim doporučujeme pro aktivní úlohy, které vyžadují zachytávání dat. Nahrajte aktuálně dostupný řetěz záloh do účtu Blob Storage, spusťte migraci v průběžném režimu a podle potřeby přidejte nové záložní soubory z vaší úlohy. Systém bude pravidelně prohledávat složku Azure Blob Storage a obnovit všechny nové soubory protokolů nebo rozdílových záloh, které najde.

Až budete připraveni na přímou migraci, zastavte úlohu v instanci SQL Serveru, vygenerujte poslední záložní soubor a nahrajte ho. Ověřte, že se poslední záložní soubor obnovil, a ověřte, že se konečná záloha protokolu zobrazuje jako obnovená ve službě SQL Managed Instance. Pak spusťte ruční přímé přecháze. Poslední přímé kroky zpřístupňuje databázi online a je dostupná pro přístup pro čtení a zápis ve službě SQL Managed Instance.

Po zastavení LRS, a to buď automaticky prostřednictvím automatického dokončování, nebo ručně prostřednictvím přímé migrace nemůžete obnovit proces obnovení databáze, která byla přenesena do režimu online ve službě SQL Managed Instance. Po dokončení migrace už například nemůžete obnovit další rozdílové zálohy pro online databázi. Pokud chcete po dokončení migrace obnovit další záložní soubory, musíte odstranit databázi ze spravované instance a restartovat migraci od začátku.

Pracovní postup migrace

Typický pracovní postup migrace je znázorněn na následujícím obrázku a kroky jsou uvedené v tabulce.

Režim automatického dokončování je potřeba použít jenom v případě, že jsou všechny soubory řetězu zálohování k dispozici předem. Tento režim doporučujeme použít pro pasivní úlohy, pro které není vyžadováno zachytávání dat.

Migraci průběžného režimu používejte, pokud nemáte předem celý řetěz záloh a když plánujete přidat nové záložní soubory po dokončení migrace. Tento režim doporučujeme pro aktivní úlohy, pro které se vyžaduje zachytávání dat.

Diagram znázorňující kroky orchestrace služby přehrání protokolu pro spravovanou instanci SQL

Operation Detaily
1. Zkopírujte zálohy databáze z instance SQL Serveru do účtu blob Storage. Pomocí nástroje AzCopy nebo Průzkumník služby Azure Storage zkopírujte úplné zálohy protokolů z instance SQL Serveru do kontejneru Blob Storage.

Použijte všechny názvy souborů. LRS nevyžaduje konkrétní zásady vytváření názvů souborů.

Při migraci několika databází použijte pro každou databázi samostatnou složku.
2. Spusťte LRS v cloudu. Službu můžete spustit pomocí PowerShellu (start-azsqlinstancedatabaselogreplay) nebo Azure CLI (rutiny az_sql_midb_log_replay_start). Vyberte si mezi automatickým dokončováním nebo režimem průběžné migrace.

Spusťte LRS samostatně pro každou databázi, která odkazuje na záložní složku v účtu Blob Storage.

Po spuštění služby provede zálohování z kontejneru Blob Storage a začne je obnovovat do služby SQL Managed Instance.

Když se LRS spustí v režimu automatického dokončování, obnoví všechny zálohy prostřednictvím zadaného posledního záložního souboru. Všechny záložní soubory se musí nahrát předem a během migrace není možné přidávat žádné nové záložní soubory. Tento režim se doporučuje pro pasivní úlohy, u kterých se nevyžaduje zachytávání dat.

Když se LRS spustí v průběžném režimu, obnoví všechny zálohy, které byly původně odeslány, a pak sleduje všechny nové soubory, které byly odeslány do složky. Služba nepřetržitě používá protokoly na základě řetězce posloupnosti protokolů (LSN), dokud se ručně nezastaví. Tento režim doporučujeme pro aktivní úlohy, pro které se vyžaduje zachytávání dat.
2.1. Monitorování průběhu operace. Průběh probíhající operace obnovení můžete monitorovat pomocí PowerShellu (get-azsqlinstancedatabaselogreplay) nebo Azure CLI (rutiny az_sql_midb_log_replay_show). Pokud chcete sledovat další podrobnosti o neúspěšném požadavku, použijte příkaz PowerShellu Get-AzSqlInstanceOperation nebo použijte příkaz Azure CLI az sql mi op show.
2.2. V případě potřeby zastavte operaci (volitelné). Pokud potřebujete zastavit proces migrace, použijte PowerShell (stop-azsqlinstancedatabaselogreplay) nebo Azure CLI (az_sql_midb_log_replay_stop).

Zastavení operace odstraní databázi, kterou obnovujete do služby SQL Managed Instance. Po zastavení operace nemůžete obnovit LRS pro databázi. Proces migrace je potřeba restartovat od začátku.
3. Až budete připraveni, vyřízněte se do cloudu. Pokud byl LRS spuštěn v režimu automatického dokončování, migrace se automaticky dokončí po obnovení zadaného posledního záložního souboru.

Pokud byl LRS spuštěn v nepřetržitém režimu, zastavte aplikaci a úlohu. Proveďte poslední zálohu protokolu a nahrajte ji do nasazení služby Azure Blob Storage. Ujistěte se, že se ve spravované instanci obnovila poslední záloha protokolu. Dokončete přímou operaci spuštěním operace LRS complete pomocí PowerShellu (complete-azsqlinstancedatabaselogreplay) nebo azure CLI az_sql_midb_log_replay_complete. Tato operace zastaví LRS a přenese databázi do režimu online pro úlohy čtení a zápisu ve službě SQL Managed Instance.

Nasadíte aplikaci připojovací řetězec z instance SQL Serveru na spravovanou instanci SQL. Tento krok je potřeba orchestrovat sami, ať už prostřednictvím ruční připojovací řetězec změny v aplikaci, nebo automaticky (například pokud vaše aplikace může číst připojovací řetězec z vlastnosti nebo databáze).

Důležité

Po přímé migraci může služba SQL Managed Instance s úrovní služby Pro důležité obchodní informace trvat výrazně déle, než je potřeba pro skupinu dostupnosti zpřístupnit tři sekundární repliky. Doba trvání operace závisí na velikosti dat. Další informace najdete v tématu Doba trvání operací správy.

Migrace velkých databází

Pokud migrujete velké databáze s několika terabajty, zvažte následující:

  • Jedna úloha LRS může běžet maximálně 30 dnů. Po uplynutí této doby se úloha automaticky zruší.
  • U dlouhotrvajících úloh se aktualizace systému přeruší a prodlouží úlohy migrace. Důrazně doporučujeme použít časové období údržby k naplánování plánovaných aktualizací systému. Naplánujte migraci kolem časového období plánované údržby.
  • Úlohy migrace, které jsou přerušeny aktualizacemi systému, se automaticky pozastaví a obnoví pro spravované instance pro obecné účely a restartují se pro Pro důležité obchodní informace spravované instance. Tyto aktualizace ovlivní časový rámec migrace.
  • Pokud chcete zvýšit rychlost nahrávání záložních souborů SQL Serveru do účtu Blob Storage, zvažte použití paralelizace s více vlákny, pokud má vaše infrastruktura dostatečnou šířku pásma sítě.

Spuštění migrace

Migraci zahájíte spuštěním LRS. Službu můžete spustit buď v automatickém, nebo průběžném režimu. Konkrétní podrobnosti najdete v tématu Migrace pomocí LRS.

  • Režim automatického dokončování Když použijete režim automatického dokončování, migrace se dokončí automaticky po obnovení posledního ze zadaných záložních souborů. Tato možnost:

    • Vyžaduje, aby byl celý řetěz záloh k dispozici předem a nahrál do účtu služby Azure Blob Storage.
    • Nepovoluje přidávání nových záložních souborů během migrace.
    • Vyžaduje, aby spouštěcí příkaz určil název souboru posledního záložního souboru.

    Pro pasivní úlohy, pro které není vyžadováno zachytávání dat, doporučujeme použít režim automatického dokončování.

  • Nepřetržitý režim. Když používáte nepřetržitý režim, služba průběžně prohledá složku Azure Blob Storage a obnoví všechny nové záložní soubory, které se přidají během migrace.

    Migrace se dokončí až po vyžádání ruční přímé migrace.

    Migraci průběžného režimu je potřeba použít, pokud nemáte předem celý řetěz záloh a když plánujete přidat nové záložní soubory po dokončení migrace.

    Pro aktivní úlohy, pro které se vyžaduje zachytávání dat, doporučujeme používat nepřetržitý režim.

Naplánujte dokončení jedné úlohy migrace LRS do maximálně 30 dnů. Po uplynutí této doby se úloha LRS automaticky zruší.

Poznámka:

Při migraci více databází musí být každá databáze ve své vlastní složce. LRS musí být spuštěna samostatně pro každou databázi a odkazovat na úplnou cestu URI kontejneru služby Azure Blob Storage a jednotlivé složky databáze. Vnořené složky uvnitř databázových složek se nepodporují.

Omezení služby LRS

Informace najdete v omezeních při použití LRS.

Další kroky