Migreringsöversikt: SQL Server till Azure SQL Managed Instance

Gäller för:Azure SQL Managed Instance

Lär dig mer om alternativen och övervägandena för att migrera dina SQL Server-databaser till Azure SQL Managed Instance.

Du kan migrera SQL Server-databaser som körs lokalt eller på:

  • SQL Server på virtuella datorer
  • Amazon EC2 (Elastic Compute Cloud)
  • Amazon RDS (Relationsdatabastjänst) för SQL Server
  • Google Compute Engine
  • Cloud SQL för SQL Server – GCP (Google Cloud Platform)

Andra migreringsguider finns i Databasmigrering.

Översikt

Azure SQL Managed Instance är ett rekommenderat målalternativ för SQL Server-arbetsbelastningar som kräver en fullständigt hanterad tjänst utan att behöva hantera virtuella datorer eller deras operativsystem. Med SQL Managed Instance kan du flytta dina lokala program till Azure med minimala program- eller databasändringar. Den erbjuder fullständig isolering av dina instanser med inbyggt stöd för virtuella nätverk.

Se till att granska databasmotorfunktioner för SQL Server som är tillgängliga i Azure SQL Managed Instance för att verifiera stödet för migreringsmålet.

Att tänka på

De viktigaste faktorerna att tänka på när du utvärderar migreringsalternativ är:

  • Antal servrar och databaser
  • Databasstorlek
  • Acceptabel driftstopp under migreringsprocessen

En av de viktigaste fördelarna med att migrera dina SQL Server-databaser till SQL Managed Instance är att du kan välja att migrera hela instansen eller bara en delmängd av enskilda databaser. Planera noggrant att inkludera följande i migreringsprocessen:

  • Alla databaser som måste samallokeras till samma instans
  • Objekt på instansnivå som krävs för ditt program, inklusive inloggningar, autentiseringsuppgifter, SQL Agent-jobb och -operatorer samt utlösare på servernivå

Kommentar

Azure SQL Managed Instance garanterar 99,99 procent tillgänglighet, även i kritiska scenarier. Omkostnader som orsakas av vissa funktioner i SQL Managed Instance kan inte inaktiveras. Mer information finns i blogginlägget Viktiga orsaker till prestandaskillnader mellan SQL Managed Instance och SQL Server .

Välj ett lämpligt mål

Du kan använda Azure SQL-migreringstillägget för Azure Data Studio för att få rätt storlek på Azure SQL Managed Instance-rekommendationen. Tillägget samlar in prestandadata från sql server-källinstansen för att ge rätt storlek på Azure-rekommendationen som uppfyller arbetsbelastningens prestandabehov med minimal kostnad. Mer information finns i Få rätt storlek på Azure-rekommendationen för dina lokala SQL Server-databaser

Följande allmänna riktlinjer kan hjälpa dig att välja rätt tjänstnivå och egenskaper för SQL Managed Instance för att matcha din prestandabaslinje:

  • Använd cpu-användningsbaslinjen för att etablera en hanterad instans som matchar antalet kärnor som din instans av SQL Server använder. Det kan vara nödvändigt att skala resurser för att matcha maskinvarukonfigurationsegenskaperna.
  • Använd minnesanvändningsbaslinjen för att välja ett alternativ för virtuell kärna som matchar din minnesallokering på rätt sätt.
  • Använd baslinje-I/O-svarstiden för filundersystemet för att välja mellan tjänstnivåerna Generell användning (svarstid större än 5 ms) och Affärskritisk (svarstid mindre än 3 ms).
  • Använd baslinjedataflödet för att förallokera storleken på data och loggfiler för att uppnå förväntade I/O-prestanda.

Du kan välja beräknings- och lagringsresurser under distributionen och sedan ändra dem efteråt med hjälp av Azure-portalen, utan att orsaka driftstopp för ditt program.

Viktigt!

Eventuella avvikelser i kraven för virtuella nätverk för hanterade instanser kan hindra dig från att skapa nya instanser eller använda befintliga. Läs mer om att skapa nya och konfigurera befintliga nätverk.

