Migreringsguide: SQL Server till Azure SQL Database

Gäller för: SQL Server Azure SQL Database

I den här guiden lär du dig hur du migrerar din SQL Server-instans till Azure SQL Database.

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

  • SQL Server på virtuella datorer
  • Amazon Web Services (AWS) EC2
  • Amazon Relational Database Service (AWS RDS)
  • Beräkningsmotor (Google Cloud Platform – GCP)
  • Cloud SQL for SQL Server (Google Cloud Platform – GCP)

Mer migreringsinformation finns i migreringsöversikten. Andra migreringsguider finns i Databasmigrering.

Diagram över migreringsprocessens flöde.

Förutsättningar

För din SQL Server migrering till Azure SQL Database kontrollerar du att du har:

Före migrering

När du har kontrollerat att källmiljön stöds börjar du med steget före migreringen. Upptäck alla befintliga datakällor, utvärdera migreringsmöjligheten och identifiera eventuella blockeringsproblem som kan förhindra din Azure-molnmigrering.

Identifiera

I identifieringsfasen genomsöker du nätverket för att identifiera alla SQL Server instanser och funktioner som används av din organisation.

Använd Azure Migrate för att utvärdera migrerings lämpligheten för lokala servrar, utföra prestandabaserad storleksändring och ge kostnadsuppskattningar för att köra dem i Azure.

Du kan också använda Microsoft Assessment and Planning Toolkit ("MAP Toolkit") för att utvärdera din aktuella IT-infrastruktur. Verktygslådan innehåller ett kraftfullt inventerings-, utvärderings- och rapporteringsverktyg för att förenkla migreringsplaneringsprocessen.

Mer information om verktyg som kan användas för identifieringsfasen finns i Tjänster och verktyg som är tillgängliga för datamigreringsscenarier.

Utvärdera

Anteckning

Om du utvärderar hela SQL Server dataegendom i stor skala på VMWare använder du Azure Migrate för att få Azure SQL distributionsrekommendationer, målstorlek och månatliga uppskattningar.

När datakällor har identifierats kan du utvärdera eventuella lokala SQL Server databaser som kan migreras till Azure SQL Database för att identifiera migreringsblockerare eller kompatibilitetsproblem.

Du kan använda Data Migration Assistant (version 4.1 och senare) för att utvärdera databaser för att hämta:

Följ dessa steg för att utvärdera din miljö med hjälp av Database Migration Assessment:

  1. Öppna Data Migration Assistant (DMA).
  2. Välj Arkiv och välj sedan Ny utvärdering.
  3. Ange ett projektnamn, välj SQL Server som källservertyp och välj sedan Azure SQL Database som målservertyp.
  4. Välj de typer av utvärderingsrapporter som du vill generera. Till exempel databaskompatibilitet och funktionsparitet. Baserat på typen av utvärdering kan de behörigheter som krävs för källan SQL Server vara olika. DMA belyser de behörigheter som krävs för den valda rådgivaren innan utvärderingen körs.
    • Kategorin funktionsparitet innehåller en omfattande uppsättning rekommendationer, alternativ som är tillgängliga i Azure och åtgärder som hjälper dig att planera migreringsprojektet. (sysadmin-behörigheter krävs)
    • Kategorin kompatibilitetsproblem identifierar delvis stödda eller funktionskompatibilitetsproblem som inte stöds och som kan blockera migrering och rekommendationer för att åtgärda dem (CONNECT SQL, VIEW SERVER STATEoch VIEW ANY DEFINITION behörigheter som krävs).
  5. Ange källanslutningsinformationen för SQL Server och anslut till källdatabasen.
  6. Välj Starta utvärdering.
  7. När processen är klar väljer du och granskar utvärderingsrapporterna för migreringsblockering och problem med funktionsparitet. Utvärderingsrapporten kan också exporteras till en fil som kan delas med andra team eller personal i din organisation.
  8. Fastställa den databaskompatibilitetsnivå som minimerar arbetet efter migreringen.
  9. Identifiera det bästa Azure SQL Database SKU för din lokala arbetsbelastning.

Mer information finns i Utföra en SQL Server migreringsutvärdering med Data Migration Assistant.

Om utvärderingen påträffar flera blockerare för att bekräfta att databasen inte är redo för en Azure SQL databasmigrering kan du också överväga:

