Dela via


Importera eller exportera en Azure SQL Database utan att tillåta Azure-tjänster att komma åt servern

gäller för:Azure SQL Database

Den här artikeln visar hur du importerar eller exporterar en Azure SQL Database när Tillåt Azure-tjänster och resurser att komma åt den här servern är inställt på AV. Instruktionsartikeln använder en virtuell Azure-dator för att köra SqlPackage för att utföra import- eller exportåtgärden.

Inställningen Tillåt Att Azure-tjänster och resurser får åtkomst till den här serverinställningen visas i Azure-portalen under menyn Säkerhet i resursmenyn Nätverk i avsnittet Undantag . Mer information om den här inställningen finns i Nätverksåtkomstkontroller för Azure SQL Database och Azure Synapse Analytics.

Logga in på Azure-portalen

Logga in på Azure-portalen.

Skapa den virtuella Azure-datorn

Skapa en virtuell Azure-dator genom att välja knappen Distribuera till Azure .

Med den här mallen kan du distribuera en enkel virtuell Windows-dator med några olika alternativ för Windows-versionen med den senaste korrigerade versionen. Detta distribuerar en virtuell A2-storleksdator på resursgruppens plats och returnerar det fullständigt kvalificerade domännamnet för den virtuella datorn.

Bild som visar en knapp med etiketten

Mer information, inklusive en Azure-snabbstartsmall, finns i Distribuera en enkel virtuell Windows-dator.

Ansluta till den virtuella datorn

Följande steg visar hur du ansluter till den virtuella datorn med hjälp av en fjärrskrivbordsanslutning.

  1. När distributionen är klar går du till resursen för den virtuella datorn.

  2. Välj Anslut.

    Ett filformulär för Fjärrskrivbordsprotokoll (.rdp-fil) visas med den offentliga IP-adressen och portnumret för den virtuella datorn.

    Skärmbild av Azure-portalen, anslut till virtuell dator med nedladdningen rdp markerad.

    Anmärkning

    Det finns flera sätt att ansluta till en virtuell dator. I den här självstudien används RDP (Remote Desktop Protocol) för att ansluta till den virtuella datorn, men en nyare lösning för att använda Azure Bastion är ett alternativ som fungerar bra om du har distribuerat Bastion i din miljö. Du kan också använda SSH för att ansluta till den virtuella datorn.

  3. Välj Ladda ned RDP-fil.

  4. Stäng formuläret Anslut till virtuell dator .

  5. Om du vill ansluta till den virtuella datorn öppnar du den nedladdade RDP-filen.

  6. När du uppmanas till det väljer du Anslut.

  7. Ange det användarnamn och lösenord som du angav när du skapade den virtuella datorn och välj sedan OK.

  8. Du kan få en certifikatvarning under inloggningsprocessen. Välj Ja eller Fortsätt för att fortsätta med anslutningen.

Installera SqlPackage

Ladda ned och installera den senaste versionen av SqlPackage. Mer information finns i SqlPackage.

Skapa en brandväggsregel för att ge den virtuella datorn åtkomst till databasen

Lägg först till den virtuella datorns offentliga IP-adress i serverns brandvägg. Följande steg skapar en IP-brandväggsregel på servernivå för den virtuella datorns offentliga IP-adress och aktiverar anslutning från den virtuella datorn.

  1. Välj SQL-databaser på den vänstra menyn och välj sedan din databas på sidan SQL-databaser . Översiktssidan för databasen öppnas och visar det fullständigt kvalificerade servernamnet (till exempel: sql-svr.database.windows.net) och innehåller alternativ för ytterligare konfiguration.

    Skärmbild av azure-portalen, översiktssidan för databasen, med servernamnet markerat.

  2. Kopiera det fullständiga servernamnet som ska användas när du ansluter till servern och dess databaser.

  3. Välj Ange serverbrandvägg i verktygsfältet.

  4. På sidan Nätverk går du till fliken Offentlig åtkomst i avsnittet Brandväggsinställningar och väljer Lägg till din klient-IPv4-adress. Detta lägger till den virtuella datorns offentliga IP-adress till en ny IP-brandväggsregel på servernivå. En IP-brandväggsregel på servernivå kan öppna port 1433 för en enskild IP-adress eller ett intervall med IP-adresser.

  5. Välj Spara. En IP-brandväggsregel på servernivå skapas för den virtuella datorns offentliga IP-adress som öppnar port 1433 på servern.

Exportera en databas med hjälp av SqlPackage