En annan viktig faktor i valet av måltjänstnivå i Azure SQL Managed Instance (Generell användning jämfört med Affärskritisk) är tillgängligheten för vissa funktioner, till exempel Minnesintern OLTP, som endast är tillgängliga på Affärskritisk-nivån.

ALTERNATIV FÖR VIRTUELL SQL Server-dator

Ditt företag kan ha krav som gör SQL Server på virtuella Azure-datorer till ett lämpligare mål än Azure SQL Managed Instance.

Om något av följande villkor gäller för ditt företag kan du överväga att flytta till en virtuell SQL Server-dator i stället:

  • Du behöver direkt åtkomst till operativsystemet eller filsystemet, till exempel för att installera tredjepartsagenter eller anpassade agenter på samma virtuella dator med SQL Server.
  • Du har ett strikt beroende av funktioner som fortfarande inte stöds, till exempel FileStream/FileTable, PolyBase och transaktioner mellan instanser.
  • Du måste stanna kvar på en viss version av SQL Server (till exempel 2012).
  • Dina beräkningskrav är mycket lägre än vad en hanterad instans erbjuder (till exempel en virtuell kärna) och databaskonsolidering är inte ett acceptabelt alternativ.

Migreringsverktyg

Vi rekommenderar följande migreringsverktyg:

Teknik beskrivning
Azure SQL Migration-tillägg för Azure Data Studio Azure SQL Migration-tillägget för Azure Data Studio drivs av Azure Database Migration Service och hjälper dig att utvärdera dina databaskrav för att förstå din migreringsberedskap, få rätt SKU-rekommendationer för Azure-resurser och migrera SQL Server-databasen till Azure. Du kan migrera enskilda databaser eller i stor skala med hjälp av PowerShell och Azure CLI.
Azure Migrate Den här Azure-tjänsten hjälper dig att identifiera och utvärdera din SQL-dataegendom i stor skala på VMware. Den innehåller rekommendationer för Azure SQL-distribution, målstorlek och månatliga uppskattningar.
Inbyggd säkerhetskopiering och återställning SQL Managed Instance stöder återställning av interna SQL Server-databassäkerhetskopior (.bak-filer). Det är det enklaste migreringsalternativet för kunder som kan tillhandahålla fullständiga databassäkerhetskopior till Azure Storage.
Log Replay Service Den här molntjänsten är aktiverad för SQL Managed Instance baserat på SQL Server-loggleveransteknik. Det är ett migreringsalternativ för kunder som kan tillhandahålla fullständiga säkerhetskopieringar, differentiella säkerhetskopieringar och loggdatabaser till Azure Storage. Log Replay Service används för att återställa säkerhetskopierade filer från Azure Blob Storage till SQL Managed Instance.
Managed Instance-länk Den här funktionen möjliggör onlinemigrering till SQL Managed Instance med always on-teknik. Det är ett migreringsalternativ för kunder som kräver att databasen på SQL Managed Instance ska vara tillgänglig i R/O-läge medan migreringen pågår, som behöver hålla migreringen igång under längre tidsperioder (veckor eller månader vid den tidpunkten), som kräver sann onlinereplikering för att Affärskritisk tjänstnivå och för kunder som behöver den mest högpresterande minsta stilleståndstidsmigreringen.

I följande tabell visas alternativa migreringsverktyg:

Teknik Beskrivning
Transaktionsreplikering Replikera data från SQL Server-källdatabastabeller till SQL Managed Instance genom att tillhandahålla migreringsalternativet publisher-subscriber med bibehållen transaktionskonsekvens.
Masskopiering Verktyget masskopieringsprogram (bcp) kopierar data från en instans av SQL Server till en datafil. Använd verktyget för att exportera data från källan och importera datafilen till den sql-hanterade målinstansen.

För snabba masskopieringsåtgärder för att flytta data till Azure SQL Managed Instance kan du använda verktyget Smart Masskopiering för att maximera överföringshastigheten genom att dra nytta av parallella kopieringsuppgifter.
Guiden Importera export/BACPAC BACPAC är en Windows-fil med ett .bacpac-tillägg som kapslar in en databas schema och data. Du kan använda BACPAC för att både exportera data från en SQL Server-källa och importera tillbaka data till Azure SQL Managed Instance.
Azure Data Factory Aktiviteten Kopiera i Azure Data Factory migrerar data från SQL Server-källdatabaser till SQL Managed Instance med hjälp av inbyggda anslutningsappar och en integreringskörning.