Skalade utvärderingar och analyser

Data Migration Assistant har stöd för att utföra skalbara utvärderingar och konsolidering av utvärderingsrapporterna för analys.

Om du har flera servrar och databaser som behöver utvärderas och analyseras i stor skala för att ge en bredare vy över dataegendomen kan du läsa följande länkar om du vill veta mer:

Viktigt

Att köra utvärderingar i stor skala för flera databaser, särskilt stora, kan också automatiseras med DMA-kommandoradsverktyget och laddas upp till Azure Migrate för ytterligare analys och målberedskap.

Migrera

När du har slutfört uppgifter som är associerade med förmigreringssteget är du redo att utföra schemat och datamigreringen.

Migrera dina data med den valda migreringsmetoden.

Den här guiden beskriver de två mest populära alternativen – Data Migration Assistant och Azure Database Migration Service.

Data Migration Assistant (DMA)

Så här migrerar du en databas från SQL Server till Azure SQL Database med DMA:

  1. Ladda ned och installera Database Migration Assistant.
  2. Skapa ett nytt projekt och välj Migrering som projekttyp.
  3. Ange källservertypen till SQL Server och målservertypen till Azure SQL Database, välj migreringsomfånget som Schema och data och välj Skapa.
  4. I migreringsprojektet anger du källserverinformationen, till exempel servernamnet, autentiseringsuppgifterna för att ansluta till servern och källdatabasen som ska migreras.
  5. I målserverinformationen anger du Azure SQL databasservernamn, autentiseringsuppgifter för att ansluta till servern och måldatabasen att migrera till.
  6. Välj schemaobjekten och distribuera dem till målet Azure SQL Database.
  7. Välj slutligen Starta datamigrering och övervaka migreringens förlopp.

En detaljerad självstudiekurs finns i Migrera lokala SQL Server eller SQL Server på virtuella Azure-datorer för att Azure SQL Database med hjälp av Data Migration Assistant.

Anteckning

Kompatibilitetsnivån för den importerade databasen baseras på kompatibilitetsnivån för källdatabasen.

Azure Database Migration Service (DMS)

Om du vill migrera databaser från SQL Server till Azure SQL Database med DMS följer du stegen nedan:

  1. Om du inte redan har gjort det registrerar du resursprovidern Microsoft.DataMigration i din prenumeration.
  2. Skapa en Azure Database Migration Service-instans på önskad plats (helst i samma region som målet Azure SQL Database). Välj ett befintligt virtuellt nätverk eller skapa ett nytt som värd för din DMS-instans.
  3. När dms-instansen har skapats skapar du ett nytt migreringsprojekt och anger källservertypen som SQL Server och målservertypen som Azure SQL Database. Välj Offlinedatamigrering som aktivitetstyp på bladet för att skapa migreringsprojekt.
  4. Ange SQL Server information om källan på sidan information om migreringskällan och målinformationen Azure SQL databas på sidan Information om migreringsmål.
  5. Mappa käll- och måldatabaserna för migrering och välj sedan de tabeller som du vill migrera.
  6. Granska migreringssammanfattningen och välj Kör migrering. Du kan sedan övervaka migreringsaktiviteten och kontrollera förloppet för databasmigreringen.

En detaljerad självstudie finns i Migrera SQL Server till en Azure SQL-databas med DMS.

Datasynkronisering och snabb datasynkronisering

När du använder migreringsalternativ som kontinuerligt replikerar/synkroniserar dataändringar från källa till mål kan källdata och scheman ändras och avvika från målet. Under datasynkroniseringen kontrollerar du att alla ändringar på källan samlas in och tillämpas på målet under migreringsprocessen.

När du har kontrollerat att data är samma för både källan och målet kan du skära över från källan till målmiljön. Det är viktigt att planera snabbprocessen med affärs-/programteam för att säkerställa att minimalt med avbrott under snabbhet inte påverkar affärskontinuiteten.

Viktigt

Mer information om de specifika steg som är associerade med att utföra en snabbmigrering som en del av migreringar med DMS finns i Utföra snabbmigrering.

Migrera med transaktionsreplikering

