Restaurar bancos de dados SAP HANA em VMs do Azure
Este artigo descreve como restaurar bancos de dados SAP HANA que estão sendo executados em máquinas virtuais (VMs) do Azure e que o serviço de Backup do Azure fez backup em um cofre dos Serviços de Recuperação. Você pode usar os dados restaurados para criar cópias para cenários de desenvolvimento e teste ou para retornar a um estado anterior.
O Backup do Azure agora dá suporte ao backup e à restauração da instância do SAP HANA System Replication (HSR).
Nota
- O processo de restauração para bancos de dados HANA com HSR é o mesmo que o processo de restauração para bancos de dados HANA sem HSR. De acordo com os avisos da SAP, você pode restaurar bancos de dados com o modo HSR como bancos de dados autônomos . Se o sistema de destino tiver o modo HSR ativado, primeiro desative o modo e, em seguida, restaure o banco de dados. No entanto, se estiver a restaurar como ficheiros, não é necessário desativar o modo HSR (quebrar o HSR).
- OLR (Original Location Recovery) não é suportado atualmente para HSR. Como alternativa, selecione Restauração de local alternativo e, em seguida, selecione a VM de origem como seu Host na lista.
- Não há suporte para restauração para instância HSR. No entanto, a restauração apenas para a instância HANA é suportada.
Para obter informações sobre as configurações e cenários suportados, consulte a matriz de suporte de backup do SAP HANA.
Restaurar para um point-in-time ou para um ponto de recuperação
O Backup do Azure restaura bancos de dados SAP HANA em execução em VMs do Azure. Este serviço:
Restaure-os para uma data ou hora específica (para o segundo) usando backups de log. O Backup do Azure determina automaticamente os backups completos apropriados, backups diferenciais e a cadeia de backups de log que são necessários para restaurar com base no tempo selecionado.
Restaure-os para um backup completo ou diferencial específico para restaurá-los em um ponto de recuperação específico.
Pré-requisitos
Antes de começar a restaurar um banco de dados, observe o seguinte:
Você pode restaurar o banco de dados somente para uma instância do SAP HANA que esteja na mesma região.
A instância de destino deve ser registrada com o mesmo vault que a origem. Saiba mais sobre como fazer backup de bancos de dados SAP HANA.
O Backup do Azure não pode identificar duas instâncias diferentes do SAP HANA na mesma VM. Portanto, restaurar dados de uma instância para outra na mesma VM não é possível.
Para garantir que a instância do SAP HANA de destino esteja pronta para restauração, verifique seu status de preparação para backup:
No portal do Azure, vá para Centro de backup e selecione Backup.
No painel Iniciar: Configurar Backup, para Tipo de Fonte de Dados, selecione SAP HANA na VM do Azure, selecione o cofre no qual a instância do SAP HANA está registrada e selecione Continuar.
Em Descobrir DBs em VMs, selecione Exibir detalhes.
Analise a preparação para backup da VM de destino.
Para saber mais sobre os tipos de restauração suportados pelo SAP HANA, consulte SAP HANA Note 1642148.
Restaurar uma base de dados
Para restaurar um banco de dados, você precisa das seguintes permissões:
- Operador de backup: fornece permissões no cofre onde você está fazendo a restauração.
- Colaborador (gravação): fornece acesso à VM de origem cujo backup é feito.
- Colaborador (gravação): fornece acesso à VM de destino.
- Se estiver a restaurar para a mesma VM, esta será a VM de origem.
- Se estiver a restaurar para uma localização alternativa, esta será a nova VM de destino.
No portal do Azure, vá para Centro de backup e selecione Restaurar.
Selecione SAP HANA na VM do Azure como o tipo de fonte de dados, selecione o banco de dados que deseja restaurar e selecione Continuar.
Em Restaurar configuração, especifique onde ou como restaurar os dados:
- Local alternativo: restaure o banco de dados para um local alternativo e mantenha o banco de dados de origem original.
- Substituir DB: restaure os dados para a mesma instância do SAP HANA que a fonte original. Esta opção substitui o banco de dados original.
Nota
Durante a restauração (aplicável apenas ao cenário IP de front-end do Virtual IP/Load balancer), se você estiver tentando restaurar um backup para o nó de destino depois de alterar o modo HSR como autônomo ou quebrar o HSR antes da restauração, conforme recomendado pelo SAP, certifique-se de que o Load Balancer esteja apontado para o nó de destino.
Exemplos de cenários:
- Se você estiver usando hdbuserstore set SYSTEMKEY localhost em seu script de pré-registro, não haverá problemas durante a restauração.
- Se o *hdbuserstore estiver definido
SYSTEMKEY <load balancer host/ip>
no script de pré-registro e você estiver tentando restaurar o backup para o nó de destino, certifique-se de que o balanceador de carga esteja apontado para o nó de destino que precisa ser restaurado.
Restaurar para uma localização alternativa
No painel Restaurar, em Onde e como Restaurar?, selecione Local alternativo.
Selecione o nome do host e o nome da instância do SAP HANA para o qual você deseja restaurar o banco de dados.
Verifique se a instância do SAP HANA de destino está pronta para ser restaurada, garantindo sua prontidão de backup. Para obter mais informações, veja os Pré-requisitos.
Na caixa Nome do banco de dados restaurado, digite o nome do banco de dados de destino.
Nota
As restaurações de SDC (Single Database Container) devem seguir essas verificações.
Se aplicável, marque a caixa de seleção Substituir se o banco de dados com o mesmo nome já existir na instância HANA selecionada.
Em Selecionar ponto de restauração, selecione Logs (Ponto no Tempo) para restaurar para um ponto específico no tempo. Ou selecione Full & Differential para restaurar para um ponto de recuperação específico.
Restaurar como ficheiros
Nota
A restauração como arquivos não funciona em compartilhamentos CIFS (Common Internet File System), mas funciona para NFS (Network File System).
Para restaurar os dados de backup como arquivos em vez de um banco de dados, selecione Restaurar como arquivos. Depois que os arquivos forem despejados para um caminho especificado, você poderá levá-los para qualquer máquina SAP HANA onde deseja restaurá-los como um banco de dados. Como você pode mover os arquivos para qualquer máquina, agora pode restaurar os dados entre assinaturas e regiões.
No painel Restaurar, em Onde e como Restaurar?, selecione Restaurar como ficheiros.
Selecione o nome do host ou do servidor HANA para o qual deseja restaurar os arquivos de backup.
Na caixa Caminho de destino no servidor , insira o caminho da pasta no servidor selecionado na etapa anterior. Este é o local onde o serviço despejará todos os arquivos de backup necessários.
Os arquivos que são despejados são:
- Arquivos de backup de banco de dados
- Arquivos de metadados JSON (para cada arquivo de backup envolvido)
Normalmente, um caminho de compartilhamento de rede ou o caminho de um compartilhamento de arquivos montado do Azure especificado como o caminho de destino permite um acesso mais fácil a esses arquivos por outras máquinas na mesma rede ou com o mesmo compartilhamento de arquivos do Azure montado neles.
Nota
Para restaurar os arquivos de backup do banco de dados em um compartilhamento de arquivos do Azure montado na VM registrada de destino, verifique se a conta raiz tem permissões de leitura/gravação no compartilhamento.
Selecione o Ponto de Restauração para o qual todos os arquivos e pastas de backup serão restaurados.
Todos os arquivos de backup associados ao ponto de restauração selecionado são despejados no caminho de destino.
Dependendo do tipo de ponto de restauração escolhido (Ponto no tempo ou Completo & Diferencial), você verá uma ou mais pastas criadas no caminho de destino. Uma das pastas, Data_<data e hora da restauração> contém os backups completos, e a outra pasta, Log contém os backups de log e outros backups (como diferenciais e incrementais).
Nota
Se você selecionou Restaurar para um point-in-time, os arquivos de log, que foram despejados para a VM de destino, às vezes podem conter logs além do point-in-time que foram escolhidos para restauração. O Backup do Azure faz isso para garantir que os backups de log para todos os serviços HANA estejam disponíveis para uma restauração consistente e bem-sucedida no point-in-time escolhido.
Mova os arquivos restaurados para o servidor SAP HANA, onde deseja restaurá-los como um banco de dados, e faça o seguinte:
a. Defina permissões na pasta ou diretório onde os arquivos de backup são armazenados executando o seguinte comando:
chown -R <SID>adm:sapsys <directory>
b. Execute o próximo conjunto de comandos como
<SID>adm
:su: <sid>adm
c. Gere o arquivo de catálogo para restauração. Extraia o BackupId do arquivo de metadados JSON para o backup completo, que você usará posteriormente na operação de restauração. Verifique se os backups completos e de log (não presentes para a recuperação completa do backup) estão em pastas diferentes e exclua os arquivos de metadados JSON nessas pastas. Executar:
hdbbackupdiag --generate --dataDir <DataFileDir> --logDirs <LogFilesDir> -d <PathToPlaceCatalogFile>
<DataFileDir>
: A pasta que contém os backups completos.<LogFilesDir>
: A pasta que contém os backups de log, backups diferenciais e backups incrementais. Para Restauração de Backup Completo, como a pasta de log não foi criada, adicione um diretório vazio.<PathToPlaceCatalogFile>
: A pasta onde o arquivo de catálogo gerado deve ser colocado.
d. Você pode restaurar usando o arquivo de catálogo recém-gerado através do HANA Studio ou executar a consulta de restauração da ferramenta SAP HANA HDBSQL com este catálogo recém-gerado. As consultas HDBSQL estão listadas aqui:
Para abrir o prompt HDBSQL, execute o seguinte comando:
hdbsql -U AZUREWLBACKUPHANAUSER -d systemDB
Para restaurar para um ponto no tempo:
Se estiver a criar uma nova base de dados restaurada, execute o comando HDBSQL para criar uma nova base de dados
<DatabaseName>
e, em seguida, pare a base de dados para restauro utilizando o comandoALTER SYSTEM STOP DATABASE <db> IMMEDIATE
. No entanto, se você estiver restaurando apenas um banco de dados existente, execute o comando HDBSQL para parar o banco de dados.Em seguida, execute o seguinte comando para restaurar o banco de dados:
RECOVER DATABASE FOR <db> UNTIL TIMESTAMP <t1> USING CATALOG PATH <path> USING LOG PATH <path> USING DATA PATH <path> USING BACKUP_ID <bkId> CHECK ACCESS USING FILE
<DatabaseName>
: O nome do novo banco de dados ou do banco de dados existente que você deseja restaurar.<Timestamp>
: O carimbo de data/hora exato da restauração point-in-time.<DatabaseName@HostName>
: O nome do banco de dados cujo backup é usado para restauração e o nome do host ou do servidor SAP HANA no qual esse banco de dados reside. AUSING SOURCE <DatabaseName@HostName>
opção especifica que o backup de dados (usado para restauração) é de um banco de dados com um SID ou nome diferente da máquina SAP HANA de destino. Ele não precisa ser especificado para restaurações feitas no mesmo servidor HANA de onde o backup é feito.<PathToGeneratedCatalogInStep3>
: O caminho para o arquivo de catálogo que foi gerado na "etapa c".<DataFileDir>
: A pasta que contém os backups completos.<LogFilesDir>
: A pasta que contém os backups de log, backups diferenciais e backups incrementais (se houver).<BackupIdFromJsonFile>
: O BackupId que foi extraído na "etapa c".
Para restaurar para um backup completo ou diferencial específico:
Se você estiver criando um novo banco de dados restaurado, execute o comando HDBSQL para criar um novo banco de dados
<DatabaseName>
e, em seguida, pare o banco de dados para restauração usando o comandoALTER SYSTEM STOP DATABASE <db> IMMEDIATE
. No entanto, se você estiver restaurando apenas um banco de dados existente, execute o comando HDBSQL para parar o banco de dados:RECOVER DATA FOR <DatabaseName> USING BACKUP_ID <BackupIdFromJsonFile> USING SOURCE '<DatabaseName@HostName>' USING CATALOG PATH ('<PathToGeneratedCatalogInStep3>') USING DATA PATH ('<DataFileDir>') CLEAR LOG
<DatabaseName>
: O nome do novo banco de dados ou do banco de dados existente que você deseja restaurar.<Timestamp>
: O carimbo de data/hora exato da restauração point-in-time.<DatabaseName@HostName>
: O nome do banco de dados cujo backup é usado para restauração e o nome do host ou do servidor SAP HANA no qual esse banco de dados reside. AUSING SOURCE <DatabaseName@HostName>
opção especifica que o backup de dados (usado para restauração) é de um banco de dados com um SID ou nome diferente da máquina SAP HANA de destino. Portanto, ele não precisa ser especificado para restaurações que são feitas no mesmo servidor HANA de onde o backup é feito.<PathToGeneratedCatalogInStep3>
: O caminho para o arquivo de catálogo que foi gerado na "etapa c".<DataFileDir>
: A pasta que contém os backups completos.<LogFilesDir>
: A pasta que contém os backups de log, backups diferenciais e backups incrementais (se houver).<BackupIdFromJsonFile>
: O BackupId que foi extraído na "etapa c".
Para restaurar usando uma ID de backup:
RECOVER DATA FOR <db> USING BACKUP_ID <bkId> USING CATALOG PATH <path> USING LOG PATH <path> USING DATA PATH <path> CHECK ACCESS USING FILE
Exemplos:
Restauração do SAP HANA SYSTEM no mesmo servidor:
RECOVER DATABASE FOR SYSTEM UNTIL TIMESTAMP '2022-01-12T08:51:54.023' USING CATALOG PATH ('/restore/catalo_gen') USING LOG PATH ('/restore/Log/') USING DATA PATH ('/restore/Data_2022-01-12_08-51-54/') USING BACKUP_ID 1641977514020 CHECK ACCESS USING FILE
Restauração do locatário SAP HANA no mesmo servidor:
RECOVER DATABASE FOR DHI UNTIL TIMESTAMP '2022-01-12T08:51:54.023' USING CATALOG PATH ('/restore/catalo_gen') USING LOG PATH ('/restore/Log/') USING DATA PATH ('/restore/Data_2022-01-12_08-51-54/') USING BACKUP_ID 1641977514020 CHECK ACCESS USING FILE
Restauração do SAP HANA SYSTEM em um servidor diferente:
RECOVER DATABASE FOR SYSTEM UNTIL TIMESTAMP '2022-01-12T08:51:54.023' USING SOURCE <sourceSID> USING CATALOG PATH ('/restore/catalo_gen') USING LOG PATH ('/restore/Log/') USING DATA PATH ('/restore/Data_2022-01-12_08-51-54/') USING BACKUP_ID 1641977514020 CHECK ACCESS USING FILE
Restauração do locatário SAP HANA em um servidor diferente:
RECOVER DATABASE FOR DHI UNTIL TIMESTAMP '2022-01-12T08:51:54.023' USING SOURCE <sourceSID> USING CATALOG PATH ('/restore/catalo_gen') USING LOG PATH ('/restore/Log/') USING DATA PATH ('/restore/Data_2022-01-12_08-51-54/') USING BACKUP_ID 1641977514020 CHECK ACCESS USING FILE
Restauração parcial como arquivos
O serviço de Backup do Azure decide a cadeia de arquivos a serem baixados durante a restauração como arquivos. Mas há cenários em que você pode não querer baixar o conteúdo inteiro novamente.
Por exemplo, você pode ter uma política de backup de cheias semanais, diferenciais diários e logs, e já ter baixado arquivos para um diferencial específico. Você descobriu que este não é o ponto de recuperação certo e decidiu baixar o diferencial do dia seguinte. Agora você só precisa do arquivo diferencial, porque você já tem o backup completo inicial. Com a restauração parcial como capacidade de arquivos , fornecida pelo Backup do Azure, agora você pode excluir o backup completo da cadeia de download e baixar apenas o backup diferencial.
Excluindo tipos de arquivos de backup
ExtensionSettingOverrides.json é um arquivo JSON (JavaScript Object Notation) que contém substituições para várias configurações do serviço de Backup do Azure para SQL. Para uma restauração parcial como operação de arquivos , você deve adicionar um novo campo JSON, RecoveryPointsToBeExcludedForRestoreAsFiles
. Este campo contém um valor de cadeia de caracteres que indica quais tipos de ponto de recuperação devem ser excluídos na próxima operação de restauração como arquivos .
Na máquina de destino onde os arquivos devem ser baixados, vá para a pasta opt/msawb/bin .
Crie um novo arquivo JSON chamado ExtensionSettingOverrides.JSON, se ele ainda não existir.
Adicione o seguinte par de valores de chave JSON:
{ "RecoveryPointsToBeExcludedForRestoreAsFiles": "ExcludeFull" }
Altere as permissões e a propriedade do arquivo:
chmod 750 ExtensionSettingsOverrides.json chown root:msawb ExtensionSettingsOverrides.json
Não é necessário reiniciar qualquer serviço. O serviço de Backup do Azure tentará excluir tipos de backup na cadeia de restauração, conforme mencionado neste arquivo.
RecoveryPointsToBeExcludedForRestoreAsFiles
Usa apenas valores específicos, que denotam os pontos de recuperação a serem excluídos durante a restauração. Para o SAP HANA, esses valores são:
ExcludeFull
. Outros tipos de backup, como diferencial, incremental e logs, serão baixados, se estiverem presentes na cadeia de pontos de restauração.ExcludeFullAndDifferential
. Outros tipos de backup, como incrementais e logs, serão baixados, se estiverem presentes na cadeia de pontos de restauração.ExcludeFullAndIncremental
. Outros tipos de backup, como diferencial e logs, serão baixados, se estiverem presentes na cadeia de pontos de restauração.ExcludeFullAndDifferentialAndIncremental
. Outros tipos de backup, como logs, serão baixados, se estiverem presentes na cadeia de pontos de restauração.
Restaurar para um ponto específico no tempo
Se você selecionou Logs (Point in Time) como o tipo de restauração, faça o seguinte:
Selecione um ponto de recuperação no gráfico de log e, em seguida, selecione OK para escolher o ponto de restauração.
No menu Restaurar, selecione Restaurar para iniciar o trabalho de restauração.
Acompanhe o progresso da restauração na área Notificações ou acompanhe-o selecionando Restaurar trabalhos no menu do banco de dados.
Restaurar para um ponto de recuperação específico
Se você selecionou Full & Differential como o tipo de restauração, faça o seguinte:
Selecione um ponto de recuperação na lista e, em seguida, selecione OK para escolher o ponto de restauração.
No menu Restaurar, selecione Restaurar para iniciar o trabalho de restauração.
Acompanhe o progresso da restauração na área Notificações ou acompanhe-o selecionando Restaurar trabalhos no menu do banco de dados.
Nota
Nas restaurações do MDC (Multiple Database Container), depois que o banco de dados do sistema for restaurado para uma instância de destino, você precisará executar o script de pré-registro novamente. Em seguida, as restaurações subsequentes do banco de dados do locatário serão bem-sucedidas. Para saber mais, consulte Solucionar problemas de restauração de banco de dados de vários contêineres.
Restauro Entre Regiões
Como uma das opções de restauração, a CRR (Cross Region Restore) permite restaurar bancos de dados do SAP HANA hospedados em VMs do Azure em uma região secundária, que é uma região emparelhada do Azure.
Para começar a usar o recurso, consulte Definir restauração entre regiões.
Exibir itens de backup na região secundária
Se a CRR estiver habilitada, você poderá exibir os itens de backup na região secundária.
- No portal do Azure, vá para o cofre dos Serviços de Recuperação e selecione Itens de backup.
- Selecione Região secundária para exibir os itens na região secundária.
Nota
Somente os tipos de gerenciamento de backup que suportam o recurso CRR são mostrados na lista. Atualmente, apenas o suporte para restaurar dados de região secundária para uma região secundária é permitido.
Restaurar na região secundária
A experiência do usuário de restauração da região secundária é semelhante à experiência do usuário de restauração da região primária. Ao configurar os detalhes no painel Restaurar configuração , você será solicitado a fornecer apenas parâmetros de região secundária. Um vault deve existir na região secundária e o servidor SAP HANA deve ser registrado no vault na região secundária.
Nota
- Depois que a restauração for acionada e na fase de transferência de dados, o trabalho de restauração não poderá ser cancelado.
- A função e o nível de acesso necessários para executar uma operação de restauração em regiões cruzadas são a função Operador de Backup na assinatura e o acesso de Colaborador (gravação) nas máquinas virtuais de origem e de destino. Para exibir trabalhos de backup, o leitor de backup é a permissão mínima necessária na assinatura.
- O RPO (Recovery Point Objetive, objetivo de ponto de recuperação) para que os dados de backup estejam disponíveis na região secundária é de 12 horas. Portanto, quando você ativa a CRR, o RPO para a região secundária é de 12 horas + duração da frequência de log (que pode ser definida para um mínimo de 15 minutos).
Saiba mais sobre os requisitos mínimos de função para restauração entre regiões.
Monitorar trabalhos de restauração de região secundária
No portal do Azure, vá para Centro de backup e selecione Trabalhos de backup.
Para exibir os trabalhos na região secundária, filtre a Operação para CrossRegionRestore.
Restauração de assinatura cruzada
O Backup do Azure agora permite restaurar o Banco de Dados SAP HANA para qualquer assinatura (de acordo com os seguintes requisitos do Azure RBAC) a partir do ponto de restauração. Por padrão, o Backup do Azure restaura para a mesma assinatura em que os pontos de restauração estão disponíveis.
Com o Cross Subscription Restore (CSR), você tem a flexibilidade de restaurar para qualquer assinatura e qualquer cofre sob seu locatário se as permissões de restauração estiverem disponíveis. Por padrão, o CSR está habilitado em todos os cofres dos Serviços de Recuperação (cofres existentes e recém-criados).
Nota
- Você pode acionar a restauração entre assinaturas a partir do cofre dos Serviços de Recuperação.
- O CSR é suportado apenas para backups baseados em streaming/Backint e não é suportado para backup baseado em instantâneo.
- Não há suporte para CRR (Cross Regional Restore) com CSR.
Restauração de assinatura cruzada para um cofre habilitado para ponto final privado
Para executar a Restauração de Assinatura Cruzada para um cofre habilitado para Ponto Final Privado:
- No cofre dos Serviços de Recuperação de origem, vá para a guia Rede.
- Vá para a seção Acesso privado e crie pontos de extremidade privados.
- Selecione a assinatura do cofre de destino no qual você deseja restaurar.
- Na seção Rede Virtual, selecione a VNet da VM de destino que você deseja restaurar na assinatura.
- Crie o ponto de extremidade privado e acione o processo de restauração .
Requisitos do RBAC do Azure
Tipo de operação | Operador de cópias de segurança | Cofre dos Serviços de Recuperação | Operador alternativo |
---|---|---|---|
Restaurar banco de dados ou restaurar como arquivos | Virtual Machine Contributor |
VM de origem cujo backup foi feito | Em vez de uma função interna, você pode considerar uma função personalizada que tenha as seguintes permissões: - Microsoft.Compute/virtualMachines/write - Microsoft.Compute/virtualMachines/read |
Virtual Machine Contributor |
VM de destino na qual o banco de dados será restaurado ou os arquivos serão criados. | Em vez de uma função interna, você pode considerar uma função personalizada que tenha as seguintes permissões: - Microsoft.Compute/virtualMachines/write - Microsoft.Compute/virtualMachines/read |
|
Backup Operator |
Cofre dos Serviços de Recuperação de Destino |
Por padrão, o CSR está habilitado no cofre dos Serviços de Recuperação. Para atualizar as configurações de restauração do cofre dos Serviços de Recuperação, vá para Propriedades>Cross Subscription Restore e faça as alterações necessárias.
Restauração de assinatura cruzada usando a CLI do Azure
az backup vault create
Adicione o parâmetro cross-subscription-restore-state
que permite definir o estado CSR do vault durante a criação e atualização do vault.
az backup recoveryconfig show
Adicione o parâmetro --target-subscription-id
que permite fornecer a assinatura de destino como entrada ao acionar a restauração entre assinaturas para fontes de dados SQL ou HANA.
Exemplo:
az backup vault create -g {rg_name} -n {vault_name} -l {location} --cross-subscription-restore-state Disable
az backup recoveryconfig show --restore-mode alternateworkloadrestore --backup-management-type azureworkload -r {rp} --target-container-name {target_container} --target-item-name {target_item} --target-resource-group {target_rg} --target-server-name {target_server} --target-server-type SQLInstance --target-subscription-id {target_subscription} --target-vault-name {target_vault} --workload-type SQLDataBase --ids {source_item_id}