Data Factory har stöd för ett brett utbud av anslutningsappar för att flytta data från SQL Server-källor till SQL Managed Instance.

Jämför migreringsalternativ

Jämför migreringsalternativ för att välja den sökväg som passar dina affärsbehov.

I följande tabell jämförs de rekommenderade migreringsalternativen:

Migreringsalternativ Användningsområde för Att tänka på
Azure SQL Migration-tillägg för Azure Data Studio – Migrera enskilda databaser eller i stor skala.
– Kan köras i både online- och offlinelägen.

Källor som stöds:
– SQL Server (2005 och senare) lokalt eller på Azure Virtual Machines
– SQL Server på Amazon EC2
– Amazon RDS för SQL Server
– SQL Server på Google Compute Engine
– Migreringar i stor skala kan automatiseras via PowerShell eller Azure CLI.

– Tiden för att slutföra migreringen beror på databasens storlek och antalet objekt i databasen.

– Azure Data Studio krävs när du inte använder PowerShell eller Azure CLI.
Inbyggd säkerhetskopiering och återställning – Migrera enskilda verksamhetsspecifika programdatabaser.
– Snabb och enkel migrering utan en separat migreringstjänst eller ett separat verktyg.

Källor som stöds:
– SQL Server (2005 till 2019) lokalt eller virtuell Azure-dator
- Amazon EC2
– GCP Compute SQL Server VM
– Databassäkerhetskopiering använder flera trådar för att optimera dataöverföring till Azure Blob Storage, men partnerbandbredd och databasstorlek kan påverka överföringshastigheten.
– Stilleståndstiden bör ta den tid som krävs för att utföra en fullständig säkerhetskopiering och återställning (vilket är en storlek på dataåtgärden).
Log Replay Service – Migrera enskilda verksamhetsspecifika programdatabaser.
– Mer kontroll krävs för databasmigreringar.

Källor som stöds:
– SQL Server (2008 till 2019) lokalt eller virtuell Azure-dator
– Amazon EC2
– Amazon RDS för SQL Server
– GCP Compute SQL Server VM
– Migreringen innebär att du gör fullständiga databassäkerhetskopior på SQL Server och kopierar säkerhetskopieringsfiler till Azure Blob Storage. Log Replay Service används för att återställa säkerhetskopierade filer från Azure Blob Storage till SQL Managed Instance.
– Databaser som återställs under migreringsprocessen är i återställningsläge och kan inte användas för läs- eller skrivarbetsbelastningar förrän processen är klar.
Länkfunktion för Azure SQL Managed Instance – Migrera enskilda verksamhetsspecifika programdatabaser.
– Mer kontroll krävs för databasmigreringar.
– Minimiavbrottsmigrering krävs.

Källor som stöds:
– SQL Server (2016 till 2019) lokalt eller virtuell Azure-dator
- Amazon EC2
– GCP Compute SQL Server VM
– Migreringen innebär att upprätta en nätverksanslutning mellan SQL Server och SQL Managed Instance och öppna kommunikationsportar.
– Använder AlwaysOn-tillgänglighetsgruppsteknik för att replikera databasen nära realtid, vilket gör en exakt replik av SQL Server-databasen på SQL Managed Instance.
– Databasen kan användas för skrivskyddad åtkomst på SQL Managed Instance medan migreringen pågår.
– Ger bästa prestanda under migreringen med minimal stilleståndstid.

I följande tabell jämförs de alternativa migreringsalternativen:

Metod eller teknik Användningsområde för Att tänka på
Transaktionsreplikering – Migrera genom att kontinuerligt publicera ändringar från källdatabastabeller till sql managed instance-databastabeller.
– Utföra fullständiga eller partiella databasmigreringar av valda tabeller (delmängd av en databas).