Information om hur du exporterar en Azure SQL Database med hjälp av kommandoradsverktyget SqlPackage finns i Exportera parametrar och egenskaper. SqlPackage-verktyget levereras med de senaste versionerna av SQL Server Management Studio och SQL Server Data Tools, eller så kan du ladda ned den senaste versionen av SqlPackage.

Mer information och steg för att skapa en BACPAC-fil finns i Exportera till en BACPAC-fil.

Vi rekommenderar att du använder SqlPackage-verktyget för skalning och prestanda i de flesta produktionsmiljöer. En SQL Server Customer Advisory Team-blogg om migrering med BACPAC-filer finns i Migrera från SQL Server till Azure SQL Database med hjälp av BACPAC Files.

Det här exemplet visar hur du exporterar en databas med SqlPackage med Active Directory Universal Authentication. Ersätt med värden som är specifika för din miljö.

SqlPackage /a:Export /tf:testExport.bacpac /scs:"Data Source=<servername>.database.windows.net;Initial Catalog=MyDB;" /ua:True /tid:"apptest.onmicrosoft.com"

Importera en databas med hjälp av SqlPackage

Information om hur du importerar en SQL Server-databas med hjälp av kommandoradsverktyget SqlPackage finns i importera parametrar och egenskaper. SqlPackage har de senaste SQL Server Management Studio - och SQL Server Data Tools. Du kan också ladda ned den senaste versionen av SqlPackage.

För skalning och prestanda rekommenderar vi att du använder SqlPackage i de flesta produktionsmiljöer i stället för att använda Azure-portalen. För en SQL Server Customer Advisory Team-blogg om att migrera med BACPAC-filer, se att migrera från SQL Server till Azure SQL-databas med hjälp av BACPAC-filer.

Följande SqlPackage-kommando importerar AdventureWorks2022 databasen från lokal lagring till en Azure SQL Database. Den skapar en ny databas med namnet myMigratedDatabase med en Premium-tjänstnivå och ett P6-tjänstmål . Ändra dessa värden efter behov för din miljö.

SqlPackage /a:import /tcs:"Data Source=<serverName>.database.windows.net;Initial Catalog=myMigratedDatabase>;User Id=<userId>;Password=<password>" /sf:AdventureWorks2022.bacpac /p:DatabaseEdition=Premium /p:DatabaseServiceObjective=P6

Viktigt!

Om du vill ansluta till Azure SQL Database bakom en företagsbrandvägg måste brandväggen ha port 1433 öppen.

Det här exemplet visar hur du importerar en databas med SqlPackage med Active Directory Universal Authentication.

SqlPackage /a:Import /sf:testExport.bacpac /tdn:NewDacFX /tsn:apptestserver.database.windows.net /ua:True /tid:"apptest.onmicrosoft.com"

Prestandaöverväganden

Exporthastigheterna varierar på grund av många faktorer (till exempel dataform) så det är omöjligt att förutsäga vilken hastighet som ska förväntas. SqlPackage kan ta lång tid, särskilt för stora databaser.

Prova följande strategier för bästa prestanda:

  1. Kontrollera att ingen annan arbetsbelastning körs på databasen. Skapa en kopia före export kan vara den bästa lösningen för att säkerställa att inga andra arbetsbelastningar körs.
  2. Öka mål för databastjänstens nivå (SLO) för att bättre hantera exportens arbetsbelastning (främst läsning av I/O). Om databasen för närvarande är GP_Gen5_4 kanske en affärskritisk nivå skulle hjälpa till med läsarbetsbelastningen.
  3. Kontrollera att det finns grupperade index, särskilt för stora tabeller.
  4. Virtuella datorer (VM) bör finnas i samma region som databasen för att undvika nätverksbegränsningar.
  5. Virtuella datorer bör ha SSD med tillräcklig storlek för att generera temporära artefakter innan de laddas upp till bloblagring.
  6. Virtuella datorer bör ha tillräcklig kärn- och minneskonfiguration för den specifika databasen.

Lagra den importerade eller exporterade BACPAC-fil.

BACPAC-filen kan lagras i Azure Blobs eller Azure Files.

Använd Azure Files för att uppnå bästa prestanda. SqlPackage fungerar med filsystemet så att det kan komma åt Azure Files direkt.

För att minska kostnaderna använder du Azure Blobs, som kostar mindre än en Premium Azure-filresurs. Du måste dock kopiera BACPAC-filen mellan bloben och det lokala filsystemet före import- eller exportåtgärden. Därför tar processen längre tid.

Information om hur du laddar upp eller laddar ned BACPAC-filer finns i Överföra data med AzCopy och Blob Storage och Överföra data med AzCopy och fillagring.

Beroende på din miljö kan du behöva konfigurera Azure Storage-brandväggar och virtuella nätverk.