Импорт или экспорт База данных SQL Azure с помощью приватного канала

Применимо к:База данных SQL Azure

Выполнение импорта или экспорта с помощью Azure PowerShell или портал Azure требует установки разрешения доступа к службам Azure в on, в противном случае операция импорта или экспорта завершается ошибкой. Часто пользователи хотят выполнять импорт или экспорт с помощью частной конечной точки, не требуя доступа ко всем службам Azure. В этой статье объясняется, как импортировать или экспортировать База данных SQL Azure с помощью Приватный канал и оставить параметр "Разрешить доступ к службам Azure" значение OFF на логическом сервере SQL Azure.

Примечание.

Импорт и экспорт с помощью приватного канала для База данных SQL Azure в настоящее время находится в предварительной версии.

Приватный канал импорта и экспорта базы данных — это частная конечная точка, управляемая службой, созданная корпорацией Майкрософт и используемая исключительно для обмена данными в процессе импорта и экспорта базы данных, а также Базой данных SQL Azure и связанными службами хранилища Azure. Управляемая службой частная конечная точка — это частный IP-адрес в определенной виртуальной сети и подсети. Частная конечная точка должна быть вручную утверждена пользователем в портал Azure для сервера и хранилища.

Diagram of Import Export Private link architecture.

импорт и экспорт Приватный канал можно настроить с помощью портал Azure, PowerShell или с помощью REST API.

  1. Перейдите на страницу обзора логического сервера SQL Azure, в который вы хотите импортировать базу данных. Выберите "Импорт базы данных " на панели инструментов.
  2. На странице "Импорт базы данных" выберите параметр "Использовать приватный канал" проверка box. Screenshot from the Azure portal that shows how to enable Import Private link.
  3. Введите учетную запись хранения, учетные данные проверки подлинности, сведения о базе данных и нажмите кнопку "ОК".
  1. Перейдите на страницу обзора базы данных SQL Azure, которую вы хотите экспортировать. Выберите " Экспорт" на панели инструментов.
  2. На странице "Экспорт базы данных" выберите параметр "Использовать приватный канал" проверка box. Screenshot from the Azure portal that shows how to enable Export Private Link.
  3. Введите учетную запись хранения, учетные данные проверки подлинности, сведения о базе данных и нажмите кнопку "ОК".

2. Утверждение частных конечных точек

  1. Перейдите в центр Приватный канал в портал Azure. В поле поиска Azure найдите "Приватный канал".
  2. Перейдите на страницу частных конечных точек центра Приватный канал.
  3. Утвердить частные конечные точки, созданные с помощью службы импорт и экспорт.

Утверждение подключения к частной конечной точке в База данных SQL Azure

  1. Перейдите на логический сервер SQL Azure, на котором размещена база данных.
  2. Перейдите на страницу "Сеть" в разделе "Безопасность"
  3. Выберите вкладку "Закрытый доступ ".
  4. Выберите частную конечную точку, которую вы хотите утвердить.
  5. Выберите " Утвердить", чтобы утвердить подключение.

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

Утверждение подключения к частной конечной точке в служба хранилища Azure

  1. Перейдите к учетной записи хранения, в которой размещен контейнер BLOB-объектов, в котором существует BACPAC-файл.
  2. Откройте страницу подключений к частной конечной точке в меню "Безопасность".
  3. Выберите частную конечную точку для службы импорта и экспорта.
  4. Выберите " Утвердить", чтобы утвердить подключение.

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

3. Проверка состояния импорта и экспорта

  1. После утверждения частных конечных точек в azure SQL Server и учетной записи служба хранилища Azure задание импорта или экспорта базы данных будет запускаться. До тех пор задания будут приостановлены.
  2. Вы можете проверка состояние заданий импорта или экспорта базы данных на странице журнала импорт и экспорт в разделе Управление данными на странице sql Server Azure. Screenshot from the Azure portal that shows how to check Import Export Jobs Status.

Используйте командлет New-AzSqlDatabaseImport, чтобы отправить запрос на импорт базы данных в Azure. Операция импорта может занять некоторое время в зависимости от размера базы данных. Модель подготовки на основе DTU поддерживает выбор значений максимального размера базы данных для каждого уровня. При импорте базы данных используйте одно из этих поддерживаемых значений.

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

Используйте командлет New-AzRmSqlDatabaseExport, чтобы отправить запрос на экспорт базы данных в службу «База данных SQL Azure». Операция экспорта может занять некоторое время в зависимости от размера базы данных.

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

Существующие API для выполнения заданий импорта и экспорта были оптимизированы путем включения поддержки Приватного канала. Ознакомьтесь с API импорта базы данных.

Ограничения

В настоящее время приватный канал для импорта и экспорта имеет следующие ограничения:

  • Чтобы использовать Приватный канал с импорт и экспорт, пользовательская база данных и контейнер больших двоичных объектов служба хранилища Azure должны размещаться в том же типе Облака Azure. Например, в Azure для коммерческих или государственных организаций. Размещение в разных типах облаков не поддерживается.

  • Импорт или экспорт базы данных из Управляемый экземпляр SQL Azure с помощью PowerShell в настоящее время не поддерживается.

  • импорт и экспорт Приватный канал не следует использовать, если пользовательская база данных или учетная запись служба хранилища Azure защищены блокировками ресурсов.

  • Для выполнения операции экспорта требуется ручное утверждение нового подключения к частной конечной точке. После запуска экспорта перейдите в раздел "Ожидающие подключения" в Центре Приватный канал и утверждайте подключения, которые могут занять несколько минут.

  • Импорт с помощью Приватного канала не позволяет определять уровень избыточности хранилища резервных копий при создании новой базы данных. Избыточность геоизбыточного хранилища резервных копий определяется по умолчанию. В качестве обходного решения сначала создайте пустую базу данных с требуемой избыточностью хранилища резервных копий с помощью портал Azure или PowerShell, а затем импортируйте BACPAC-файл в эту пустую базу данных.

  • Импорт с помощью REST API с приватным каналом можно выполнить только для существующей базы данных, так как API использует расширения базы данных. В качестве обходного решения создайте пустую базу данных с нужным именем, а затем вызовите REST API импорта с приватным каналом.

Следующие шаги