Källor som stöds:
– SQL Server (2012 till 2019) med vissa begränsningar
- Amazon EC2
– GCP Compute SQL Server VM

– Installationen är relativt komplex jämfört med andra migreringsalternativ.
– Tillhandahåller ett alternativ för kontinuerlig replikering för att migrera data (utan att ta databaserna offline).
– Transaktionsreplikering har begränsningar att tänka på när du konfigurerar utgivaren på SQL Server-källinstansen. Mer information finns i Begränsningar för publicering av objekt .
– Det finns möjlighet att övervaka replikeringsaktiviteten .
Masskopiering – Utföra fullständiga eller partiella datamigreringar.
- Kan hantera stilleståndstid.

Källor som stöds:
– SQL Server (2005 till 2019) lokalt eller virtuell Azure-dator
- Amazon EC2
– Amazon RDS för SQL Server
– GCP Compute SQL Server VM
– Kräver stilleståndstid för att exportera data från källan och importera till målet.
– Filformaten och datatyperna som används vid export eller import måste vara konsekventa med tabellscheman.
Guiden Importera export/BACPAC – Migrera enskilda verksamhetsspecifika programdatabaser.
– Passar för mindre databaser.
Kräver inte någon separat migreringstjänst eller ett separat verktyg.

Källor som stöds:
– SQL Server (2005 till 2019) lokalt eller virtuell Azure-dator
- Amazon EC2
- Amazon RDS
– GCP Compute SQL Server VM

– Kräver stilleståndstid eftersom data måste exporteras vid källan och importeras till målet.
– Filformaten och datatyperna som används vid export eller import måste vara konsekventa med tabellscheman för att undvika fel vid trunkering eller matchning av datatyp.
– Tiden det tar att exportera en databas med ett stort antal objekt kan vara betydligt högre.
Azure Data Factory – Migrera och/eller transformera data från SQL Server-källdatabaser.
– Sammanslagning av data från flera datakällor till Azure SQL Managed Instance är vanligtvis för BI-arbetsbelastningar (Business Intelligence).
– Kräver att du skapar dataförflyttningspipelines i Data Factory för att flytta data från källa till mål.
- Kostnaden är en viktig faktor och baseras på faktorer som pipelineutlösare, aktivitetskörningar och dataförflyttningens varaktighet.

Funktionskompatibilitet

Det finns fler saker att tänka på när du migrerar arbetsbelastningar som är beroende av andra SQL Server-funktioner.

SQL Server Integration Services

Migrera PAKET och projekt för SQL Server Integration Services (SSIS) i SSISDB till Azure SQL Managed Instance med hjälp av Azure Database Migration Service.

Endast SSIS-paket i SSISDB från och med SQL Server 2012 stöds för migrering. Konvertera äldre SSIS-paket före migrering. Mer information finns i självstudien om projektkonvertering.

SQL Server Reporting Services

Du kan migrera SQL Server Reporting Services-rapporter (SSRS) till sidnumrerade rapporter i Power BI. Använd RDL-migreringsverktyget för att förbereda och migrera dina rapporter. Microsoft utvecklade det här verktyget för att hjälpa kunder att migrera RDL-rapporter (Report Definition Language) från sina SSRS-servrar till Power BI. Den är tillgänglig på GitHub och dokumenterar en genomgång från slutpunkt till slutpunkt för migreringsscenariot.

SQL Server Analysis Services

SQL Server Analysis Services-tabellmodeller från SQL Server 2012 och senare kan migreras till Azure Analysis Services, som är en PaaS-distributionsmodell (plattform som en tjänst) för Analysis Services-tabellmodellen i Azure. Du kan lära dig mer om hur du migrerar lokala modeller till Azure Analysis Services i den här videoguiden.

Du kan också överväga att migrera dina lokala Analysis Services-tabellmodeller till Power BI Premium med hjälp av de nya XMLA-slutpunkterna för läsning/skrivning.

Hög tillgänglighet

