Självstudier: Migrera SQL Server till Azure SQL Managed Instance offline i Azure Data Studio

Du kan använda Azure Database Migration Service och Azure SQL Migration-tillägget i Azure Data Studio för att migrera databaser från en lokal instans av SQL Server till Azure SQL Managed Instance offline och med minimal stilleståndstid.

Information om metoder för databasmigrering som kan kräva viss manuell konfiguration finns i SQL Server-instansmigrering till Azure SQL Managed Instance.

I den här självstudien lär du dig hur du migrerar AdventureWorks-databasen från en lokal instans av SQL Server till en instans av Azure SQL Managed Instance med hjälp av Azure Data Studio och Database Migration Service. I den här självstudien används offlinemigreringsläget, som tar hänsyn till en acceptabel stilleståndstid under migreringsprocessen.

I den här självstudien lär du dig att:

  • Öppna guiden Migrera till Azure SQL i Azure Data Studio
  • Köra en utvärdering av dina SQL Server-källdatabaser
  • Samla in prestandadata från sql server-källinstansen
  • Få en rekommendation om Azure SQL Managed Instance SKU som fungerar bäst för din arbetsbelastning
  • Ange information om din SQL Server-källinstans, säkerhetskopieringsplats och målinstans av Azure SQL Managed Instance
  • Skapa en instans av Azure Database Migration Service
  • Starta migreringen och övervaka förloppet till slutförande

Dricks

I Azure Database Migration Service kan du migrera dina databaser offline eller när de är online. Vid en offlinemigrering startar programmets stilleståndstid när migreringen startar. Om du vill begränsa stilleståndstiden till den tid det tar att skära ned till den nya miljön efter migreringen använder du en onlinemigrering . Vi rekommenderar att du testar en offlinemigrering för att avgöra om stilleståndstiden är acceptabel. Om den förväntade stilleståndstiden inte är acceptabel utför du en onlinemigrering.

I den här självstudien beskrivs en offlinemigrering från SQL Server till Azure SQL Managed Instance. En onlinemigrering finns i Migrera SQL Server till Azure SQL Managed Instance online i Azure Data Studio.

Förutsättningar

