Delen via


Een Azure SQL Database importeren of exporteren zonder dat Azure-services toegang hebben tot de server

Van toepassing op: Azure SQL Database

In dit artikel leest u hoe u een Azure SQL Database importeert of exporteert wanneer Azure Services toestaan is ingesteld op UIT op de server. De werkstroom maakt gebruik van een virtuele Azure-machine om SqlPackage uit te voeren om de import- of exportbewerking uit te voeren.

Meld u aan bij Azure Portal

Meld u aan bij de Azure-portal.

De virtuele Azure-machine maken

Maak een virtuele Azure-machine door de knop Implementeren in Azure te selecteren.

Met deze sjabloon kunt u een eenvoudige virtuele Windows-machine implementeren met behulp van een aantal verschillende opties voor de Windows-versie, met behulp van de meest recente patchversie. Hiermee wordt een VM met A2-grootte geïmplementeerd op de locatie van de resourcegroep en wordt de volledig gekwalificeerde domeinnaam van de VIRTUELE machine geretourneerd.

Image showing a button labeled

Zie Zeer eenvoudige implementatie van een Virtuele Windows-machine voor meer informatie.

Verbinding maken met de virtuele machine

In de volgende stappen ziet u hoe u verbinding maakt met uw virtuele machine met behulp van een verbinding met een extern bureaublad.

  1. Nadat de implementatie is voltooid, gaat u naar de virtuele machine-resource.

    Screenshot shows a virtual machine Overview page with a Connect button.

  2. Selecteer Verbinding maken.

    Een Remote Desktop Protocol-bestand (RDP-bestand) wordt weergegeven met het openbare IP-adres en het poortnummer voor de virtuele machine.

    Screenshot of Azure portal, connect to VM, with download RDP highlighted.

  3. Selecteer RDP-bestand downloaden.

    Notitie

    U kunt ook SSH gebruiken om verbinding te maken met uw virtuele machine.

  4. Sluit het formulier Verbinding maken met virtuele machine.

  5. Open het gedownloade RDP-bestand om verbinding met de VM te maken.

  6. Selecteer Verbinding maken wanneer hierom wordt gevraagd. Op een Mac hebt u een RDP-client nodig, zoals deze Extern-bureaubladclient uit de Mac App Store.

  7. Voer de gebruikersnaam en het wachtwoord in die u hebt opgegeven bij het maken van de virtuele machine en kies VERVOLGENS OK.

  8. Er wordt mogelijk een certificaatwaarschuwing weergegeven tijdens het aanmelden. Kies Ja of Doorgaan om door te gaan met de verbinding.

SqlPackage installeren

Download en installeer de nieuwste versie van SqlPackage.

Zie SqlPackage voor meer informatie.

Een firewallregel maken om de VM toegang te geven tot de database

Voeg het openbare IP-adres van de virtuele machine toe aan de firewall van de server.

Met de volgende stappen maakt u een IP-firewallregel op serverniveau voor het openbare IP-adres van uw virtuele machine en schakelt u connectiviteit vanuit de virtuele machine in.

  1. Selecteer SQL-databases in het linkermenu en selecteer vervolgens uw database op de pagina SQL-databases . De overzichtspagina voor uw database wordt geopend, met de volledig gekwalificeerde servernaam (zoals servername.database.windows.net) en opties voor verdere configuratie.

  2. Kopieer deze volledig gekwalificeerde servernaam die moet worden gebruikt bij het maken van verbinding met uw server en de bijbehorende databases.

    Screenshot of the Azure portal, database overview page, with the server name highlighted.

  3. Selecteer Serverfirewall instellen op de werkbalk. De pagina Firewallinstellingen voor de server wordt geopend.

    Screenshot of the Azure portal, showing the firewall page, with server-level IP firewall rule highlighted.

  4. Kies Client-IP toevoegen op de werkbalk om het openbare IP-adres van uw virtuele machine toe te voegen aan een nieuwe IP-firewallregel op serverniveau. Een IP-firewallregel op serverniveau kan poort 1433 openen voor een individueel IP-adres of voor een bereik van IP-adressen.

  5. Selecteer Opslaan. Er wordt een IP-firewallregel op serverniveau gemaakt voor het openbare IP-adres van uw virtuele machine dat poort 1433 op de server opent.

  6. Sluit de pagina Firewallinstellingen.

Een database exporteren met SqlPackage

