Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este artigo descreve como fazer backup do Banco de Dados do Azure para PostgreSQL - Servidor Flexível usando a CLI do Azure.
Pré-requisitos
Antes de fazer backup do Banco de Dados do Azure para PostgreSQL - Servidor Flexível, revise os cenários suportados e as limitações para fazer backup do Banco de Dados do Azure para PostgreSQL - Servidores Flexíveis.
Criar um cofre de backup
O cofre de backup é uma entidade de armazenamento no Azure. Isso armazena os dados de backup para novas cargas de trabalho suportadas pelo Backup do Azure. Por exemplo, Banco de Dados do Azure para PostgreSQL – Servidores flexíveis, blobs em uma conta de armazenamento e Discos do Azure. Os cofres de backup ajudam a organizar os dados de backup e, ao mesmo tempo, minimizam a sobrecarga de gerenciamento. Os cofres de backup são baseados no modelo do Azure Resource Manager do Azure, que fornece recursos aprimorados para ajudar a proteger os dados de backup.
Antes de criar um cofre de backup, escolha a redundância de armazenamento dos dados dentro do cofre. Em seguida, prossiga para criar o cofre de backup com a redundância de armazenamento especificada e o local.
Neste artigo, vamos criar um cofre TestBkpVaultde backup , na região westus, sob o grupo testBkpVaultRGde recursos . Use o az dataprotection vault create comando para criar um cofre de backup. Saiba mais sobre como criar um cofre de backup.
az dataprotection backup-vault create -g testBkpVaultRG --vault-name TestBkpVault -l westus --type SystemAssigned --storage-settings datastore-type="VaultStore" type="LocallyRedundant"
{
"eTag": null,
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/testBkpVaultRG/providers/Microsoft.DataProtection/BackupVaults/TestBkpVault",
"identity": {
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"type": "SystemAssigned"
},
"location": "westus",
"name": "TestBkpVault",
"properties": {
"provisioningState": "Succeeded",
"storageSettings": [
{
"datastoreType": "VaultStore",
"type": "LocallyRedundant"
}
]
},
"resourceGroup": "testBkpVaultRG",
"systemData": null,
"tags": null,
"type": "Microsoft.DataProtection/backupVaults"
}
Configurar a cópia de segurança
Antes de configurar a proteção para o banco de dados, certifique-se de criar uma política de backup. Uma vez que o cofre e a política sejam criados, proteja a Base de Dados do Azure para PostgreSQL - Servidor Flexível seguindo estas instruções:
- Buscar o ID ARM do PostgreSQL - Servidor flexível a ser protegido
- Conceder acesso ao cofre de backup
- Preparar a solicitação de configuração de backup
Buscar o ID ARM do PostgreSQL - Servidor flexível que deve ser protegido
Obtenha o ID do Azure Resource Manager (ARM ID) do PostgreSQL – Servidor Flexível a ser protegido. Esse ID serve como identificador do banco de dados. Vamos usar um exemplo de um banco de dados nomeado empdb11 num Servidor Flexível PostgreSQL, que está presente no grupo de recursos testposgresql sob uma diferente assinatura.
O exemplo a seguir usa bash.
ossId="/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/ossrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/archive-postgresql-ccy/databases/empdb11"
Conceder acesso ao cofre de backup
O cofre de backup tem que se conectar ao PostgreSQL – Servidor Flexível e, em seguida, acessar o banco de dados através das chaves presentes no cofre de chaves. Assim, requer acesso ao PostgreSQL – servidor flexível e ao cofre de chaves. Conceda acesso à Identidade de Serviço Gerido (MSI) do cofre de backup.
Verifique as permissões necessárias para a Identidade de Serviço Gerido (MSI) do cofre de Backup no PostgreSQL – Servidor Flexível e no Cofre de Chaves do Azure que armazena as chaves para o banco de dados.
Preparar a solicitação de configuração de backup
Depois que todas as permissões relevantes estiverem definidas, configure o backup executando os seguintes comandos:
Prepare a solicitação relevante usando o cofre relevante, a política, e o banco de dados de servidor flexível PostgreSQL, usando o comando
az dataprotection backup-instance initialize.az dataprotection backup-instance initialize --datasource-id $ossId --datasource-type AzureDatabaseForPostgreSQLFlexibleServer -l <vault-location> --policy-id <policy_arm_id> --secret-store-type AzureKeyVault --secret-store-uri $keyURI > OSSBkpInstance.JSONEnvie a solicitação para proteger o banco de dados usando o
az dataprotection backup-instance createcomando.az dataprotection backup-instance create --resource-group testBkpVaultRG --vault-name TestBkpVault TestBkpvault --backup-instance .\OSSBkpInstance.JSON
Executar uma cópia de segurança a pedido
Especifique uma regra de retenção enquanto aciona o backup. Para exibir as regras de retenção na política, vá para o arquivo JSON de política para regras de retenção. No exemplo a seguir, há duas regras de retenção com os nomes Default e Monthly. Vamos usar a regra Monthly para o backup sob demanda.
az dataprotection backup-policy show -g ossdemorg --vault-name ossdemovault-1 --subscription e3d2d341-4ddb-4c5d-9121-69b7e719485e --name osspol5
{
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e-69b7e719485e/resourceGroups/ossdemorg/providers/Microsoft.DataProtection/backupVaults/ossdemovault-1/backupPolicies/osspol5",
"name": "osspol5",
"properties": {
"datasourceTypes": [
" Microsoft.DBforPostgreSQL/flexibleServers/databases"
],
"objectType": "BackupPolicy",
"policyRules": [
{
"backupParameters": {
"backupType": "Full",
"objectType": "AzureBackupParams"
},
"dataStore": {
"dataStoreType": "VaultStore",
"objectType": "DataStoreInfoBase"
},
"name": "BackupWeekly",
"objectType": "AzureBackupRule",
"trigger": {
"objectType": "ScheduleBasedTriggerContext",
"schedule": {
"repeatingTimeIntervals": [
"R/2020-04-04T20:00:00+00:00/P1W",
"R/2020-04-01T20:00:00+00:00/P1W"
],
"timeZone": "UTC"
},
"taggingCriteria": [
{
"criteria": [
{
"absoluteCriteria": [
"FirstOfMonth"
],
"daysOfMonth": null,
"daysOfTheWeek": null,
"monthsOfYear": null,
"objectType": "ScheduleBasedBackupCriteria",
"scheduleTimes": null,
"weeksOfTheMonth": null
}
],
"isDefault": false,
"tagInfo": {
"eTag": null,
"id": "Monthly_",
"tagName": "Monthly"
},
"taggingPriority": 15
},
{
"criteria": null,
"isDefault": true,
"tagInfo": {
"eTag": null,
"id": "Default_",
"tagName": "Default"
},
"taggingPriority": 99
}
]
}
},
{
"isDefault": false,
"lifecycles": [
{
"deleteAfter": {
"duration": "P10Y",
"objectType": "AbsoluteDeleteOption"
},
"sourceDataStore": {
"dataStoreType": "VaultStore",
"objectType": "DataStoreInfoBase"
},
"targetDataStoreCopySettings": []
}
],
"name": "Monthly",
"objectType": "AzureRetentionRule"
},
{
"isDefault": true,
"lifecycles": [
{
"deleteAfter": {
"duration": "P1Y",
"objectType": "AbsoluteDeleteOption"
},
"sourceDataStore": {
"dataStoreType": "VaultStore",
"objectType": "DataStoreInfoBase"
},
"targetDataStoreCopySettings": []
}
],
"name": "Default",
"objectType": "AzureRetentionRule"
}
]
},
"resourceGroup": "ossdemorg",
"systemData": null,
"type": "Microsoft.DataProtection/backupVaults/backupPolicies"
}
Para acionar um backup sob demanda, use o az dataprotection backup-instance adhoc-backup comando.
az dataprotection backup-instance adhoc-backup --name "ossrg-empdb11" --rule-name "Monthly" --resource-group testBkpVaultRG --vault-name TestBkpVault
Acompanhar trabalhos
Acompanhe todos os trabalhos usando o az dataprotection job list comando. Você pode listar todos os trabalhos e buscar um detalhe específico do trabalho.
Você também pode usar o Az.ResourceGraph para monitorizar todas as tarefas em todos os cofres de backup. Utilize o comando az dataprotection job list-from-resourcegraph para buscar os trabalhos relevantes que estão nos cofres de backup.
az dataprotection job list-from-resourcegraph --datasource-type AzureDatabaseForPostgreSQLFlexibleServer --status Completed