Innan du börjar självstudien:

  • Ladda ned och installera Azure Data Studio.

  • Installera Azure SQL Migration-tillägget från Azure Data Studio Marketplace.

  • Ha ett Azure-konto som har tilldelats någon av följande inbyggda roller:

    • Deltagare för målinstansen av Azure SQL Managed Instance och för lagringskontot där du laddar upp dina databassäkerhetskopieringsfiler från en SMB-nätverksresurs (Server Message Block)
    • Läsarroll för De Azure-resursgrupper som innehåller målinstansen för Azure SQL Managed Instance eller ditt Azure Storage-konto
    • Rollen Ägare eller deltagare för Azure-prenumerationen (krävs om du skapar en ny Database Migration Service-instans)

    Som ett alternativ till att använda någon av dessa inbyggda roller kan du tilldela en anpassad roll.

    Viktigt!

    Ett Azure-konto krävs endast när du konfigurerar migreringsstegen. Ett Azure-konto krävs inte för utvärderingen eller för att visa Azure-rekommendationer i migreringsguiden i Azure Data Studio.

  • Skapa en målinstans av Azure SQL Managed Instance.

  • Kontrollera att de inloggningar som du använder för att ansluta SQL Server-källinstansen är medlemmar i SYSADMIN-serverrollen eller har behörighet för KONTROLLSERVER.

  • Ange en SMB-nätverksresurs, en Azure Storage-kontofilresurs eller azure storage-kontoblobcontainer som innehåller dina fullständiga databassäkerhetskopieringsfiler och efterföljande säkerhetskopieringsfiler för transaktionsloggar. Database Migration Service använder säkerhetskopieringsplatsen under databasmigreringen.

    Viktigt!

    • Azure SQL Migration-tillägget för Azure Data Studio tar inte databassäkerhetskopior eller initierar inga databassäkerhetskopior åt dig. I stället använder tjänsten befintliga databassäkerhetskopieringsfiler för migreringen.
    • Om databassäkerhetskopiorna finns i en SMB-nätverksresurs skapar du ett Azure-lagringskonto som Database Migration Service kan använda för att ladda upp säkerhetskopierade databasfiler till och migrera databaser. Se till att du skapar Azure Storage-kontot i samma region där du skapar din instans av Database Migration Service.
    • Du kan skriva varje säkerhetskopia till antingen en separat säkerhetskopia eller till flera säkerhetskopierade filer. Det går inte att lägga till flera säkerhetskopior, till exempel fullständiga och transaktionsloggar i ett enda säkerhetskopieringsmedium.
    • Du kan tillhandahålla komprimerade säkerhetskopior för att minska risken för potentiella problem med att migrera stora säkerhetskopior.
  • Kontrollera att tjänstkontot som kör SQL Server-källinstansen har läs- och skrivbehörighet för SMB-nätverksresursen som innehåller säkerhetskopior av databaser.

  • Om du migrerar en databas som skyddas av transparent datakryptering (TDE) måste certifikatet från SQL Server-källinstansen migreras till målhanterad instans innan du återställer databasen. Mer information om hur du migrerar TDE-aktiverade databaser finns i Självstudie: Migrera TDE-aktiverade databaser (förhandsversion) till Azure SQL i Azure Data Studio.

    Dricks

    Om databasen innehåller känsliga data som skyddas av Always Encrypted migrerar migreringsprocessen automatiskt dina Always Encrypted-nycklar till din hanterade målinstans.

  • Om dina databassäkerhetskopior finns på en nätverksfilresurs anger du en dator där du kan installera en lokalt installerad integrationskörning för att komma åt och migrera säkerhetskopior av databaser. Migreringsguiden ger dig nedladdningslänken och autentiseringsnycklarna för att ladda ned och installera din lokalt installerad integrationskörning.

    Inför migreringen kontrollerar du att den dator där du installerar den lokalt installerade integrationskörningen har följande regler för utgående brandvägg och domännamn aktiverade:

    Domännamn Utgående port Description
    Offentligt moln: {datafactory}.{region}.datafactory.azure.net
    eller *.frontend.clouddatahub.net

    Azure Government: {datafactory}.{region}.datafactory.azure.us

    Microsoft Azure drivs av 21Vianet: {datafactory}.{region}.datafactory.azure.cn
    443 Krävs av den lokalt installerade integrationskörningen för att ansluta till Database Migration Service.

    För en nyskapad datafabrik i ett offentligt moln letar du upp det fullständigt kvalificerade domännamnet (FQDN) från din lokala integrationskörningsnyckel i formatet {datafactory}.{region}.datafactory.azure.net.

    Om du inte ser FQDN i din lokala integrationsnyckel för en befintlig datafabrik använder *.frontend.clouddatahub.net du i stället.
    download.microsoft.com 443 Krävs av den lokalt installerade integrationskörningen för nedladdning av uppdateringarna. Om du har inaktiverat autouppdate kan du hoppa över att konfigurera den här domänen.
    *.core.windows.net 443 Används av den lokalt installerade integrationskörningen som ansluter till Azure Storage-kontot för att ladda upp databassäkerhetskopior från din nätverksresurs

    Dricks

    Om dina databassäkerhetskopieringsfiler redan finns i ett Azure Storage-konto krävs inte en lokalt installerad integrationskörning under migreringsprocessen.

  • Om du använder en lokalt installerad integrationskörning kontrollerar du att datorn där körningen är installerad kan ansluta till SQL Server-källinstansen och nätverksfilresursen där säkerhetskopieringsfiler finns.

  • Aktivera utgående port 445 för att tillåta åtkomst till nätverksfilresursen. Mer information finns i rekommendationer för att använda en lokalt installerad integrationskörning.

  • Om du använder Database Migration Service för första gången kontrollerar du att resursprovidern Microsoft.DataMigration är registrerad i din prenumeration. Du kan utföra stegen för att registrera resursprovidern.

Öppna guiden Migrera till Azure SQL i Azure Data Studio

