Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к: База данных SQL Azure
В этой статье объясняется, как импортировать или экспортировать базу данных SQL Azure с помощью приватного канала с помощью портала Azure или Azure PowerShell. Установите для параметра "Разрешить доступ к службам Azure " значение "Отключить " на логическом сервере SQL Azure.
С помощью Private Link можно безопасно выполнять операции импорта и экспорта без необходимости устанавливать "Разрешить доступ к службам Azure" в положение "включено", что в противном случае требуется для стандартных операций импорта и экспорта.
Примечание.
Импорт и экспорт с помощью приватного канала для базы данных SQL Azure в настоящее время находится в предварительной версии.
Предпосылки
Перед импортом и экспортом с приватным каналом убедитесь, что у вас есть следующие ресурсы и конфигурации:
- Логический сервер SQL Azure с подключением к частной конечной точке, настроенным для виртуальной сети
- Учетная запись хранения Azure с контейнером блобов, который содержит ваш BACPAC-файл (для импорта) или хранит экспортированный BACPAC-файл.
- Логический сервер SQL Azure и учетная запись хранения должны иметь частные конечные точки, настроенные в одной или одноранговых виртуальных сетях.
- Соответствующие разрешения для утверждения подключений к частной конечной точке на логическом сервере SQL Azure и учетной записи хранения
Что такое приватный канал импорта и экспорта?
Приватный канал импорта и экспорта базы данных — это управляемая службами частная конечная точка, созданная корпорацией Майкрософт. Если включить параметр приватного канала во время импорта или экспорта, служба автоматически создает частные конечные точки для обеспечения безопасного взаимодействия между процессом импорта и экспорта базы данных, базой данных SQL Azure и службой хранилища Azure.
Эти частные конечные точки, управляемые службой, создаются в одной виртуальной сети и подсети, где находится существующая частная конечная точка логического сервера SQL Azure. Конечные точки получают частные IP-адреса из адресного пространства этой подсети и должны быть вручную утверждены перед продолжением операции импорта и экспорта.
Это важно
Если на логическом сервере Azure SQL или учетной записи хранилища уже настроены частные конечные точки, служба импорта и экспорта создает дополнительные частные конечные точки, управляемые службой, специально для операций импорта/экспорта. Эти частные конечные точки отделены от существующих частных конечных точек и требуют отдельного утверждения.
Необходимо вручную утвердить частную конечную точку как для логического сервера SQL в Azure, так и для учетной записи хранения Blob в Azure, по отдельности на каждом шаге. В этом руководстве содержатся детали.
Настройка Приватный канал импорта и экспорта с помощью портал Azure
Вы можете настроить приватный канал импорта и экспорта через портал Azure, PowerShell или REST API.
Примечание.
Служба автоматически создает частные конечные точки в той же виртуальной сети и подсети, что и существующую частную конечную точку логического сервера SQL Azure. Вам не нужно вручную указывать виртуальную сеть или подсеть во время процесса импорта и экспорта. Если на сервере SQL Server не настроена частная конечная точка, необходимо настроить ее перед использованием импорта и экспорта с приватным каналом.
1. Настройка приватного канала импорта и экспорта с помощью портал Azure
Включить импорт приватной ссылки
Необходимо включить и утвердить приватный канал импорта. Azure автоматически создает приватную ссылку.
Перейдите на страницу обзора логического сервера SQL Azure, где необходимо импортировать базу данных. Выберите "Импорт базы данных " на панели инструментов.
На странице "Импорт базы данных" установите флажок "Использовать приватный канал".
Введите учетную запись хранения, учетные данные проверки подлинности, сведения о базе данных и нажмите кнопку "ОК".
Включение приватного канала экспорта
Необходимо включить и утвердить приватный канал экспорта. Azure автоматически создает приватную ссылку.
- Перейдите на страницу обзора базы данных SQL Azure, которую вы хотите экспортировать. Выберите " Экспорт" на панели инструментов.
- На странице "Экспорт базы данных" установите флажок "Использовать приватный канал".
- Введите учетную запись хранения, учетные данные проверки подлинности, сведения о базе данных и нажмите кнопку "ОК".
2. Утверждение приватного канала для логического сервера SQL Azure
Пользователь должен утвердить новую частную конечную точку в Центре приватного канала или в базе данных SQL Azure. Вы можете одобрить обе частные ссылки по отдельности в соответствующих разделах портала Azure.
Подсказка
Если у вас уже есть частные конечные точки, настроенные для логического сервера SQL Azure и учетной записи хранения, вы увидите, что новые частные конечные точки, управляемые службой, отображаются как ожидающие подключения. Эти частные конечные точки предназначены специально для операции импорта и экспорта и отделены от существующих частных конечных точек. Найдите частные конечные точки с именами, указывающими, что они были созданы службой импорта и экспорта.
Вариант 1. Утверждение частных конечных точек в Центре Приватный канал в портал Azure
Перейдите в Центр Private Link на портале Azure. В поле поиска Azure введите Private Link. Выберите Private Link.
В Центре приватного канала выберите Ожидающие подключения.
Выберите обе частные конечные точки, созданные с помощью службы импорта и экспорта. Выбрать Утвердить.
Вариант 2. Утверждение подключений к частной конечной точке отдельно на портале Azure
Перейдите на логический сервер SQL Azure, на котором размещена база данных.
В меню ресурсов в разделе Безопасностьвыберите Сетевые.
Выберите вкладку "Закрытый доступ ".
В списке в разделе "Подключения к частной конечной точке" выберите частные конечные точки, созданные с помощью службы импорта и экспорта.
Выбрать Утвердить.
Перейдите к учетной записи хранения, в которой размещен контейнер BLOB-объектов, в котором существует BACPAC-файл
.bacpac.В разделе Security + Networkingвыберите Сеть.
Перейдите на вкладку подключения к частным конечным точкам.
В списке выберите частную конечную точку для службы импорта и экспорта.
Выберите " Утвердить", чтобы утвердить подключение.
3. Проверка состояния импорта и экспорта
После утверждения частных конечных точек на сервере SQL Azure и учетной записи хранения Azure начинается задание импорта или экспорта базы данных. До тех пор задания приостановлены.
Вы можете проверить состояние заданий импорта или экспорта базы данных на странице журнала импорта и экспорта в разделе Управление данными на странице sql Server Azure.
Настройка приватного канала импорта и экспорта с помощью PowerShell
При использовании PowerShell частные конечные точки, управляемые службой, автоматически создаются в той же виртуальной сети и подсети, что и существующую частную конечную точку логического сервера SQL Azure. Перед выполнением этих команд убедитесь, что в SQL Server настроено подключение к частной конечной точке.
Импорт базы данных с помощью приватного канала в PowerShell
Используйте командлет New-AzSqlDatabaseImport, чтобы отправить запрос на импорт базы данных в Azure. В зависимости от размера базы данных импорт может занять некоторое время. Модель подготовки на основе DTU поддерживает выбор значений максимального размера базы данных для каждого уровня. При импорте базы данных необходимо использовать поддерживаемые значения редакции и целевых показателей для базы данных SQL Azure.
Укажите собственный <values> в следующем примере кода PowerShell, который импортирует bacpac-файл с именем sample.bacpac и создает базу данных SQL Azure с двумя виртуальными ядрами общего назначения.
$importRequestParams = @{
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 = "GeneralPurpose"
ServiceObjectiveName = "GP_Gen5_2"
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)
}
$importRequest = New-AzSqlDatabaseImport @importRequestParams
Экспорт базы данных с помощью приватного канала в PowerShell
Используйте командлет New-AzRmSqlDatabaseExport, чтобы отправить запрос на экспорт базы данных в службу «База данных SQL Azure». В зависимости от размера базы данных операция экспорта может занять некоторое время.
Вставьте собственное значение <values> в следующем примере кода PowerShell.
$exportRequestParams = @{
ResourceGroupName = "<resourceGroupName>"
ServerName = "<serverName>"
DatabaseName = "<databaseName>"
StorageKeyType = "StorageAccessKey"
StorageKey = $(Get-AzStorageAccountKey -ResourceGroupName $resourceGroupName -StorageAccountName "<storageAccountName>").Value[0]
StorageUri = "https://myStorageAccount.blob.core.windows.net/importsample/sample.bacpac"
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)
}
$exportRequest = New-AzSqlDatabaseExport @exportRequestParams
Создание приватного канала импорта и экспорта с помощью REST API
Существующие API для выполнения заданий импорта и экспорта поддерживают приватный канал. Ознакомьтесь с API импорта базы данных.
Ограничения
В настоящее время приватный канал для импорта и экспорта имеет следующие ограничения:
Чтобы использовать приватный канал с импортом и экспортом, пользовательская база данных и контейнер BLOB-объектов хранилища Azure должны находиться в том же типе облака Azure. Например, оба должны находиться в Azure Commercial или оба в Azure Gov. Размещение в разных типах облаков не поддерживается.
Импорт или экспорт базы данных из Управляемого экземпляра SQL Azure с помощью PowerShell в настоящее время не поддерживается.
Не используйте приватный канал импорта и экспорта, если пользовательская база данных или учетная запись хранения Azure защищены блокировками ресурсов.
Чтобы завершить операцию экспорта, необходимо вручную утвердить новое подключение к частной конечной точке. После запуска экспорта перейдите к ожидающим подключениям в Центре приватных подключений и одобрите подключения, которые могут занять несколько минут для появления.
Импорт с помощью Частного соединения не поддерживает указание избыточности хранилища резервных копий при создании новой базы данных и создает базу данных с настройкой избыточности хранилища резервных копий по умолчанию. В качестве обходного решения сначала создайте пустую базу данных с требуемой избыточностью хранилища резервных копий с помощью портала Azure или PowerShell, а затем импортируйте BACPAC-файл в эту пустую базу данных.
Импорт с помощью REST API с приватным каналом можно выполнить только для существующей базы данных, так как API использует расширения базы данных. В качестве обходного решения создайте пустую базу данных с нужным именем, а затем вызовите REST API импорта с приватным каналом.