Migreringsöversikt: SQL Server till Azure SQL Database
GÄLLER FÖR:
Azure SQL Database
Lär dig mer om alternativ och överväganden för att migrera dina SQL Server-databaser till Azure SQL Database.
Du kan migrera befintliga SQL Server som körs på:
- SQL Server lokalt.
- SQL Server på Azure Virtual Machines.
- Amazon Web Services (AWS) Elastic Compute Cloud (EC2).
- AWS Relational Database Service (RDS).
- Compute Engine in Google Cloud Platform (GCP).
- Cloud SQL for SQL Server in GCP.
Andra migreringsguider finns i Databasmigrering.
Översikt
Azure SQL Database är ett rekommenderat målalternativ för SQL Server arbetsbelastningar som kräver en helt hanterad plattform som en tjänst (PaaS). SQL Database hanterar de flesta databashanteringsfunktioner. Den har också inbyggda funktioner för hög tillgänglighet, intelligent frågebearbetning, skalbarhet och prestanda 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 främsta fördelarna med att migrera till SQL Database är att du kan modernisera ditt program med paaS-funktionerna. Du kan sedan eliminera eventuella beroenden av tekniska komponenter som är begränsade på instansnivå, till exempel SQL agentjobb.
Du kan också spara kostnader genom att använda Azure Hybrid-förmån för SQL Server att migrera dina SQL Server lokala licenser till Azure SQL Database. Det här alternativet är tillgängligt om du väljer köpmodellen baserad på vCore.
Se till att granska de SQL Server databasmotorfunktioner som finns i Azure SQL Database för att verifiera att ditt migreringsmål kan stödjas.
Överväganden
De viktigaste faktorerna att tänka på när du utvärderar migreringsalternativ är:
- Antal servrar och databaser
- Storlek på databaser
- Acceptabel stilleståndstid under migreringsprocessen
De migreringsalternativ som anges i den här guiden tar hänsyn till dessa faktorer. För att logisk datamigrering Azure SQL Database kan migreringstiden 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 enkel databas via ett ui-baserat 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 Portal utan avbrottstid för ditt program.
Distributionsmodeller: Förstå programarbetsbelastningen och användningsmönstret för att välja mellan en enkel databas eller en elastisk pool.
- En enkel databas representerar en fullständigt hanterad databas som passar de flesta moderna molnprogram och mikrotjänster.
- En elastisk pool är en samling enkla databaser med en delad uppsättning resurser, till exempel PROCESSOR eller minne. Det är lämpligt 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 för virtuella kärnor, databastransaktionsenhet (DTU) eller serverlösa köpmodeller.
- Med modellen med virtuella kärnor kan du välja antal virtuella kärnor för Azure SQL Database, så det är det enklaste valet när du översätter från lokala 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 underliggande beräknings-, minnes- och I/O-resurser för att tillhandahålla en blandad DTU.
- Den serverlösa modellen är för arbetsbelastningar som kräver automatisk skalning på begäran med beräkningsresurser som debiteras per sekund för användning. Den serverlösa beräkningsnivån pausar automatiskt databaser under inaktiva perioder (där endast lagring faktureras). Den återupptar automatiskt databaser när aktiviteten returneras.
Tjänstnivåer: Välj mellan tre tjänstnivåer som är utformade för olika typer av program.
- Generell användning/standard-tjänstnivån erbjuder ett balanserat budgetorienterat alternativ med beräkning och lagring som passar för att leverera program på mellan- och lägre nivåer. Redundans är inbyggt på lagringslagret 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 transaktionsfrekvenser, I/O med låg latens och en hög återhämtningsnivå. Sekundära repliker är tillgängliga för redundans och för att avlasta läsarbetsbelastningar.
- Tjänstnivån hyperskala är för databaser som har växande datavolymer och behöver automatiskt skala upp till 100 TB i databasstorlek. Den är utformad för mycket stora databaser.
Viktigt
Transaktionsloggfrekvensen styrs i Azure SQL Database för att begränsa höga inmatningshastigheter. Därför kan du under migreringen behöva skala måldatabasresurser (virtuella kärnor eller DPU:er) för att minska trycket på cpu eller dataflöde. Välj rätt storlek på måldatabasen, men planera att skala upp resurserna för migreringen om det behövs.
SQL Server alternativ för virtuell dator
Ditt företag kan ha krav som gör SQL Server på Azure Virtual Machines 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 flytta till en SQL Server virtuell dator (VM) 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 är strikt beroende av funktioner som fortfarande inte stöds, till exempel FileStream/FileTable, PolyBase och transaktioner mellan instanser.
- Du måste stanna kvar i en specifik version SQL Server (2012, till exempel).
- Dina beräkningskrav är mycket lägre än en hanterad instans erbjuder (till exempel en vCore) 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 SQL dataeskala i stor skala på VMware. Den ger rekommendationer SQL azure-distribution, mål och månatliga uppskattningar. |
| Data Migration Assistant | Det här skrivbordsverktyget från Microsoft ger sömlösa utvärderingar SQL Server migreringar av enskilda databaser till Azure SQL Database (både schema och data). Verktyget kan installeras på en server lokalt eller på din lokala dator som har anslutning till dina källdatabaser. Migreringsprocessen är en logisk dataförflyttning mellan objekt i käll- och måldatabaserna. |
| Azure Database Migration Service | Den här Azure-tjänsten kan migrera SQL Server databaser till Azure SQL Database via Azure Portal eller automatiskt via PowerShell. Database Migration Service kräver att du väljer ett prioriterat virtuellt Azure-nätverk under etableringen för att säkerställa anslutningen till SQL Server databaserna. Du kan migrera enkla databaser eller i stor skala. |
I följande tabell visas alternativa migreringsverktyg:
| Teknik | Beskrivning |
|---|---|
| Transaktionsreplikering | Replikera data från SQL Server databastabeller till Azure SQL Database genom att tillhandahålla ett migreringsalternativ av typen utgivare-prenumerant samtidigt som transaktionskonsekvensen upprätthålls. Inkrementella dataändringar sprids till prenumeranter när de sker på utgivarna. |
| Importexporttjänst/BACPAC | BACPAC är Windows fil med ett .bacpac-tillägg som kapslar in en databass schema och data. Du kan använda BACPAC för att både exportera data från SQL Server och importera data till Azure SQL Database. En BACPAC-fil kan importeras till en SQL databas via Azure Portal. 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 | BCP-verktyget (Bulk Copy Program) 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 måldatabasen 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 | Den aktiviteten Kopiera i Azure Data Factory migrerar data från källdatabaser SQL Server till Azure SQL Database med hjälp av inbyggda anslutningsappar och en integreringskörning. Data Factory har stöd för en mängd olika anslutningsappar för att flytta data SQL Server datakä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.Data Sync är användbart i fall där data måste uppdateras över flera databaser i Azure SQL Database eller SQL Server. |
Jämför migreringsalternativ
Jämför migreringsalternativen för att välja den väg som passar dina affärsbehov.
I följande tabell jämförs de migreringsalternativ som vi rekommenderar:
| Migreringsalternativ | När du ska använda detta | Överväganden |
|---|---|---|
| Data Migration Assistant | – Migrera enkla databaser (både schema och data). – Kan hantera stilleståndstid under datamigreringsprocessen. Källor som stöds: – SQL Server (2005 till 2019) lokalt eller virtuell Azure-dator – AWS EC2 – AWS RDS - GCP Compute SQL Server VM | – Migreringsaktiviteten utför dataförflyttning mellan databasobjekt (från källa till mål), så vi rekommenderar att du kör den under tider med låg belastning. – Data Migration Assistant rapporterar status för migrering per databasobjekt, inklusive antalet migrerade rader. – För stora migreringar (antal databaser eller storleken på databasen) använder du Azure Database Migration Service. |
| Azure Database Migration Service | – Migrera enkla databaser eller i stor skala. – Kan hantera stilleståndstid under migreringsprocessen. Källor som stöds: – SQL Server (2005 till 2019) lokalt eller virtuell Azure-dator – AWS EC2 – AWS RDS - GCP Compute SQL Server VM | – Migreringar i stor skala kan automatiseras via PowerShell. – Tiden för att slutföra migreringen beror på databasens storlek och antalet objekt i databasen. – Kräver att källdatabasen anges som skrivskyddade. |
I följande tabell jämförs de alternativa migreringsalternativen:
| Metod eller teknik | När du ska använda detta | Överväganden |
|---|---|---|
| Transaktionsreplikering | – Migrera genom att kontinuerligt publicera ändringar från källdatabastabeller till SQL Database måltabeller. – Gö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. – Ger 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 ställer in utgivaren på den SQL Server instansen. Mer information finns i Begränsningar för publicering av objekt. – Det är möjligt att övervaka replikeringsaktiviteten. |
| Importexporttjänst/BACPAC | – Migrera enskilda verksamhetsbaserade programdatabaser. – Passar för mindre databaser. – Kräver inte en 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 på målet. – Filformaten och datatyperna som används i exporten eller importen måste vara konsekventa med tabellscheman för att undvika trunkering eller felmatchningsfel av datatyp. – Det kan ta betydligt längre tid att exportera en databas med ett stort antal objekt. |
| Masskopiering | – Göra fullständiga eller partiella datamigrering. – 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 databaser. – Att sammanfoga data från flera datakällor till Azure SQL Database är vanligtvis för business intelligence (BI)-arbetsbelastningar. | – Kräver att du skapar pipelines för dataförflyttning Data Factory för att flytta data från källa till mål. - Kostnaden är en viktig faktor och baseras på faktorer som pipeline-utlösare, aktivitetskörningar och varaktighet för dataförflyttning. |
| SQL Data Sync | – Synkronisera data mellan käll- och måldatabaser. – Lämpligt att köra kontinuerlig synkronisering Azure SQL Database mellan lokala och SQL Server i ett dubbelriktat flöde. | – Azure SQL Database måste vara navdatabasen för synkronisering med en lokal SQL Server som en medlemsdatabas. – Jämfört med transaktionsreplikering stöder SQL Data Sync dubbelriktad datasynkronisering mellan lokala och Azure SQL Database. – Kan ha en högre prestandapåverkan, beroende på arbetsbelastningen. |
Funktionsam samverkan
Det finns fler överväganden när du migrerar arbetsbelastningar som förlitar sig på andra SQL Server funktioner.
SQL Server Integration Services
Migrera SQL Server SSIS-paket (Integration Services) till Azure genom att omdistribuera paketen till Azure-SSIS-körningen Azure Data Factory. Azure Data Factory stöd för migrering av SSIS-paket genom att tillhandahålla en körningskö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) inbyggt i Azure Data Factory med hjälp av dataflöden.
SQL Server Reporting Services
Migrera SQL Server Reporting Services (SSRS)-rapporter till sidnumrerade rapporter i Power BI. Använd RDL-migreringsverktyget för att förbereda och migrera dina rapporter. Microsoft har utvecklat det här verktyget för att hjälpa kunder att migrera Report Definition Language -rapporter (RDL) från sina SSRS-servrar till Power BI. Du hittar det på GitHub tillsammans med dokumentation för ett komplett migreringsscenario.
Hög tillgänglighet
Manuell konfiguration av SQL Server funktioner för hög tillgänglighet som Always On-redundansklusterinstanser och Always On-tillgänglighetsgrupper blir inaktuella på SQL databasen. Arkitekturen för hög tillgänglighet är redan inbyggd i tjänstnivåer 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 för skrivskyddad användning.
Utöver arkitekturen för hög tillgänglighet som ingår i Azure SQL Database kan du med funktionen automatiska redundansgrupper hantera replikering och redundans för databaser i en hanterad instans till en annan region.
Inloggningar och grupper
Windows inloggningar inte stöds i Azure SQL Database skapar du en Azure Active Directory inloggning i stället. Återskapa alla SQL inloggningar manuellt.
SQL Agent-jobb
SQL agentjobb stöds inte direkt i Azure SQL Database och måste distribueras till elastiska databasjobb (förhandsversion).
Systemdatabaser
De Azure SQL Database tillämpliga systemdatabaserna är master 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 bör du överväga att använda Azure AD-autentisering,granskning, hotidentifiering, säkerhet påradnivå och dynamisk datamaskering.
Förutom avancerade hanterings- och säkerhetsfunktioner innehåller SQL Database verktyg som kan hjälpa 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 din SQL 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 | Description |
|---|---|
| Utvärderingsmodell och verktyg för dataarbetsbelastning | Det här verktyget innehåller förslag på "bästa passning"-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 egendomsutvärderingar genom att tillhandahålla en automatiserad och enhetlig beslutsprocess för målplattformar. |
| Massskapande av databaser 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 scheman till Azure SQL Database. |
| Konvertera SQL Server Agent-jobb till elastiska databasjobb | Det här skriptet migrerar källjobben SQL Server agentjobb 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 skapa inloggningar på nytt och välja databasanvändare från lokala SQL Server för Azure SQL Database. Med verktyget kan du automatiskt mappa Windows Server Active Directory-konton till Azure AD-konton, samt eventuellt migrera SQL Server interna inloggningar. |
| Automatisering av Perfmon-datainsamling med hjälp av Logman | Du kan använda Logman-verktyget för att samla in Perfmon-data (för 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 skapar, startar, stoppar och tar bort prestandaräknare som angetts på en SQL Server instans. |
Data SQL engineering-teamet utvecklade dessa resurser. Det här teamets grundstadga är att avblockera och påskynda komplex modernisering för migreringsprojekt för dataplattformar till Microsofts Azure-dataplattform.
Nästa steg
Om du vill börja migrera dina SQL Server till Azure SQL Database kan du gå SQL Server att Azure SQL Database migreringsguiden.
En matris med tjänster och verktyg som kan hjälpa dig med databas- och datamigreringsscenarier samt specialuppgifter finns i Tjänster och verktyg för datamigrering.
Mer information om SQL Database finns i:
Mer information om ramverket och implementeringscykeln för molnmigrering finns i:
Information om hur du utvärderar programåtkomstlagret finns i Data Access Migration Toolkit (förhandsversion).
Mer information om hur du utför A/B-testning för dataåtkomstlagret finns i Database Experimentation Assistant.