Så här öppnar du guiden Migrera till Azure SQL:

  1. I Azure Data Studio går du till Anslut ions. Välj och anslut till din lokala instans av SQL Server. Du kan också ansluta till SQL Server på en virtuell Azure-dator.

  2. Högerklicka på serveranslutningen och välj Hantera.

  3. Välj Azure SQL-migrering under Allmänt på servermenyn.

  4. I instrumentpanelen för Azure SQL-migrering väljer du Migrera till Azure SQL för att öppna migreringsguiden.

    Launch Migrate to Azure SQL wizard

  5. På den första sidan i guiden startar du en ny session eller återupptar en tidigare sparad session.

Kör en databasutvärdering, samla in prestandadata och få Azure-rekommendationer

  1. I Steg 1: Databaser för utvärdering i guiden Migrera till Azure SQL väljer du de databaser som du vill utvärdera. Välj sedan Nästa.

  2. I steg 2: Utvärderingsresultat och rekommendationer utför du följande steg:

    1. I Välj ditt Azure SQL-mål väljer du Azure SQL Managed Instance.

    Assessment confirmation

  3. Välj Visa/välj för att visa utvärderingsresultatet.

  4. I utvärderingsresultaten väljer du databasen och granskar sedan utvärderingsrapporten för att se till att inga problem hittades.

    1. Välj Hämta Azure-rekommendation för att öppna fönstret rekommendationer.

    2. Välj Samla in prestandadata nu. Välj en mapp på den lokala datorn för att lagra prestandaloggarna och välj sedan Start.

      Azure Data Studio samlar in prestandadata tills du antingen stoppar datainsamlingen eller stänger Azure Data Studio.

      Efter 10 minuter anger Azure Data Studio att en rekommendation är tillgänglig för Azure SQL Managed Instance. När den första rekommendationen har genererats kan du välja Starta om datainsamling för att fortsätta datainsamlingsprocessen och förfina SKU-rekommendationen. En utökad utvärdering är särskilt användbar om användningsmönstren varierar över tid.

    3. I det valda azure SQL Managed Instance-målet väljer du Visa information för att öppna den detaljerade SKU-rekommendationsrapporten:

    4. Granska rekommendationen i Granska Azure SQL Managed Instance-Rekommendationer. Om du vill spara en kopia av rekommendationen markerar du kryssrutan Spara rekommendationsrapport .

  5. Välj Stäng för att stänga rekommendationsfönstret.

  6. Välj Nästa för att fortsätta databasmigreringen i guiden.