SQL Server-högtillgänglighetsfunktionerna AlwaysOn-redundansklusterinstanser och AlwaysOn-tillgänglighetsgrupper blir föråldrade på den sql-hanterade målinstansen. Arkitektur med hög tillgänglighet är redan inbyggd i tjänstnivåerna Generell användning (standardtillgänglighetsmodell) och Affärskritisk (premiumtillgänglighetsmodell) för SQL Managed Instance. Premium-tillgänglighetsmodellen ger också lässkalning som gör det möjligt att ansluta till en av de sekundära noderna i skrivskyddat syfte.

Utöver den arkitektur med hög tillgänglighet som ingår i SQL Managed Instance kan du med funktionen redundansgrupper hantera replikering och redundans för databaser i en hanterad instans till en annan region.

SQL Agent-jobb

Använd alternativet Azure Database Migration Service offline för att migrera SQL Agent-jobb. Annars skriptar du jobben i Transact-SQL (T-SQL) med hjälp av SQL Server Management Studio och återskapar dem sedan manuellt på den sql-hanterade målinstansen.

Viktigt!

För närvarande stöder Azure Database Migration Service endast jobb med T-SQL-undersystemsteg. Jobb med SSIS-paketsteg måste migreras manuellt.

Inloggningar och grupper

Flytta SQL-inloggningar från SQL Server-källan till Azure SQL Managed Instance med hjälp av Database Migration Service i offlineläge. Använd fönstret Välj inloggningar i migreringsguiden för att migrera inloggningar till din sql-hanterade målinstans.

Som standard stöder Azure Database Migration Service endast migrering av SQL-inloggningar. Du kan dock aktivera migrering av Windows-inloggningar genom att:

  • Se till att den sql-hanterade målinstansen har läsbehörighet till Microsoft Entra-ID (tidigare Azure Active Directory). En användare som har rollen Global administratör kan konfigurera åtkomsten via Azure-portalen.
  • Konfigurera Azure Database Migration Service för att aktivera migrering av Windows-användare eller gruppinloggning. Du konfigurerar detta via Azure-portalen på sidan Konfiguration . När du har aktiverat den här inställningen startar du om tjänsten för att ändringarna ska börja gälla.

När du har startat om tjänsten visas Windows-användare eller gruppinloggningar i listan över inloggningar som är tillgängliga för migrering. För alla Windows-användare eller gruppinloggningar som du migrerar uppmanas du att ange det associerade domännamnet. Tjänstanvändarkonton (konton med domännamnet NT AUTHORITY) och virtuella användarkonton (konton med domännamnet NT SERVICE) stöds inte. Mer information finns i Migrera Windows-användare och -grupper i en SQL Server-instans till Azure SQL Managed Instance med hjälp av T-SQL.

Du kan också använda PowerShell-verktyget som är särskilt utformat av Microsofts datamigreringsarkitekter. Verktyget använder PowerShell för att skapa ett T-SQL-skript för att återskapa inloggningar och välja databasanvändare från källan till målet.

PowerShell-verktyget mappar automatiskt Windows Server Active Directory-konton till Microsoft Entra-konton, och det kan göra en UPN-sökning för varje inloggning mot källans Active Directory-instans. Verktyget skript anpassade server- och databasroller, tillsammans med rollmedlemskap och användarbehörigheter. Inneslutna databaser stöds ännu inte, och endast en delmängd av möjliga SQL Server-behörigheter är skriptade.

Kryptering

När du migrerar databaser som skyddas av transparent datakryptering till en hanterad instans med hjälp av det interna återställningsalternativet migrerar du motsvarande certifikat från SQL Server-källinstansen till den sql-hanterade målinstansen innan databasen återställs.

Systemdatabaser

Återställning av systemdatabaser stöds inte. Om du vill migrera objekt på instansnivå (lagrade i master databaserna och msdb ) skriptar du dem med hjälp av T-SQL och återskapar dem sedan på den hanterade målinstansen.

Minnesintern OLTP (minnesoptimerade tabeller)

SQL Server har en minnesintern OLTP-funktion. Det gör att användning av minnesoptimerade tabeller, minnesoptimerade tabelltyper och inbyggda kompilerade SQL-moduler kan köra arbetsbelastningar som har krav på högt dataflöde och låg latens för transaktionsbearbetning.

Viktigt!