Als u een Azure SQL Database wilt exporteren met behulp van het opdrachtregelprogramma SqlPackage , raadpleegt u Parameters en eigenschappen exporteren. Het sqlPackage-hulpprogramma wordt geleverd met de nieuwste versies van SQL Server Management Studio en SQL Server Data Tools, of u kunt de nieuwste versie van SqlPackage downloaden.

We raden u aan het gebruik van het hulpprogramma SqlPackage te gebruiken voor schaal en prestaties in de meeste productieomgevingen. Raadpleeg dit blogartikel van het SQL Server-klantadviesteam over migratie met behulp van BACPAC-bestanden: Migrating from SQL Server to Azure SQL Database using BACPAC Files (Migreren van SQL Server naar Azure SQL Database met BACPAC-bestanden).

In dit voorbeeld ziet u hoe u een database exporteert met behulp van SqlPackage met universele verificatie van Active Directory. Vervang door waarden die specifiek zijn voor uw omgeving.

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

Een database importeren met SqlPackage

Voor het importeren van een SQL Server-database met behulp van het opdrachtregelprogramma SqlPackage raadpleegt u importparameters en -eigenschappen. SqlPackage heeft de nieuwste SQL Server Management Studio en SQL Server Data Tools. U kunt ook de nieuwste versie van SqlPackage downloaden.

Voor schaalbaarheid en prestaties wordt u aangeraden in de meeste productieomgevingen SqlPackage te gebruiken in plaats van Azure Portal. Ga voor een blogartikel van het SQL Server-klantadviesteam over migratie met behulp van BACPAC-bestanden naar migreren van SQL Server naar Azure SQL Database met BACPAC-bestanden.

Met de volgende SqlPackage-opdracht importeert u de AdventureWorks2022 database van lokale opslag naar een Azure SQL Database. Er wordt een nieuwe database gemaakt die wordt aangeroepen myMigratedDatabase met een Premium-servicelaag en een P6-servicedoelstelling . Wijzig deze waarden in waarden die geschikt zijn voor uw omgeving.

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

Belangrijk

Als u verbinding wilt maken met tAzure SQL Database achter een bedrijfsfirewall, moet poort 1433 zijn geopend voor de firewall.

In dit voorbeeld ziet u hoe u een database importeert met behulp van SqlPackage met Active Directory Universal Authentication.

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

Prestatieoverwegingen

Exportsnelheden variëren vanwege veel factoren (bijvoorbeeld gegevensshape), zodat het onmogelijk is om te voorspellen welke snelheid moet worden verwacht. SqlPackage kan veel tijd in beslag nemen, met name voor grote databases.

Voor de beste prestaties kunt u de volgende strategieën proberen:

  1. Zorg ervoor dat er geen andere workload wordt uitgevoerd op de database. Maak een kopie voordat u exporteert, is mogelijk de beste oplossing om ervoor te zorgen dat er geen andere workloads worden uitgevoerd.
  2. Verhoog de serviceniveaudoelstelling (SLO) van de database om de exportworkload beter af te handelen (voornamelijk lees-I/O). Als de database momenteel is GP_Gen5_4, kan een Bedrijfskritiek laag helpen bij het lezen van de workload.
  3. Geclusterde indexen maken, met name voor grote tabellen.
  4. Virtuele machines (VM's) moeten zich in dezelfde regio bevinden als de database om netwerkbeperkingen te voorkomen.
  5. VM's moeten SSD hebben met voldoende grootte voor het genereren van tijdelijke artefacten voordat ze naar blobopslag worden geüpload.
  6. VM's moeten voldoende kern- en geheugenconfiguratie hebben voor de specifieke database.

Sla de geïmporteerde of geëxporteerde bestanden op. BACPAC-bestand

De. BACPAC-bestand kan worden opgeslagen in Azure Blobs of Azure Files.

Gebruik Azure Files om de beste prestaties te bereiken. SqlPackage werkt met het bestandssysteem, zodat het rechtstreeks toegang heeft tot Azure Files.

Als u de kosten wilt verlagen, gebruikt u Azure Blobs, die minder kosten dan een Premium Azure-bestandsshare. Hiervoor moet u echter de . BACPAC-bestand tussen de blob en het lokale bestandssysteem vóór de import- of exportbewerking. Hierdoor duurt het proces langer.

Uploaden of downloaden. BACPAC-bestanden, zie Gegevens overdragen met AzCopy en Blob Storage, en gegevens overdragen met AzCopy en bestandsopslag.

Afhankelijk van uw omgeving moet u mogelijk Azure Storage-firewalls en virtuele netwerken configureren.

Volgende stappen