Konfigurera migreringsinställningar

  1. I Steg 3: Azure SQL-målet i guiden Migrera till Azure SQL väljer du ditt Azure-konto, Azure-prenumeration, Azure-region eller -plats och den resursgrupp som innehåller målinstansen för Azure SQL Managed Instance. Välj sedan Nästa.

  2. I Steg 4: Migreringsläge väljer du Offlinemigrering och sedan Nästa.

    Kommentar

    I offlinemigreringsläge bör SQL Server-källdatabasen inte användas för skrivaktivitet medan databassäkerhetskopior återställs på en målinstans av Azure SQL Managed Instance. Programavbrott måste beaktas tills migreringen är klar.

  3. I Steg 5: Konfiguration av datakälla väljer du platsen för dina databassäkerhetskopior. Dina databassäkerhetskopior kan finnas antingen på en lokal nätverksresurs eller i en Azure Storage-blobcontainer.

  • För säkerhetskopior som finns på en nätverksresurs anger eller väljer du följande information:

    Namn Beskrivning
    Källautentiseringsuppgifter – användarnamn Autentiseringsuppgifterna (Windows- och SQL-autentisering) för att ansluta till SQL Server-källinstansen och verifiera säkerhetskopieringsfilerna.
    Källautentiseringsuppgifter – lösenord Autentiseringsuppgifterna (Windows- och SQL-autentisering) för att ansluta till SQL Server-källinstansen och verifiera säkerhetskopieringsfilerna.
    Nätverksresursplats som innehåller säkerhetskopior Platsen för nätverksresursen som innehåller de fullständiga filerna och säkerhetskopieringsfilerna för transaktionsloggen. Ogiltiga filer eller säkerhetskopieringsfiler i nätverksresursen som inte tillhör den giltiga säkerhetskopieringsuppsättningen ignoreras automatiskt under migreringsprocessen.
    Windows-användarkonto med läsåtkomst till nätverksresursplatsen Windows-autentiseringsuppgifterna (användarnamnet) som har läsbehörighet till nätverksresursen för att hämta säkerhetskopieringsfilerna.
    Lösenord Windows-autentiseringsuppgifterna (lösenord) som har läsbehörighet till nätverksresursen för att hämta säkerhetskopieringsfilerna.
    Måldatabasens namn Du kan ändra måldatabasnamnet under migreringsprocessen.
    Information om lagringskonto Resursgruppen och lagringskontot där säkerhetskopieringsfiler laddas upp. Du behöver inte skapa en container. Database Migration Service skapar automatiskt en blobcontainer i det angivna lagringskontot under uppladdningsprocessen.
  • För säkerhetskopior som lagras i en Azure Storage-blobcontainer anger eller väljer du följande information:

    Namn Beskrivning
    Måldatabasens namn Du kan ändra måldatabasnamnet under migreringsprocessen.
    Information om lagringskonto Resursgruppen, lagringskontot och containern där säkerhetskopieringsfiler finns.
    Senaste säkerhetskopieringsfil Filnamnet för den senaste säkerhetskopian av databasen som du migrerar.

    Viktigt!

    Om funktionen för loopback-kontroll är aktiverad och SQL Server-källinstansen och filresursen finns på samma dator kan källan inte komma åt filresursen med hjälp av ett FQDN. Åtgärda problemet genom att inaktivera funktionen för loopback-kontroll.

  • Azure SQL-migreringstillägget för Azure Data Studio kräver inte längre specifika konfigurationer i nätverksinställningarna för ditt Azure Storage-konto för att migrera dina SQL Server-databaser till Azure. Beroende på din plats för säkerhetskopiering av databasen och önskade nätverksinställningar för lagringskontot krävs dock några steg för att säkerställa att dina resurser kan komma åt Azure Storage-kontot. Se följande tabell för de olika migreringsscenarierna och nätverkskonfigurationerna:

    Scenario SMB-nätverksresurs Azure Storage-kontocontainer
    Aktiverad från alla nätverk Inga extra steg Inga extra steg
    Aktiverad från valda virtuella nätverk och IP-adresser Se 1a Se 2a
    Aktiverad från valda virtuella nätverk och IP-adresser + privat slutpunkt Se 1b Se 2b

    1a – Nätverkskonfiguration för Azure Blob Storage

    Om du har din SHIR (Self-Hosted Integration Runtime) installerad på en virtuell Azure-dator läser du avsnitt 1b – Nätverkskonfiguration för Azure Blob Storage. Om du har din lokalt installerad integrationskörning (SHIR) installerad i ditt lokala nätverk måste du lägga till klient-IP-adressen för värddatorn i ditt Azure Storage-konto så här:

    Screenshot that shows the storage account network details

    Om du vill tillämpa den här specifika konfigurationen ansluter du till Azure-portalen från SHIR-datorn, öppnar Azure Storage-kontokonfigurationen, väljer Nätverk och markerar sedan kryssrutan Lägg till klientens IP-adress . Välj Spara för att göra ändringen beständiga. Se avsnitt 2a – Nätverkskonfiguration för Azure Blob Storage (privat slutpunkt) för de återstående stegen.

    1b – Nätverkskonfiguration för Azure Blob Storage

    Om din SHIR finns på en virtuell Azure-dator måste du lägga till det virtuella nätverket för den virtuella datorn till Azure Storage-kontot eftersom den virtuella datorn har en icke-offentlig IP-adress som inte kan läggas till i avsnittet IP-adressintervall.

    Screenshot that shows the storage account network firewall configuration

    Om du vill tillämpa den här specifika konfigurationen letar du reda på ditt Azure Storage-konto, från panelen Datalagring väljer du Nätverk och markerar sedan kryssrutan Lägg till befintligt virtuellt nätverk . En ny panel öppnas, väljer prenumerationen, det virtuella nätverket och undernätet för den virtuella Azure-dator som är värd för Integration Runtime. Den här informationen finns på översiktssidan för den virtuella Azure-datorn. I undernätet kan det stå Tjänstslutpunkt som krävs i så fall och välj Aktivera. Spara uppdateringarna när allt är klart. Se avsnitt 2a – Azure Blob Storage-nätverkskonfiguration (privat slutpunkt)a för de återstående nödvändiga stegen.

    2a – Nätverkskonfiguration för Azure Blob Storage (privat slutpunkt)

    Om dina säkerhetskopior placeras direkt i en Azure Storage-container är alla ovanstående steg onödiga eftersom det inte finns någon integrationskörning som kommunicerar med Azure Storage-kontot. Vi måste dock fortfarande se till att SQL Server-målinstansen kan kommunicera med Azure Storage-kontot för att återställa säkerhetskopiorna från containern. Om du vill tillämpa den här specifika konfigurationen följer du anvisningarna i avsnitt 1b – Nätverkskonfiguration för Azure Blob Storage och anger mål-SQL-instansens virtuella nätverk när du fyller i popup-fönstret "Lägg till befintligt virtuellt nätverk".

    2b – Nätverkskonfiguration för Azure Blob Storage (privat slutpunkt)

    Om du har konfigurerat en privat slutpunkt för ditt Azure Storage-konto följer du stegen som beskrivs i avsnitt 2a – Nätverkskonfiguration för Azure Blob Storage (privat slutpunkt). Du måste dock välja undernätet för den privata slutpunkten, inte bara SQL Server-målundernätet. Kontrollera att den privata slutpunkten finns i samma virtuella nätverk som SQL Server-målinstansen. Om den inte är det skapar du en annan privat slutpunkt med hjälp av processen i avsnittet Azure Storage-kontokonfiguration.

