Importera eller exportera en Azure SQL Database med hjälp av en privat länk

Gäller för:Azure SQL Database

Om du kör Import eller Export via Azure PowerShell eller Azure-portalen måste du ange Tillåt åtkomst till Azure-tjänster till PÅ, annars misslyckas import- eller exportåtgärden med ett fel. Användare vill ofta utföra import eller export med hjälp av en privat slutpunkt utan att kräva åtkomst till alla Azure-tjänster. Den här artikeln beskriver hur du importerar eller exporterar en Azure SQL Database med Private Link och låter Tillåt åtkomst till Azure-tjänster vara inställt på AV på den logiska Azure SQL-servern.

Kommentar

Import/export med privat länk för Azure SQL Database är för närvarande i förhandsversion.

Privat länk för import/export av databas är en tjänsthanterad privat slutpunkt som skapats av Microsoft och som uteslutande används för all kommunikation av processen för import/export av databasen, Azure SQL-databasen och relaterade Azure Storage-tjänster. En tjänsthanterad privat slutpunkt är en privat IP-adress i ett visst virtuellt nätverk och undernät. Den privata slutpunkten måste godkännas manuellt av användaren i Azure-portalen för både server och lagring.

Diagram of Import Export Private link architecture.

Import/Export Private Link kan konfigureras via Azure-portalen, PowerShell eller med hjälp av REST API.

  1. Gå till översiktssidan för den logiska Azure SQL-server som du vill importera databasen till. Välj Importera databas från verktygsfältet.
  2. På sidan Importera databas markerar du kryssrutan Använd privat länk . Screenshot from the Azure portal that shows how to enable Import Private link.
  3. Ange lagringskontot, autentiseringsuppgifterna, databasinformationen och välj OK.
  1. Gå till översiktssidan för den Azure SQL-databas som du vill exportera. Välj Exportera i verktygsfältet.
  2. På sidan Exportera databas markerar du kryssrutan Använd privat länk . Screenshot from the Azure portal that shows how to enable Export Private Link.
  3. Ange lagringskontot, autentiseringsuppgifterna, databasinformationen och välj OK.

2. Godkänn privata slutpunkter

  1. Gå till Private Link Center i Azure-portalen. I Sökrutan i Azure söker du efter "Private Link".
  2. Gå till sidan Privata slutpunkter i Private Link Center.
  3. Godkänn de privata slutpunkter som du skapade med hjälp av import-/exporttjänsten.

Godkänna privat slutpunktsanslutning i Azure SQL Database

  1. Gå till den logiska Azure SQL-server som är värd för databasen.
  2. Gå till sidan Nätverk under Säkerhet
  3. Välj fliken Privat åtkomst .
  4. Välj den privata slutpunkt som du vill godkänna.
  5. Välj Godkänn för att godkänna anslutningen.

Screenshot from the Azure portal that shows how to approve Azure SQL Database Private Link.

Godkänna privat slutpunktsanslutning i Azure Storage

  1. Gå till lagringskontot som är värd för blobcontainern där .bacpac-filen finns.
  2. Öppna sidan Privata slutpunktsanslutningarmenyn Säkerhet.
  3. Välj den privata slutpunkten för import-/exporttjänsten.
  4. Välj Godkänn för att godkänna anslutningen.

Screenshot from the Azure portal that shows how to approve Azure Storage Private Link in Azure Storage.

3. Kontrollera import-/exportstatus

  1. När de privata slutpunkterna har godkänts, både på Azure SQL-servern och Azure Storage-kontot, startas databasimport- eller exportjobbet. Tills dess kommer jobben att vara pausade.
  2. Du kan kontrollera statusen för databasimport- eller exportjobb på sidan Import-/exporthistorik under Datahantering avsnitt på Azure SQL-serversidan. Screenshot from the Azure portal that shows how to check Import Export Jobs Status.

Använd cmdleten New-AzSqlDatabaseImport för att skicka en importdatabasbegäran till Azure. Beroende på databasens storlek kan det ta lite tid att slutföra importen. Den DTU-baserade etableringsmodellen har stöd för att välja databasens maxstorleksvärden för varje nivå. När du importerar en databas använder du något av dessa värden som stöds.

$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)

Använd cmdleten New-AzSqlDatabaseExport för att skicka en exportdatabasbegäran till Azure SQL Database-tjänsten. Beroende på databasens storlek kan det ta lite tid att slutföra exportåtgärden.

$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)

Befintliga API:er för att utföra import- och exportjobb har förbättrats för att stödja Private Link. Mer information finns i Importera databas-API.

Begränsningar

För närvarande har den privata länken för import/export följande begränsningar:

  • Om du vill använda Private Link med Import/Export måste användardatabasen och Azure Storage-blobcontainern finnas på samma typ av Azure Cloud. Till exempel antingen både i Azure Commercial eller båda på Azure Gov. Värdtjänster för olika molntyper stöds inte.

  • Import eller export av en databas från Azure SQL Managed Instance med PowerShell stöds inte för närvarande.

  • Import/Export Private Link ska inte användas när användardatabasen eller Azure Storage-kontot skyddas av resurslås.

  • Manuellt godkännande av den nya privata slutpunktsanslutningen krävs för att slutföra exportåtgärden. När du har startat exporten går du till "väntande anslutningar" i Private Link Center och godkänner anslutningarna, vilket kan ta flera minuter att visas.

  • Import med Private Link har inte stöd för att ange en redundans för lagring av säkerhetskopior när du skapar en ny databas och skapar med standardredundans för geo-redundant lagring av säkerhetskopiering. Som en lösning skapar du först en tom databas med önskad redundans för säkerhetskopieringslagring med hjälp av Azure-portalen eller PowerShell och importerar sedan bacpac-filen till den här tomma databasen.

  • Import med REST API med privat länk kan bara slutföras för en befintlig databas eftersom API:et använder databastillägg. Som en lösning skapar du en tom databas med önskat namn och anropar sedan IMPORT REST API med privat länk.

Nästa steg