Migreringsöversikt: SQL Server till Azure SQL Database

Gäller för:Azure SQL Database

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

Du kan migrera befintliga SQL Server-databaser som körs 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 Database är ett rekommenderat målalternativ för SQL Server-arbetsbelastningar som kräver en fullständigt hanterad plattform som en tjänst (PaaS). SQL Database hanterar de flesta databashanteringsfunktioner. Den har också inbyggd hög tillgänglighet, intelligent frågebearbetning, skalbarhet och prestandafunktioner som passar många programtyper.

SQL Database ger flexibilitet med flera distributionsmodeller och tjänstnivåer som tillgodoser olika typer av program eller arbetsbelastningar.

En av de viktigaste fördelarna med att migrera till SQL Database är att du kan modernisera ditt program med hjälp av PaaS-funktionerna. Du kan sedan eliminera alla beroenden av tekniska komponenter som är begränsade på instansnivå, till exempel SQL Agent-jobb.

Du kan också spara kostnader med hjälp av Azure Hybrid-förmån för SQL Server för att migrera dina lokala SQL Server-licenser till Azure SQL Database. Det här alternativet är tillgängligt om du väljer den vCore-baserade köpmodellen.

Se till att granska funktionerna i SQL Server-databasmotorn som är tillgängliga i Azure SQL Database för att verifiera supporten 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

De migreringsalternativ som anges i den här guiden tar hänsyn till dessa faktorer. För migrering av logiska data till Azure SQL Database kan tiden för migrering bero på både antalet objekt i en databas och databasens storlek.

Verktyg är tillgängliga för olika arbetsbelastningar och användarinställningar. Vissa verktyg kan användas för att utföra en snabb migrering av en enskild databas via ett användargränssnittsbaserat verktyg. Andra verktyg kan automatisera migreringen av flera databaser för att hantera migreringar i stor skala.

Välj ett lämpligt mål

Överväg allmänna riktlinjer som hjälper dig att välja rätt distributionsmodell och tjänstnivå för Azure SQL Database. 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.

Distributionsmodeller: Förstå programarbetsbelastningen och användningsmönstret för att välja mellan en enskild databas eller en elastisk pool.

  • En enskild databas representerar en fullständigt hanterad databas som är lämplig för de flesta moderna molnprogram och mikrotjänster.
  • En elastisk pool är en samling enkla databaser med en delad uppsättning resurser, till exempel CPU eller minne. Den är lämplig för att kombinera databaser i en pool med förutsägbara användningsmönster som effektivt kan dela samma uppsättning resurser.

Köpmodeller: Välj mellan köpmodellerna virtuell kärna, databastransaktionsenhet (DTU) eller serverlösa köpmodeller.

  • Med modellen med virtuell kärna kan du välja antalet virtuella kärnor för Azure SQL Database, så det är det enklaste valet när du översätter från en lokal SQL Server. Det här är det enda alternativet som har stöd för att spara licenskostnader med Azure Hybrid-förmån.
  • DTU-modellen abstraherar de underliggande beräknings-, minnes- och I/O-resurserna för att tillhandahålla en blandad DTU.
  • Den serverlösa modellen är avsedd för arbetsbelastningar som kräver automatisk skalning på begäran med beräkningsresurser som debiteras per sekund av användning. Den serverlösa beräkningsnivån pausar automatiskt databaser under inaktiva perioder (då enbart lagring faktureras). Den återupptar automatiskt databaser när aktiviteten returneras.