Skapa en Database Migration Service-instans

I steg 6: Azure Database Migration Service i guiden Migrera till Azure SQL skapar du en ny instans av Azure Database Migration Service eller återanvänder en befintlig instans som du skapade tidigare.

Kommentar

Om du tidigare har skapat en Database Migration Service-instans med hjälp av Azure-portalen kan du inte återanvända instansen i migreringsguiden i Azure Data Studio. Du kan bara återanvända en instans om du har skapat instansen med hjälp av Azure Data Studio.

Använda en befintlig instans av Database Migration Service

Så här använder du en befintlig instans av Database Migration Service:

  1. I Resursgrupp väljer du den resursgrupp som innehåller en befintlig instans av Database Migration Service.

  2. I Azure Database Migration Service väljer du en befintlig instans av Database Migration Service som finns i den valda resursgruppen.

  3. Välj Nästa.

Skapa en ny instans av Database Migration Service

Så här skapar du en ny instans av Database Migration Service:

  1. I Resursgrupp skapar du en ny resursgrupp som ska innehålla en ny instans av Database Migration Service.

  2. Under Azure Database Migration Service väljer du Skapa ny.

  3. I Skapa Azure Database Migration Service anger du ett namn för din Database Migration Service-instans och väljer sedan Skapa.

  4. Under Konfigurera integrationskörning utför du följande steg:

    1. Välj länken Ladda ned och installera integration Runtime för att öppna nedladdningslänken i en webbläsare. Ladda ned integreringskörningen och installera den sedan på en dator som uppfyller kraven för att ansluta till SQL Server-källinstansen.

      När installationen är klar öppnas Microsoft Integration Runtime Configuration Manager automatiskt för att påbörja registreringsprocessen.

    2. I tabellen Autentiseringsnyckel kopierar du en av de autentiseringsnycklar som finns i guiden och klistrar in den i Azure Data Studio. Om autentiseringsnyckeln är giltig visas en grön kontrollikon i Integration Runtime Configuration Manager. En grön kontroll anger att du kan fortsätta att registrera dig.

      När du har registrerat den lokalt installerade integrationskörningen stänger du Microsoft Integration Runtime Configuration Manager.

      Kommentar

      Mer information om hur du använder den lokalt installerade integrationskörningen finns i Skapa och konfigurera en lokalt installerad integrationskörning.

  5. I Skapa Azure Database Migration Service i Azure Data Studio väljer du Testanslutning för att verifiera att den nyligen skapade Database Migration Service-instansen är ansluten till den nyligen registrerade integrationskörningen med egen värd.

    Test connection integration runtime

  6. Gå tillbaka till migreringsguiden i Azure Data Studio.

Starta databasmigreringen

