Importowanie lub eksportowanie usługi Azure SQL Database przy użyciu łącza prywatnego

Dotyczy:Azure SQL Database

Uruchomienie opcji Importuj lub Eksportuj za pośrednictwem programu Azure PowerShell lub witryny Azure Portal wymaga ustawienia opcji Zezwalaj na dostęp do usług platformy Azure na wartość WŁĄCZONE. W przeciwnym razie operacja importowania lub eksportowania kończy się niepowodzeniem z powodu błędu. Często użytkownicy chcą wykonać importowanie lub eksportowanie przy użyciu prywatnego punktu końcowego bez konieczności uzyskiwania dostępu do wszystkich usług platformy Azure. W tym artykule wyjaśniono, jak zaimportować lub wyeksportować usługę Azure SQL Database przy użyciu usługi Private Link i pozostawić ustawienie Zezwalaj na dostęp do usług platformy Azure na wartość OFF na serwerze logicznym Azure SQL.

Uwaga

Importowanie/eksportowanie przy użyciu łącza prywatnego dla usługi Azure SQL Database jest obecnie dostępne w wersji zapoznawczej.

Link prywatny importowania/eksportowania bazy danych to zarządzany prywatny punkt końcowy usługi utworzony przez firmę Microsoft, który jest używany wyłącznie do celów komunikacji przez proces importowania/eksportowania bazy danych, bazy danych usługi Azure SQL i powiązanych usług Azure Storage. Zarządzany prywatny punkt końcowy usługi to prywatny adres IP w obrębie określonej sieci wirtualnej i podsieci. Prywatny punkt końcowy musi zostać ręcznie zatwierdzony przez użytkownika w witrynie Azure Portal dla serwera i magazynu.

Diagram of Import Export Private link architecture.

Usługę Import/Export Private Link można skonfigurować za pośrednictwem witryny Azure Portal, programu PowerShell lub interfejsu API REST.

  1. Przejdź do strony Przegląd serwera logicznego Azure SQL, do którego chcesz zaimportować bazę danych. Wybierz pozycję Importuj bazę danych na pasku narzędzi.
  2. Na stronie Importowanie bazy danych zaznacz pole wyboru Użyj łącza prywatnego. Screenshot from the Azure portal that shows how to enable Import Private link.
  3. Wprowadź konto magazynu, poświadczenia uwierzytelniania, szczegóły bazy danych i wybierz przycisk OK.
  1. Przejdź do strony Przegląd bazy danych Azure SQL Database, którą chcesz wyeksportować. Wybierz pozycję Eksportuj na pasku narzędzi.
  2. Na stronie Eksportuj bazę danych zaznacz pole wyboru Użyj łącza prywatnego. Screenshot from the Azure portal that shows how to enable Export Private Link.
  3. Wprowadź konto magazynu, poświadczenia uwierzytelniania, szczegóły bazy danych i wybierz przycisk OK.

2. Zatwierdzanie prywatnych punktów końcowych

  1. Przejdź do Centrum usługi Private Link w witrynie Azure Portal. W polu wyszukiwania platformy Azure wyszukaj ciąg "Private Link".
  2. Przejdź do strony Prywatne punkty końcowe w Centrum usługi Private Link.
  3. Zatwierdź utworzone prywatne punkty końcowe przy użyciu usługi Import/Export.

Zatwierdzanie połączenia prywatnego punktu końcowego w usłudze Azure SQL Database

  1. Przejdź do serwera logicznego Usługi Azure SQL, który hostuje bazę danych.
  2. Przejdź do strony Sieć w obszarze Zabezpieczenia
  3. Wybierz kartę Dostęp prywatny.
  4. Wybierz prywatny punkt końcowy, który chcesz zatwierdzić.
  5. Wybierz pozycję Zatwierdź , aby zatwierdzić połączenie.

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

