Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo descreve como gerenciar e monitorar os bancos de dados do SQL Server que têm backup do Backup do Azure usando a API REST. Você também pode usar a CLI do Azure e o portal do Azure para gerenciar backups do banco de dados SQL.
Observação
Confira a matriz de suporte ao backup de SQL para saber mais sobre as configurações e os cenários com suporte.
Monitorar trabalhos
O serviço de Backup do Azure ativa trabalhos que são executados em segundo plano. Isso inclui cenários como ativar backup, operações de restauração e desabilitar o backup. Você pode rastrear esses trabalhos usando suas IDs. Saiba mais sobre como gerenciar trabalhos de backup e restauração.
Buscar informações de trabalho de operações
Uma operação como o acionamento de backup retornará como resposta um jobID.
Por exemplo: a resposta final de um gatilho da operação da API REST é a seguinte:
{
"id": "cd2a3b13-d392-4e81-86ac-02ea91cc70b9",
"name": "cd2a3b13-d392-4e81-86ac-02ea91cc70b9",
"status": "Succeeded",
"startTime": "2018-05-28T11:43:21.6516182Z",
"endTime": "2018-05-28T11:43:21.6516182Z",
"properties": {
"objectType": "OperationStatusJobExtendedInfo",
"jobId": "c22eca5d-0c1c-48a0-a40d-69bef708d92a"
}
}
É possível identificar o trabalho de backup pelo campo jobId e pode ser rastreada conforme mencionado aqui usando uma solicitação GET.
Rastrear o trabalho
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/{jobName}?api-version=2016-12-01
O {jobName}
é o jobId mencionado acima. A resposta é 200 (OK) com o campo status indicando o status do trabalho. Depois de constar como Completed ou CompletedWithWarnings, a seção extendedInfo revela mais detalhes sobre o trabalho.
GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-0000000000/resourceGroups/SQLServerSelfHost/providers/Microsoft.RecoveryServices/vaults/SQLServer2012/backupJobs/c22eca5d-0c1c-48a0-a40d-69bef708d92a?api-version=2016-12-01
Resposta
Nome | Tipo | Descrição |
---|---|---|
200 OK | JobResource | OKEY |
Exemplo de resposta
Depois que o URI GET é enviado, uma resposta 200 é retornada.
HTTP/1.1 200 OK
Pragma: no-cache
X-Content-Type-Options: nosniff
x-ms-request-id: e057b496-8ceb-45b6-bd9e-367f7dd73d6d
x-ms-client-request-id: 1ffda117-b2c0-4a80-a9ba-43ba66eaec9b; 1ffda117-b2c0-4a80-a9ba-43ba66eaec9b
Strict-Transport-Security: max-age=31536000; includeSubDomains
x-ms-ratelimit-remaining-subscription-reads: 14999
x-ms-correlation-request-id: e057b496-8ceb-45b6-bd9e-367f7dd73d6d
x-ms-routing-request-id: SOUTHINDIA:20180528T115536Z:e057b496-8ceb-45b6-bd9e-367f7dd73d6d
Cache-Control: no-cache
Date: Mon, 28 May 2018 11:55:35 GMT
Server: Microsoft-IIS/8.0
X-Powered-By: ASP.NET
{
"id": "/subscriptions/00000000-0000-0000-0000-0000000000/resourceGroups/SQLServerSelfHost/providers/microsoft.recoveryservices/vaults/SQLServer2012/backupJobs/c22eca5d-0c1c-48a0-a40d-69bef708d92a",
"name": "c22eca5d-0c1c-48a0-a40d-69bef708d92a",
"type": "Microsoft.RecoveryServices/vaults/backupJobs",
"properties": {
"jobType": "AzureWorkloadJob",
"workloadType": "SQLDataBase",
"duration": "00:03:13.6439467",
"actionsInfo": [
1
],
"errorDetails": [
{
"errorCode": 510008,
"errorString": "Operation cancelled as a conflicting operation was already running on the same database.",
"errorTitle": "OperationCancelledBecauseConflictingOperationRunningUserError",
"recommendations": [
"Please try again after sometime."
]
}
],
"extendedInfo": {
"tasksList": [
{
"taskId": "Transfer data to vault",
"status": "Failed"
}
],
"propertyBag": {
"Data Transferred (in MB)": "0"
}
},
"entityFriendlyName": "MSSQLSERVER/msDB [sqlserver-0.contoso.com]",
"backupManagementType": "AzureWorkload",
"operation": "Backup (Full)",
"status": "Failed",
"startTime": "2018-05-28T11:43:21.6516182Z",
"endTime": "2018-05-28T11:46:35.2955649Z",
"activityId": "6b033cf6-f875-4c03-8985-9add07ec2845"
}
}
}
Modificar a política
Para alterar a política que protege o banco de dados, use o mesmo formato usado para habilitar a proteção. No entanto, forneça a ID da nova política no corpo da solicitação e envie-a. Por exemplo, para alterar a política do testVM de HourlyLogPolicy para ProdPolicy, forneça a ID de ProdPolicy no corpo da solicitação.
{
"properties": {
"backupManagementType": "AzureWorkload",
"workloadType": "SQLDataBase",
"policyId": "/subscriptions/00000000-0000-0000-0000-0000000000/resourceGroups/SQLServerSelfHost/providers/microsoft.recoveryservices/vaults/SQLServer2012/backupPolicies/ProdPolicy"
},
"location": "westcentralus"
}
A resposta seguirá o mesmo formato mencionado para habilitar a proteção.
Interromper a proteção e manter os dados existentes
Para remover a proteção de um banco de dados protegido e manter os dados que já possuem backup, remova a política no corpo da solicitação que você usou para habilitar o backup e envie a solicitação. Após remover a associação com a política, não serão disparados mais backups e não serão criados pontos de recuperação.
{
"properties": {
"protectedItemType": "AzureVmWorkloadSQLDatabase",
"protectionState": "ProtectionStopped",
"sourceResourceId":
"/subscriptions/00000000-0000-0000-0000-0000000000/resourceGroups/SQLServerPMDemo/providers/Microsoft.Compute/virtualMachines/sqlserver-0",
"policyId": ""
}
}
Resposta de exemplo
Parar a proteção de um banco de dados é uma operação assíncrona. A operação cria outra operação que precisa ser rastreada. Ela retorna duas respostas: 202 (Aceito) quando outra operação é criada, e 200 quando a operação é concluída.
Cabeçalho de resposta quando a operação for aceita com êxito:
Status Code:
OK
Headers:
Pragma : no-cache
X-Content-Type-Options : nosniff
x-ms-request-id : 388c9359-e237-4644-8f6c-38ae5eb0dfcb
x-ms-client-request-id : 5ef896e6-d812-431a-ad58-9d9ee1bb8bb3,5ef896e6-d812-431a-ad58-9d9ee1bb8bb3
Strict-Transport-Security : max-age=31536000; includeSubDomains
x-ms-ratelimit-remaining-subscription-resource-requests: 107
x-ms-correlation-request-id : 388c9359-e237-4644-8f6c-38ae5eb0dfcb
x-ms-routing-request-id : SOUTHINDIA:20211126T054036Z:388c9359-e237-4644-8f6c-38ae5eb0dfcb
Cache-Control : no-cache
Date : Fri, 26 Nov 2021 05:40:36 GMT
Server : Microsoft-IIS/10.0
X-Powered-By : ASP.NET
Body:
{
"id": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
"name": "TestOBJ",
"status": "Succeeded",
"startTime": "2021-11-26T05:36:36.5262731Z",
"endTime": "2021-11-26T05:36:36.5262731Z",
"properties": {
"objectType": "OperationStatusJobExtendedInfo",
"jobId": "68178d86-d564-460b-9643-829046aac1b1"
}
}
Em seguida, acompanhe a operação resultante usando o cabeçalho de localização ou o cabeçalho Azure-AsyncOperation com um comando GET:
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupoperations/0000aaaa-11bb-cccc-dd22-eeeeee333333?api-version=2016-12-01
Corpo da resposta
{
"id": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
"name": "TestOBJ",
"status": "Succeeded",
"startTime": "2021-11-26T05:36:36.5262731Z",
"endTime": "2021-11-26T05:36:36.5262731Z",
"properties": {
"objectType": "OperationStatusJobExtendedInfo",
"jobId": "68178d86-d564-460b-9643-829046aac1b1"
}
}
Interromper proteção e excluir os dados de backup
Para remover a proteção de um compartilhamento de arquivo protegido e excluir os dados de backup, execute uma operação de exclusão.
DELETE https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}?api-version=2019-05-13
Os parâmetros containerName e protectedItemName estão definidos na etapa de configurar backup neste artigo.
Respostas
A exclusão da proteção é uma operação assíncrona. Ela cria outra operação que precisa ser rastreada separadamente. Ele retorna duas respostas: 202 (Aceito) quando outra operação é criada, e 204 (NoContent) quando a operação é concluída.