I Steg 7: Sammanfattning i guiden Migrera till Azure SQL granskar du konfigurationen du skapade och väljer sedan Starta migrering för att starta databasmigreringen.

Övervaka databasmigreringen

  1. I Azure Data Studio går du till servermenyn under Allmänt och väljer Azure SQL Migration för att gå till instrumentpanelen för dina Azure SQL-migreringar.

    Under Databasmigreringsstatus kan du spåra migreringar som pågår, slutförts och misslyckats (om några) eller så kan du visa alla databasmigreringar.

    monitor migration dashboard

  2. Välj Databasmigreringar som pågår för att visa aktiva migreringar.

    Om du vill ha mer information om en specifik migrering väljer du databasnamnet.

    Fönstret migreringsinformation visar säkerhetskopieringsfilerna och deras motsvarande status:

    Status Description
    Infört Säkerhetskopieringsfilen kom till platsen för källsäkerhetskopian och verifierades.
    Uppladdning Integreringskörningen laddar upp säkerhetskopieringsfilen till Azure Storage-kontot.
    Uppladdad Säkerhetskopieringsfilen laddades upp till Azure Storage-kontot.
    Återställa Tjänsten återställer säkerhetskopieringsfilen till Azure SQL Managed Instance.
    Återställd Säkerhetskopieringsfilen har återställts i Azure SQL Managed Instance.
    Avbruten Migreringsprocessen avbröts.
    Ignorerad Säkerhetskopieringsfilen ignorerades eftersom den inte tillhör en giltig databassäkerhetskedja.

När alla databassäkerhetskopior har återställts på instansen av Azure SQL Managed Instance initieras en automatisk snabbmigrering av Database Migration Service för att säkerställa att den migrerade databasen är redo att användas. Migreringsstatusen ändras från Pågår till Lyckades.

Viktigt!

Efter migreringen kan tillgängligheten för SQL Managed Instance med Affärskritisk tjänstnivå ta betydligt längre tid än nivån Generell användning eftersom tre sekundära repliker måste seedas för en AlwaysOn-hög tillgänglighetsgrupp. Varaktigheten för den här åtgärden beror på datastorleken. Mer information finns i Varaktighet för hanteringsåtgärder.

Begränsningar

Migrering till Azure SQL Managed Instance med hjälp av Azure SQL-tillägget för Azure Data Studio har följande begränsningar:

  • Om du migrerar en enskild databas måste databassäkerhetskopieringarna placeras i en flatfilstruktur i en databasmapp (inklusive containerns rotmapp). Mapparna kan inte kapslas, eftersom det inte stöds.
  • Om du migrerar flera databaser med samma Azure Blob Storage-container måste du placera säkerhetskopierade filer för olika databaser i separata mappar i containern.
  • Det finns inte stöd för att skriva över befintliga databaser med hjälp av DMS i din mål-Azure SQL Managed Instance.
  • DMS stöder inte konfiguration av hög tillgänglighet och haveriberedskap på målet för att matcha källtopologin.
  • Följande serverobjekt stöds inte:
    • SQL Server Agent-jobb
    • Autentiseringsuppgifter
    • SSIS-paket
    • Servergranskning
  • Du kan inte använda en befintlig lokalt installerad integrationskörning som skapats från Azure Data Factory för databasmigreringar med DMS. Till en början bör den lokalt installerade integrationskörningen skapas med hjälp av Azure SQL-migreringstillägget i Azure Data Studio och kan återanvändas för ytterligare databasmigreringar.
  • Ett enskilt LRS-jobb (skapat av DMS) kan köras i högst 30 dagar. När den här perioden går ut avbryts jobbet automatiskt, vilket innebär att måldatabasen tas bort automatiskt.
  • Om du fick följande fel: Memory-optimized filegroup must be empty in order to be restored on General Purpose tier of SQL Database Managed Instance. Det här problemet är avsiktligt, Hekaton (även kallat SQL Server Minnesintern OLTP) stöds inte på nivån Generell användning i Azure SQL Managed Instance. För att fortsätta migreringen är ett sätt att uppgradera till Affärskritisk nivå, som stöder Hekaton. Ett annat sätt är att se till att källdatabasen inte använder den medan Azure SQL Managed Instance är Generell användning.

Nästa steg