Minnesintern OLTP stöds endast på den Affärskritisk nivån i Azure SQL Managed Instance. Det stöds inte på nivån Generell användning.

Om du har minnesoptimerade tabeller eller minnesoptimerade tabelltyper i din lokala SQL Server-instans och vill migrera till Azure SQL Managed Instance bör du antingen:

  • Välj den Affärskritisk nivån för din SQL-hanterade målinstans som stöder minnesintern OLTP.

  • Om du vill migrera till nivån Generell användning i Azure SQL Managed Instance tar du bort minnesoptimerade tabeller, minnesoptimerade tabelltyper och internt kompilerade SQL-moduler som interagerar med minnesoptimerade objekt innan du migrerar dina databaser. Du kan använda följande T-SQL-fråga för att identifiera alla objekt som måste tas bort före migreringen till nivån Generell användning:

    SELECT * FROM sys.tables WHERE is_memory_optimized=1
    SELECT * FROM sys.table_types WHERE is_memory_optimized=1
    SELECT * FROM sys.sql_modules WHERE uses_native_compilation=1
    

Mer information om minnesintern teknik finns i Optimera prestanda med hjälp av minnesintern teknik i Azure SQL Database och Azure SQL Managed Instance.

Avancerade funktioner

Se till att dra nytta av de avancerade molnbaserade funktionerna i SQL Managed Instance. Du behöver till exempel inte bekymra dig om att hantera säkerhetskopior eftersom tjänsten gör det åt dig. Du kan återställa till valfri tidpunkt inom kvarhållningsperioden. Dessutom behöver du inte bekymra dig om att konfigurera hög tillgänglighet eftersom hög tillgänglighet är inbyggd.

För att stärka säkerheten kan du överväga att använda Microsoft Entra-autentisering, granskning, hotidentifiering, säkerhet på radnivå och dynamisk datamaskering.

Förutom avancerade hanterings- och säkerhetsfunktioner tillhandahåller SQL Managed Instance avancerade verktyg som hjälper dig att övervaka och finjustera din arbetsbelastning. Med Azure SQL Analytics kan du övervaka en stor uppsättning hanterade instanser på ett centraliserat sätt. Automatisk justering i hanterade instanser övervakar kontinuerligt prestanda för sql-plankörningen och åtgärdar automatiskt de identifierade prestandaproblemen.

Vissa funktioner är endast tillgängliga när databasens kompatibilitetsnivå har ändrats till den senaste kompatibilitetsnivån (150).

Migreringstillgångar

Mer hjälp finns i följande resurser som har utvecklats för verkliga migreringsprojekt.

Tillgång beskrivning
Utvärderingsmodell och verktyg för dataarbetsbelastning Det här verktyget tillhandahåller föreslagna "best fit"-målplattformar, molnberedskap och en program-/databasreparationsnivå för en arbetsbelastning. Den erbjuder enkel beräkning med ett klick och rapportgenerering som hjälper till att påskynda stora fastighetsbedömningar genom att tillhandahålla en automatiserad och enhetlig beslutsprocess för målplattformar.
Verktyg för att flytta lokala SQL Server-inloggningar till Azure SQL Managed Instance Ett PowerShell-skript kan skapa ett T-SQL-kommandoskript för att återskapa inloggningar och välja databasanvändare från lokal SQL Server till Azure SQL Managed Instance. Verktyget tillåter automatisk mappning av Windows Server Active Directory-konton till Microsoft Entra-konton, tillsammans med valfritt migrering av inbyggda SQL Server-inloggningar.
Automatisering av datainsamling perfmon med hjälp av Logman Du kan använda Logman-verktyget för att samla in Perfmon-data (för att hjälpa dig att förstå baslinjeprestanda) och få rekommendationer för migreringsmål. Det här verktyget använder logman.exe för att skapa kommandot som ska skapa, starta, stoppa och ta bort prestandaräknare som angetts på en sql server-fjärrinstans.

Data SQL Engineering-teamet utvecklade dessa resurser. Det här teamets huvudstadga är att avblockera och påskynda komplex modernisering för migreringsprojekt för dataplattform till Microsofts Azure-dataplattform.

Nästa steg