Zatwierdzanie połączenia prywatnego punktu końcowego w usłudze Azure Storage

  1. Przejdź do konta magazynu hostujące kontener obiektów blob, w którym istnieje plik bacpac.
  2. Otwórz stronę Połączenia prywatnego punktu końcowego w menu Zabezpieczenia.
  3. Wybierz prywatny punkt końcowy dla usługi import/export.
  4. Wybierz pozycję Zatwierdź , aby zatwierdzić połączenie.

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

3. Sprawdzanie stanu importu/eksportu

  1. Po zatwierdzeniu prywatnych punktów końcowych zarówno na serwerze Azure SQL, jak i koncie usługi Azure Storage, zadanie importowania lub eksportowania bazy danych zostanie uruchomione. Do tego czasu zadania będą wstrzymane.
  2. Stan zadań importowania lub eksportowania bazy danych można sprawdzić na stronie Historia importu/eksportu w sekcji Zarządzanie danymi na stronie azure SQL Server. Screenshot from the Azure portal that shows how to check Import Export Jobs Status.

Użyj polecenia cmdlet New-AzSqlDatabaseImport, aby przesłać żądanie importowej bazy danych na platformę Azure. W zależności od rozmiaru bazy danych importowanie może zająć trochę czasu. Model aprowizacji oparty na jednostkach DTU obsługuje wybieranie maksymalnych wartości rozmiaru bazy danych dla każdej warstwy. Podczas importowania bazy danych użyj jednej z tych obsługiwanych wartości.

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

Użyj polecenia cmdlet New-AzSqlDatabaseExport, aby przesłać żądanie eksportu bazy danych do usługi Azure SQL Database. W zależności od rozmiaru bazy danych operacja eksportowania może zająć trochę czasu.

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

Istniejące interfejsy API do wykonywania zadań importu i eksportu zostały ulepszone w celu obsługi usługi Private Link. Zapoznaj się z tematem Importowanie interfejsu API bazy danych.

Ograniczenia

Obecnie link prywatny do importowania/eksportowania ma następujące ograniczenia:

  • Aby używać usługi Private Link z importem/eksportem, baza danych użytkownika i kontener obiektów blob usługi Azure Storage muszą być hostowane w tym samym typie chmury platformy Azure. Na przykład zarówno w usłudze Azure Commercial, jak i w obu w witrynie Azure Gov. Hosting między typami chmury nie jest obsługiwany.

  • Importowanie lub eksportowanie bazy danych z usługi Azure SQL Managed Instance przy użyciu programu PowerShell nie jest obecnie obsługiwane.

  • Usługa Import/Export Private Link nie powinna być używana, gdy baza danych użytkownika lub konto usługi Azure Storage są chronione przez blokady zasobów.

  • Ręczne zatwierdzenie nowego połączenia prywatnego punktu końcowego jest wymagane do ukończenia operacji eksportowania. Po rozpoczęciu eksportu przejdź do pozycji "oczekujące połączenia" w Centrum usługi Private Link i zatwierdź połączenia, co może potrwać kilka minut.

  • Importowanie przy użyciu usługi Private Link nie obsługuje określania nadmiarowości magazynu kopii zapasowych podczas tworzenia nowej bazy danych i tworzenia z domyślną nadmiarową nadmiarową nadmiarowością magazynu kopii zapasowych. Aby obejść ten problem, najpierw utwórz pustą bazę danych z żądaną nadmiarowością magazynu kopii zapasowych przy użyciu witryny Azure Portal lub programu PowerShell, a następnie zaimportuj plik bacpac do tej pustej bazy danych.

  • Importowanie przy użyciu interfejsu API REST z linkiem prywatnym można ukończyć tylko dla istniejącej bazy danych, ponieważ interfejs API używa rozszerzeń bazy danych. Aby obejść ten problem, utwórz pustą bazę danych o żądanej nazwie, a następnie wywołaj interfejs API REST importu z linkiem prywatnym.

Następne kroki