Sdílet prostřednictvím


Přehled služby přehrávání logů s 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 je založená na technologii přesouvání protokolů SQL Serveru.

Poznámka:

Teď můžete migrovat instanci SQL Serveru povolenou službou Azure Arc do služby Azure SQL Managed Instance přímo prostřednictvím webu Azure Portal. Další informace najdete v tématu Migrace do služby Azure SQL Managed Instance.

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 (buď místně, nebo v libovolném cloudu) do azure SQL Managed Instance.

Pokud chcete zahájit migraci pomocí LRS, seznamte se s Migrací databází z SQL Serveru pomocí služby přehrává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 pro přehrává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:

  • Pro projekt migrace databáze potřebujete větší kontrolu.
  • Během přepnutí migrace existuje malá tolerance pro výpadky.
  • Spustitelný soubor služby Database Migration Service nemůžete do svého prostředí nainstalovat.
  • Spustitelný soubor Database Migration Service nemá přístup k zálohám databáze.
  • Rozšíření migrace Azure SQL nemůžete nainstalovat do svého prostředí nebo nemá přístup k zálohám databáze.
  • Nemáte přístup k hostitelskému operačnímu systému nebo 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, podporuje migrace z libovolného zdroje. Byly testovány následující zdroje:

  • SQL Server na místním/ser­verovém hardware
  • 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 tiket podpory, abyste získali pomoc.

Poznámka:

  • LRS je jediná metoda obnovení rozdílových záloh ve spravovaných instancích SQL. U spravovaných instancí není možné ručně obnovit rozdílové zálohy ani ručně nastavit NORECOVERY režim pomocí T-SQL.

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. LRS podporuje úplné zálohy, protokolové zálohy a rozdílové zálohy. 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é přidáte 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í. LRS obnoví databáze 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 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 trvá déle, protože spravovaná instance SQL provádí kontrolu integrity záloh, které jsou obnoveny bez povolení CHECKSUM.

Další informace naleznete v tématu Migrace databází z SQL Serveru 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ý režim migrace

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ž už nechcete přidávat 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 při 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 pravidelně prohledá složku Azure Blob Storage a obnoví všechny nové soubory protokolů nebo rozdílových záloh, které najde.

Až budete připraveni na přechod, zastavte pracovní zátěž v instanci SQL Serveru, vygenerujte poslední záložní soubor a nahrajte ho. Ověřte, že se poslední záložní soubor obnoví, 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řepnutí. Poslední krok převodu zpřístupní databázi online a je dostupná pro čtení a zápis na SQL Managed Instance.

Jakmile se LRS zastaví, 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, kterou jste převedli do online režimu 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

Obrázek v této části ukazuje typický pracovní postup migrace, zatímco tabulka popisuje kroky.

Režim automatického dokončování používejte pouze v případě, že jsou všechny soubory řetězu zálohování k dispozici předem. Tento režim doporučujeme pro pasivní úlohy, které nevyžadují 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, které vyžadují zachytávání dat.

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

Operace Detaily
1. Zkopírujte zálohy databáze z instance SQL Serveru do účtu blob Storage. Pomocí nástroje AzCopy nebo Průzkumníka služby Azure Storage zkopírujte úplné, diferenciální a logové zálohy 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. Spusťte službu pomocí PowerShellu (start-azsqlinstancedatabaselogreplay) nebo Azure CLI (cmdletů 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ž spustíte LRS v režimu automatického dokončování, obnoví se všechny zálohy prostřednictvím zadaného posledního záložního souboru. Všechny záložní soubory musíte nahrát předem a během migrace nemůžete přidávat žádné nové záložní soubory. Tento režim se doporučuje pro pasivní úlohy, které nevyžadují zachytávání dat.

Když spustíte LRS v nepřetržitém režimu, obnoví se všechny zálohy, které jste původně nahráli, a pak sleduje všechny nové soubory, které nahrajete do složky. Služba nepřetržitě uplatňuje protokoly podle řetězce LSN (číslo posloupnosti protokolů), dokud není zastavena ručně. Tento režim doporučujeme pro aktivní úlohy, které vyžadují zachytávání dat.
2.1. Monitorování průběhu operace. Monitorujte průběh probíhající operace obnovení 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, přejděte na cloud. Pokud spustíte LRS v režimu automatického dokončování, migrace se automaticky dokončí po obnovení zadaného posledního záložního souboru.

Pokud spustíte LRS v průběžném režimu, zastavte aplikaci a úlohu. Proveďte zálohu koncového segmentu protokolu a nahrajte ji do úložiště služby Azure Blob Storage. Ujistěte se, že se ve spravované instanci SQL obnovila poslední záloha protokolu. Dokončete přenos provedení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.

Přesměrujte připojovací řetězec aplikace z instance SQL Serveru do spravované instance SQL. Tento krok si orchestrujte sami, ať už prostřednictvím ruční změny připojovacího řetězce v aplikaci, nebo automaticky (například v případě, že vaše aplikace může číst připojovací řetězec z vlastnosti nebo databáze).

Důležité

Po přechodu může trvat u SQL Managed Instance s úrovní služby Kritická pro podnikání výrazně déle než u Obecného účelu, než budou pro skupinu dostupnosti připraveny 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 o velikosti několika terabajtů, zvažte následující body:

  • 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 můžou aktualizace systému přerušit a prodloužit migrační úlohy. 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 znovu obnoví pro spravované instance SQL pro všeobecného účelu, a restartují se pro spravované instance SQL kritické podnikové. Tyto aktualizace ovlivňují č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ě.

Začněte migraci

Spusťte migraci 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 databází z SQL Serveru pomocí služby přehrání protokolu.

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

    • Vyžaduje, aby byl celý řetězec záloh k dispozici předem a nahrán do účtu 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ího přepnutí.

    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.

    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. Spusťte LRS samostatně pro každou databázi a ukazujte 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

Pro informace si prostudujte omezení při použití LRS.