Een Azure SQL Database importeren of exporteren met behulp van een private link
Van toepassing op: Azure SQL Database
Als u Import of Export uitvoert via Azure PowerShell of Azure Portal, moet u Toegang tot Azure Services naar AAN instellen, anders mislukt de import- of exportbewerking met een fout. Vaak willen gebruikers importeren of exporteren met behulp van een privé-eindpunt zonder dat ze toegang nodig hebben tot alle Azure-services. In dit artikel wordt uitgelegd hoe u een Azure SQL Database importeert of exporteert met behulp van Private Link en de optie Toegang tot Azure Services toestaan op UIT op de logische Azure SQL-server laat staan.
Notitie
Importeren/exporteren met behulp van private link voor Azure SQL Database is momenteel in preview.
Wat is private link importeren/exporteren?
De privékoppeling voor importeren/exporteren van de database is een door de service beheerd privé-eindpunt dat is gemaakt door Microsoft en dat uitsluitend wordt gebruikt voor alle communicatie door het import-/exportproces van de database, de Azure SQL database en gerelateerde Azure Storage-services. Een privé-eindpunt met beheerde service is een privé-IP-adres binnen een specifiek virtueel netwerk en subnet. Het privé-eindpunt moet handmatig worden goedgekeurd door de gebruiker in Azure Portal voor zowel de server als de opslag.
Import-Export Private Link configureren met behulp van De Azure-portal
Private Link importeren/exporteren kan worden geconfigureerd via Azure Portal, PowerShell of rest API.
1. Privékoppeling importeren/exporteren configureren met behulp van Azure Portal
Privékoppeling importeren maken
- Ga naar de overzichtspagina van de logische Azure SQL-server waarin u de database wilt importeren. Selecteer Database importeren op de werkbalk.
- Schakel op de pagina Database importeren het selectievakje Private Link gebruiken in.
- Voer het opslagaccount, verificatiereferenties, databasegegevens in en selecteer OK.
Privékoppeling exporteren maken
- Ga naar de overzichtspagina van de Azure SQL-database die u wilt exporteren. Selecteer Exporteren in de werkbalk.
- Schakel op de pagina Database exporteren het selectievakje Private Link gebruiken in.
- Voer het opslagaccount, verificatiereferenties, databasegegevens in en selecteer OK.
2. Privé-eindpunten goedkeuren
Privé-eindpunten goedkeuren in Het Private Link-centrum
- Ga naar Private Link Center in Azure Portal. Zoek in het zoekvak van Azure naar Private Link.
- Navigeer naar de pagina Privé-eindpunten van het Private Link-centrum.
- Keur de privé-eindpunten goed die u hebt gemaakt met behulp van de Import/Export-service.
Privé-eindpuntverbinding goedkeuren in Azure SQL Database
- Ga naar de logische Azure SQL-server die als host fungeert voor de database.
- Ga naar de pagina Netwerken onder Beveiliging
- Selecteer het tabblad Persoonlijke toegang .
- Selecteer het privé-eindpunt dat u wilt goedkeuren.
- Selecteer Goedkeuren om de verbinding goed te keuren.
Privé-eindpuntverbinding goedkeuren in Azure Storage
- Ga naar het opslagaccount dat als host fungeert voor de blobcontainer waarin het BACPAC-bestand bestaat.
- Open de pagina Privé-eindpuntverbindingen in het menu Beveiliging .
- Selecteer het privé-eindpunt voor de import-/exportservice.
- Selecteer Goedkeuren om de verbinding goed te keuren.
3. Status van import/export controleren
- Nadat de privé-eindpunten zijn goedgekeurd, worden zowel in de Azure SQL-server als het Azure Storage-account de databaseimport- of exporttaak gestart. Tot die tijd zijn de taken in de wachtstand.
- U kunt de status van databaseimport- of exporttaken controleren op de pagina Import/Export History onder Gegevensbeheer sectie op de pagina Azure SQL Server.
Privékoppeling voor importeren/exporteren configureren met PowerShell
Een database importeren met behulp van een privékoppeling in PowerShell
Gebruik de New-AzSqlDatabaseImport-cmdlet om een aanvraag voor het importeren van een database naar Azure te verzenden. Afhankelijk van de grootte van de database kan het enige tijd duren voordat de importbewerking is voltooid. Het op DTU gebaseerde inrichtingsmodel ondersteunt de waarden voor geselecteerde databases met een maximale grootte voor elke laag. Bij het importeren van een database moet u een van deze ondersteunde waarden gebruiken.
$importRequest = New-AzSqlDatabaseImport -ResourceGroupName "<resourceGroupName>" `
-ServerName "<serverName>" -DatabaseName "<databaseName>" `
-DatabaseMaxSizeBytes "<databaseSizeInBytes>" -StorageKeyType "StorageAccessKey" `
-StorageKey $(Get-AzStorageAccountKey -ResourceGroupName $resourceGroupName `
-StorageAccountName "<storageAccountName>").Value[0]
-StorageUri "https://myStorageAccount.blob.core.windows.net/importsample/sample.bacpac" `
-Edition "Standard" -ServiceObjectiveName "P6" ` -UseNetworkIsolation $true `
-StorageAccountResourceIdForPrivateLink "/subscriptions/<subscriptionId>/resourcegroups/<resource_group_name>/providers/Microsoft.Storage/storageAccounts/<storage_account_name>" `
-SqlServerResourceIdForPrivateLink "/subscriptions/<subscriptionId>/resourceGroups/<resource_group_name>/providers/Microsoft.Sql/servers/<server_name>" `
-AdministratorLogin "<userID>" `
-AdministratorLoginPassword $(ConvertTo-SecureString -String "<password>" -AsPlainText -Force)
Een database exporteren met behulp van een privékoppeling in PowerShell
Gebruik de cmdlet New-AzSqlDatabaseExport om een exportdatabaseaanvraag in te dienen bij de Azure SQL Database-service. Afhankelijk van de grootte van uw database kan het enige tijd duren voordat de exportbewerking is voltooid.
$importRequest = New-AzSqlDatabaseExport -ResourceGroupName "<resourceGroupName>" `
-ServerName "<serverName>" -DatabaseName "<databaseName>" `
-DatabaseMaxSizeBytes "<databaseSizeInBytes>" -StorageKeyType "StorageAccessKey" `
-StorageKey $(Get-AzStorageAccountKey -ResourceGroupName $resourceGroupName `
-StorageAccountName "<storageAccountName>").Value[0]
-StorageUri "https://myStorageAccount.blob.core.windows.net/importsample/sample.bacpac" `
-Edition "Standard" -ServiceObjectiveName "P6" ` -UseNetworkIsolation $true `
-StorageAccountResourceIdForPrivateLink "/subscriptions/<subscriptionId>/resourcegroups/<resource_group_name>/providers/Microsoft.Storage/storageAccounts/<storage_account_name>" `
-SqlServerResourceIdForPrivateLink "/subscriptions/<subscriptionId>/resourceGroups/<resource_group_name>/providers/Microsoft.Sql/servers/<server_name>" `
-AdministratorLogin "<userID>" `
-AdministratorLoginPassword $(ConvertTo-SecureString -String "<password>" -AsPlainText -Force)
Privékoppeling voor importeren/exporteren maken met rest API
Bestaande API's voor het uitvoeren van import- en exporttaken zijn uitgebreid ter ondersteuning van Private Link. Raadpleeg database-API importeren.
Beperkingen
Momenteel heeft de privékoppeling voor importeren/exporteren de volgende beperkingen:
Als u Private Link wilt gebruiken met Importeren/exporteren, moeten de gebruikersdatabase en de Azure Storage-blobcontainer worden gehost op hetzelfde type Azure Cloud. Bijvoorbeeld, beide in Azure Commercial of beide op Azure Gov. Hosting in cloudtypen wordt niet ondersteund.
Het importeren of exporteren van een database uit Azure SQL Managed Instance met behulp van PowerShell wordt momenteel niet ondersteund.
Private Link importeren/exporteren mag niet worden gebruikt wanneer de gebruikersdatabase of het Azure Storage-account worden beveiligd door resourcevergrendelingen.
Handmatige goedkeuring van de nieuwe privé-eindpuntverbinding is vereist om de exportbewerking te voltooien. Nadat u de export hebt gestart, gaat u naar 'In behandeling zijnde verbindingen' in het Private Link-centrum en keurt u de verbindingen goed. Dit kan enkele minuten duren.
Importeren met Private Link biedt geen ondersteuning voor het opgeven van redundantie van back-upopslag tijdens het maken van een nieuwe database en het maken van de standaard geografisch redundante back-upopslagredundantie. Als tijdelijke oplossing maakt u eerst een lege database met de gewenste redundantie voor back-upopslag met behulp van Azure Portal of PowerShell en importeert u vervolgens het BACPAC-bestand in deze lege database.
Importeren met REST API met private link kan alleen worden voltooid voor een bestaande database omdat de API database-extensies gebruikt. Als tijdelijke oplossing maakt u een lege database met de gewenste naam en roept u vervolgens de IMPORT REST API aan met een privékoppeling.