Tjänstnivåer: Välj mellan tre tjänstnivåer som utformats för olika typer av program.

  • Tjänstnivån Generell användning/Standard erbjuder ett balanserat budgetorienterat alternativ med beräkning och lagring som lämpar sig för att leverera program på mellan- och lägre nivåer. Redundans är inbyggd i lagringsskiktet för att återställa från fel. Den är utformad för de flesta databasarbetsbelastningar.
  • Affärskritisk/Premium-tjänstnivån är för högnivåprogram som kräver höga transaktionshastigheter, låg latens I/O och en hög återhämtningsnivå. Sekundära repliker är tillgängliga för redundans och avlastning av läsarbetsbelastningar.
  • Tjänstnivån Hyperskala är avsedd för alla kunder som behöver högre prestanda och tillgänglighet, snabb säkerhetskopiering och återställning samt/eller snabb skalbarhet för lagring och beräkning. Detta inkluderar kunder som flyttar till molnet för att modernisera sina program samt kunder som redan använder andra tjänstnivåer i Azure SQL Database. Tjänstnivån Hyperskala stöder ett brett utbud av databasarbetsbelastningar, från ren OLTP till ren analys. Den är optimerad för OLTP- och HTAP-arbetsbelastningar (hybridtransaktions- och analysbearbetning).

Viktigt!

Transaktionslogghastigheten styrs i Azure SQL Database för att begränsa höga inmatningshastigheter. Under migreringen kan du därför behöva skala måldatabasresurser (virtuella kärnor eller DTU:er) för att minska trycket på processorn eller dataflödet. Välj måldatabasen med lämplig storlek, men planera att skala upp resurser för migreringen om det behövs.

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 Database.

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 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.
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.

I följande tabell visas alternativa migreringsverktyg:

Teknik beskrivning
Transaktionsreplikering Replikera data från SQL Server-källdatabastabeller till Azure SQL Database genom att tillhandahålla migreringsalternativet publisher-subscriber med bibehållen transaktionskonsekvens. Inkrementella dataändringar sprids till prenumeranter när de sker på utgivaren.
Import Export Service/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 data till Azure SQL Database. En BACPAC-fil kan importeras till en ny SQL-databas via Azure-portalen.

För skalning och prestanda med stora databasstorlekar eller ett stort antal databaser bör du överväga att använda kommandoradsverktyget SqlPackage för att exportera och importera databaser.
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 SQL-måldatabasen.

För snabba masskopieringsåtgärder för att flytta data till Azure SQL Database kan du använda verktyget Smart Masskopiering för att maximera överföringshastigheten genom att dra nytta av parallella kopieringsuppgifter.
Azure Data Factory Aktiviteten Kopiera i Azure Data Factory migrerar data från SQL Server-källdatabaser till Azure SQL Database med hjälp av inbyggda anslutningsappar och en integreringskörning.

Data Factory stöder en mängd olika anslutningsappar för att flytta data från SQL Server-källor till Azure SQL Database.
SQL Data Sync SQL Data Sync är en tjänst som bygger på Azure SQL Database som gör att du kan synkronisera valda data dubbelriktat över flera databaser, både lokalt och i molnet.
Datasynkronisering är användbart i de fall där data måste uppdateras i flera databaser i Azure SQL Database eller SQL Server.

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 migreringsalternativ som vi rekommenderar:

Migreringsalternativ Användningsområde för Att tänka på
Azure Migrate – Identifiera och utvärdera enskilda databaser eller i stor skala från olika miljöer. – Alla steg före migreringen, till exempel identifiering, utvärderingar och rätt storleksändring av lokala resurser ingår för infrastruktur, data och program.
Azure SQL Migration-tillägg för Azure Data Studio – Migrera enskilda databaser eller i stor skala.
– Endast offlineläge.

