Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Tip
Microsoft Fabric Data Warehouse — это реляционное хранилище корпоративного масштаба на основе озера данных, с готовой к будущему архитектурой, встроенным ИИ и новыми функциями. Если вы не знакомы с хранилищем данных, начните с Fabric Data Warehouse. Существующие рабочие нагрузки пула SQL dedicated SQL могут обновляться до Fabric для доступа к новым возможностям в области обработки и анализа данных, аналитики в режиме реального времени и отчетов.
Из этой статьи вы узнаете, как восстановить выделенный пул SQL в Azure Synapse Analytics после случайного сброса рабочей области с помощью PowerShell.
Примечание.
Это руководство предназначено только для выделенных пулов SQL в рабочих областях Azure Synapse. Для автономных выделенных пулов SQL (ранее — хранилище данных SQL) следуйте инструкциям из статьи Восстановление пула SQL с удаленного сервера.
Перед началом
Примечание.
Мы рекомендуем использовать модуль Azure Az PowerShell для взаимодействия с Azure. Чтобы начать работу, см. статью Установка Azure PowerShell. Чтобы узнать, как перейти на модуль Az для PowerShell, см. статью Миграция Azure PowerShell с AzureRM на Az.
Восстановление пула SQL из удаленной рабочей области
Следующий пример скрипта выполняет следующие действия.
Откройте PowerShell.
Подключитесь к своей учетной записи Azure.
Задайте контекст для подписки, содержащей исключенную рабочую область.
Определите дату удаления рабочей области. На этом шаге извлекается точная дата и время удаления SQL-пула рабочей области.
- На этом шаге предполагается, что рабочая область с той же группой ресурсов с тем же именем и с теми же значениями по-прежнему доступна.
- В противном случае повторно создайте удаленную рабочую область с тем же именем рабочей области, именем группы ресурсов, регионом и всеми теми же значениями из предыдущей удаленной рабочей области.
Создайте строку идентификатора ресурса пула SQL, который вы хотите восстановить. Для формата требуется
Microsoft.Sql. Сюда входят дата и время удаления сервера.Восстановите базу данных из удаленной рабочей области. Восстановите целевую рабочую область с помощью исходного пула SQL.
Убедитесь, что состояние восстановленной базы данных - "в сети".
$SubscriptionID = "<YourSubscriptionID>" $ResourceGroupName = "<YourResourceGroupName>" $WorkspaceName = "<YourWorkspaceNameWithoutURLSuffixSeeNote>" # Without sql.azuresynapse.net $DatabaseName = "<YourDatabaseName>" $TargetResourceGroupName = "<YourTargetResourceGroupName>" $TargetWorkspaceName = "<YourtargetServerNameWithoutURLSuffixSeeNote>" $TargetDatabaseName = "<YourDatabaseName>" Connect-AzAccount Set-AzContext -SubscriptionID $SubscriptionID # Get the exact date and time the workspace SQL pool was dropped. # This assumes that the workspace with the same name resource group and same values is still available. # If not, recreate the dropped workspace with the same workspace name, resource group name, region, # and all the same values from prior dropped workspace. # There should only be one selection to select from. $paramsGetDroppedSqlPool = @{ ResourceGroupName = $ResourceGroupName WorkspaceName = $WorkspaceName Name = $DatabaseName } $DroppedDateTime = Get-AzSynapseDroppedSqlPool @paramsGetDroppedSqlPool ` | Select-Object -ExpandProperty DeletionDate # Construct a string of the resource ID of the sql pool you wish to recover. # The format requires Microsoft.Sql. This includes the approximate date time the server was dropped. $SourceDatabaseID = "/subscriptions/$SubscriptionID/resourceGroups/$ResourceGroupName/providers/" ` + "Microsoft.Sql/servers/$WorkspaceName/databases/$DatabaseName" # Restore to the target workspace with the source SQL pool. $paramsRestoreSqlPool = @{ FromDroppedSqlPool = $true DeletionDate = $DroppedDateTime TargetSqlPoolName = $TargetDatabaseName ResourceGroupName = $TargetResourceGroupName WorkspaceName = $TargetWorkspaceName ResourceId = $SourceDatabaseID } $RestoredDatabase = Restore-AzSynapseSqlPool @paramsRestoreSqlPool # Verify the status of restored database $RestoredDatabase.status
Устранение неполадок
Ошибка: "При обработке запроса произошла непредвиденная ошибка".
Если это сообщение получено, исходная база данных может не иметь доступных точек восстановления из-за нехватки времени существования исходной рабочей области. Обычно это происходит, когда рабочая область существует менее одного часа.
Ошибка: "ValidationFailed: указанный идентификатор ресурса недопустим для этой операции. Используйте ресурс пула SQL"
Если вы получили эту ошибку, убедитесь, что sourceDatabaseId использует поддерживаемый формат идентификатора ресурса и указывает на нужный исходный выделенный пул SQL.
Поддерживаемые форматы
Идентификатор ресурса пула SQL Synapse /subscriptions/{subscriptionId}/resourceGroups/{workspaceResourceGroup}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}
Идентификатор ресурса управляемой базы данных SQL /subscriptions/{subscriptionId}/resourceGroups/{managedResourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}