När du inte har råd att ta bort din SQL Server databas från produktion medan migreringen sker kan du använda SQL Server transaktionsreplikering som migreringslösning. För att kunna använda den här metoden måste källdatabasen uppfylla kraven för transaktionsreplikering och vara kompatibel med Azure SQL Database. Information om SQL-replikering med tillgänglighetsgrupper finns i Konfigurera replikering för AlwaysOn-tillgänglighetsgrupper (SQL Server).

Om du vill använda den här lösningen konfigurerar du databasen i Azure SQL Database som prenumerant på den SQL Server instans som du vill migrera. Distributören för transaktionsreplikering synkroniserar data från databasen för att synkroniseras (utgivaren) medan nya transaktioner fortsätter.

Med transaktionsreplikering visas alla ändringar av dina data eller scheman i databasen i Azure SQL Database. När synkroniseringen är klar och du är redo att migrera ändrar du anslutningssträngen för dina program så att den pekar på databasen. När transaktionsreplikeringen tömmer alla ändringar som finns kvar i källdatabasen och alla dina program pekar på Azure SQL Database kan du avinstallera transaktionsreplikering. Databasen i Azure SQL Database är nu ditt produktionssystem.

Tips

Du kan också använda transaktionsreplikering till att migrera en del av din källdatabas. Den publikation som du replikerar till Azure SQL Database kan begränsas till en del av tabellerna i databasen som replikeras. Du kan begränsa data till en del av raderna och/eller en del av kolumnerna för varje tabell som replikeras.

Arbetsflöde för transaktionsreplikering

Viktigt

Använd den senaste versionen av SQL Server Management Studio för att förbli synkroniserad med uppdateringar av Azure och SQL Database. Äldre versioner av SQL Server Management Studio kan inte konfigurera SQL Database som en prenumerant. Hämta den senaste versionen av SQL Server Management Studio.

Steg Metod
Konfigurera distribution | SQL Server Management Studio Transact-SQL
Skapa publikation | SQL Server Management Studio Transact-SQL
Skapa en prenumeration | SQL Server Management Studio Transact-SQL

Tips och skillnader vid migrering till SQL Database

  • Använda en lokal distributör
    • Om du gör det påverkas serverns prestanda.
    • Om prestandapåverkan är oacceptabel kan du använda en annan server, men det ökar komplexiteten i hantering och administration.
  • När du väljer en mapp för ögonblicksbilder måste du se till att mappen är tillräckligt stor för att innehålla en BCP för varje tabell som du vill replikera.
  • När du skapar ögonblicksbilder låss de associerade tabellerna tills de har slutförts, så schemalägg ögonblicksbilden på rätt sätt.
  • Endast push-prenumerationer stöds i Azure SQL Database. Du kan bara lägga till prenumeranter från källdatabasen.

Migreringsrekommendationer

För att påskynda migreringen till Azure SQL Database bör du överväga följande rekommendationer:

Resurskonkurration Rekommendation
Källa (vanligtvis lokalt) Den primära flaskhalsen under migreringen från källan är datafilens I/O och svarstiden, som måste övervakas noggrant. Baserat på datafilens I/O och svarstid, och beroende på om det är en virtuell dator eller fysisk server, kan du behöva kontakta lagringsadministratören och utforska alternativ för att minimera flaskhalsen.
Mål (Azure SQL databas) Den största begränsningsfaktorn är logggenereringshastigheten och svarstiden i databasloggfilen. Med Azure SQL Database kan du få en maximal logggenereringshastighet på 96 MB/s. För att påskynda migreringen skalar du upp målet Azure SQL databas till Affärskritisk Gen5 8 vCore för att få den maximala logggenereringshastigheten på 96 MB/s, vilket också ger låg svarstid för loggfiler. Tjänstnivån Hyperskala ger en logghastighet på 100 MB/s oavsett vald tjänstnivå.
Nätverk Nätverksbandbredden som behövs är lika med den maximala logginmatningshastigheten på 96 MB/s (768 Mb/s) Beroende på nätverksanslutningen från ditt lokala datacenter till Azure kontrollerar du nätverksbandbredden (vanligtvis Azure ExpressRoute) för att få den maximala logginmatningshastigheten.
Virtuell dator som används för Data Migration Assistant (DMA) CPU är den primära flaskhalsen för den virtuella datorn som kör DMA Saker att tänka på för att påskynda datamigreringen med hjälp av:
– Beräkningsintensiva virtuella Azure-datorer
– Använd minst F8s_v2 (8 virtuella kärnor) för att köra DMA
– Kontrollera att den virtuella datorn körs i samma Azure-region som målet.
Azure Database Migration Service (DMS) Det kan finnas överväganden för beräkningsresurskonkurration och databasobjekt för DMS. Använd premium 4 virtuella kärnor. DMS tar automatiskt hand om databasobjekt som sekundärnycklar, utlösare, begränsningar och icke-klustrade index och behöver inte manuella åtgärder.