Källor som stöds:
– SQL Server (2008 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.

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 Database-måltabeller.
– Utföra fullständiga eller partiella databasmigreringar av valda tabeller (delmängd av en databas).

Källor som stöds:
- SQL Server (2016 till 2019) med vissa begränsningar
– AWS 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 går att övervaka replikeringsaktiviteten.
Import Export Service/BACPAC – Migrera enskilda verksamhetsspecifika programdatabaser.
– Passar för mindre databaser.
– Kräver ingen separat migreringstjänst eller ett separat verktyg.

Källor som stöds:
– SQL Server (2005 till 2019) lokalt eller virtuell Azure-dator
– AWS EC2
– AWS 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.
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
– AWS EC2
– AWS RDS
– 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.
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 Database ä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.
SQL Data Sync – Synkronisera data mellan käll- och måldatabaser.
– Lämplig för att köra kontinuerlig synkronisering mellan Azure SQL Database och lokal SQL Server i ett dubbelriktat flöde.
– Azure SQL Database måste vara hubbdatabasen för synkronisering med en lokal SQL Server-databas som en medlemsdatabas.
– Jämfört med transaktionsreplikering stöder SQL Data Sync dubbelriktad datasynkronisering mellan lokal och Azure SQL Database.
– Kan ha en högre prestandapåverkan, beroende på arbetsbelastningen.

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 SQL Server Integration Services-paket (SSIS) till Azure genom att omdistribuera paketen till Azure-SSIS-körningen i Azure Data Factory. Azure Data Factory stöder migrering av SSIS-paket genom att tillhandahålla en körning som skapats för att köra SSIS-paket i Azure. Du kan också skriva om SSIS ETL-logiken (extrahera, transformera, läsa in) internt i Azure Data Factory med hjälp av dataflöden.

SQL Server Reporting Services

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.

Hög tillgänglighet

Manuell installation av SQL Server-funktioner med hög tillgänglighet som AlwaysOn-redundansklusterinstanser och AlwaysOn-tillgänglighetsgrupper blir föråldrade för SQL-måldatabasen. 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 Azure SQL Database. Tjänstnivån Affärskritisk/Premium 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 Azure SQL Database kan du med funktionen redundansgrupper hantera replikering och redundansväxling av databaser till en server i en annan region.

Inloggningar och grupper

Windows-inloggningar stöds inte i Azure SQL Database, skapa en inloggning från Microsoft Entra-ID (tidigare Azure Active Directory) i stället. Återskapa alla SQL-inloggningar manuellt.

SQL Agent-jobb

SQL Agent-jobb stöds inte direkt i Azure SQL Database och måste distribueras till elastiska databasjobb (förhandsversion).

Systemdatabaser

För Azure SQL Database är de enda tillämpliga systemdatabaserna huvuddatabaser och tempdb. Mer information finns i Tempdb i Azure SQL Database.

Avancerade funktioner

Se till att dra nytta av de avancerade molnbaserade funktionerna i SQL Database. 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.

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 Database verktyg som hjälper dig att övervaka och finjustera din arbetsbelastning. Azure SQL Analytics (förhandsversion) är en avancerad lösning för att övervaka prestanda för alla dina databaser i Azure SQL Database i stor skala och över flera prenumerationer i en enda vy. Azure SQL Analytics samlar in och visualiserar viktiga prestandamått med inbyggd intelligens för prestandafelsökning.

Automatisk justering övervakar kontinuerligt prestanda för sql-körningsplanen och åtgärdar automatiskt identifierade prestandaproblem.

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.
Massdatabasskapande med PowerShell Du kan använda en uppsättning med tre PowerShell-skript som skapar en resursgrupp (create_rg.ps1), den logiska servern i Azure (create_sqlserver.ps1) och en SQL-databas (create_sqldb.ps1). Skripten innehåller loopfunktioner så att du kan iterera och skapa så många servrar och databaser som behövs.
Massschemadistribution med MSSQL-Scripter och PowerShell Den här tillgången skapar en resursgrupp, skapar en eller flera logiska servrar i Azure som värd för Azure SQL Database, exporterar varje schema från en lokal SQL Server-instans (eller flera SQL Server 2005+-instanser) och importerar schemana till Azure SQL Database.
Konvertera SQL Server Agent-jobb till elastiska databasjobb Det här skriptet migrerar dina SQL Server Agent-källjobb till elastiska databasjobb.
Verktyg för att flytta lokala SQL Server-inloggningar till Azure SQL Database 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 Database. 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