Du kan också överväga dessa rekommendationer för bästa prestanda under migreringsprocessen.

  • Välj den högsta tjänstnivån och beräkningsstorleken som din budget tillåter för att maximera överföringsprestandan. Du kan spara pengar genom att skala ned när migreringen är klar.
  • Om du använder BACPAC-filer minimerar du avståndet mellan BACPAC-filen och måldatacentret.
  • Inaktivera automatisk uppdatering och skapa statistik automatiskt under migreringen.
  • Partitionstabeller och index.
  • Ta bort indexerade vyer och återskapa dem när de är klara.
  • Ta bort historiska data som sällan efterfrågas till en annan databas och migrera dessa historiska data till en separat databas i Azure SQL Database. Du kan sedan söka i historiska data med elastiska frågor.

Efter migreringen

När du har slutfört migreringssteget går du igenom följande uppgifter efter migreringen för att säkerställa att allt fungerar smidigt och effektivt.

Fasen efter migreringen är avgörande för att stämma av eventuella problem med dataprecision och verifiera fullständighet, samt för att åtgärda prestandaproblem med arbetsbelastningen.

Uppdatera statistik

Uppdatera statistik med fullständig sökning när migreringen har slutförts.

Åtgärda program

När data har migrerats till målmiljön måste alla program som tidigare förbrukade källan börja använda målet. För att göra detta krävs i vissa fall ändringar i programmen.

Utföra tester

Testmetoden för databasmigrering består av följande aktiviteter:

  1. Utveckla valideringstester: Om du vill testa databasmigreringen måste du använda SQL-frågor. Du måste skapa valideringsfrågorna som ska köras mot både källdatabaserna och måldatabaserna. Valideringsfrågorna bör omfatta det omfång som du har definierat.
  2. Konfigurera testmiljö: Testmiljön bör innehålla en kopia av källdatabasen och måldatabasen. Se till att isolera testmiljön.
  3. Kör valideringstester: Kör valideringstesterna mot källan och målet och analysera sedan resultaten.
  4. Kör prestandatester: Kör prestandatestet mot källan och målet och analysera och jämför sedan resultaten.

Använda avancerade funktioner

Se till att dra nytta av de avancerade molnbaserade funktioner som erbjuds av SQL Database, till exempel inbyggd hög tillgänglighet, hotidentifiering och övervakning och justering av din arbetsbelastning.

Vissa SQL Server funktioner är bara tillgängliga när databaskompatibilitetsnivån har ändrats till den senaste kompatibilitetsnivån.

Mer information finns i Hantera Azure SQL Database efter migreringen.

Lösa problem med databasmigreringskompatibilitet

Du kan stöta på en mängd olika kompatibilitetsproblem, både beroende på vilken version av SQL Server i källdatabasen och komplexiteten i databasen som du migrerar. Äldre versioner av SQL Server har fler kompatibilitetsproblem. Använd följande resurser, utöver en riktad Internetsökning med hjälp av sökmotor:

Viktigt

Azure SQL Managed Instance kan du migrera en befintlig SQL Server-instans och dess databaser med minimala eller inga kompatibilitetsproblem. Se Vad är Azure SQL Managed Instance?

Nästa steg

En matris med Tjänster och verktyg från Microsoft och tredje part som är tillgängliga för att hjälpa dig med olika scenarier för databas- och datamigrering samt specialuppgifter finns i Tjänst och verktyg för datamigrering.

Mer information om Azure Migrate finns i:

Mer information om SQL Database finns i:

Mer information om ramverks- och implementeringscykeln för molnmigreringar 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åtkomstlager finns i Database Experimentation Assistant.