Uma vez que o AlloyDB Omni é compatível com o PostgreSQL, os comandos e as técnicas de restauro de dados descritos no manual do Barman também se aplicam ao AlloyDB Omni. Esta página demonstra uma seleção de tarefas de recuperação comuns, com exemplos de comandos relevantes.
Para mais informações sobre a configuração do Barman para funcionar com o AlloyDB Omni, consulte o artigo Configure o Barman para o AlloyDB Omni.
Antes de começar
Antes de restaurar os dados do AlloyDB Omni, precisa do seguinte:
Um servidor de base de dados de destino que execute a mesma versão principal do AlloyDB Omni que o servidor de base de dados de origem. Para mais informações sobre a instalação do AlloyDB Omni, consulte o artigo Instale o AlloyDB Omni.
O servidor de destino pode ser a mesma máquina que o servidor de origem.
O utilitário
rsync
, instalado no servidor de destino.Um servidor de cópia de segurança do Barman com, pelo menos, uma cópia de segurança válida do Barman da base de dados AlloyDB Omni de origem.
Conetividade SSH entre o servidor de cópia de segurança do Barman e o servidor de destino.
Chaves SSH configuradas para permitir que o utilizador
barman
no servidor Barman se autentique com o servidor de destino como o respetivo utilizadorpostgres
sem uma palavra-passe.Espaço livre suficiente no disco do servidor de destino para armazenar a base de dados restaurada.
Recupere através de uma cópia de segurança específica
No servidor de destino, pare o AlloyDB Omni.
Docker
docker stop CONTAINER_NAME
Substitua
CONTAINER_NAME
pelo nome que atribuiu ao contentor do AlloyDB Omni quando o instalou, por exemplo,my-omni
.Podman
podman stop CONTAINER_NAME
Substitua
CONTAINER_NAME
pelo nome que atribuiu ao contentor do AlloyDB Omni quando o instalou, por exemplo,my-omni
.No servidor do Barman, escolha uma cópia de segurança a partir da qual restaurar. Para ver as cópias de segurança disponíveis, execute o comando
barman list-backups
. Para ver detalhes sobre uma cópia de segurança específica, execute o comandobarman show-backup
.Para recuperar a cópia de segurança escolhida no servidor AlloyDB Omni de destino, execute o comando
barman recover
.Quando executar o comando, inclua o seguinte:
- Use a opção de recuperação remota.
- Especifique o diretório de dados do servidor de destino como o diretório de destino.
O comando seguinte demonstra um exemplo de utilização de
barman recover
com o AlloyDB Omni:barman recover --remote-ssh-command "ssh postgres@TARGET_IP" TARGET_LABEL BACKUP_ID DATA_PATH
Substitua o seguinte:
TARGET_IP
: o endereço IP do servidor de destino.TARGET_LABEL
: a etiqueta que atribuiu ao servidor no ficheiro de configuração do Barman.BACKUP_ID
: o ID da cópia de segurança a partir da qual restaurar, identificado num passo anterior, por exemplo,20230810T210200
.DATA_PATH
: o caminho para o subdiretóriodata
do diretório de dados do servidor de destino, por exemplo,/home/your-username/alloydb-data/data
.
No servidor de base de dados de destino do AlloyDB Omni, inicie o serviço:
Docker
docker start CONTAINER_NAME
Podman
podman start CONTAINER_NAME
Após o reinício do serviço, estabeleça ligação ao servidor AlloyDB Omni. Deve ver as bases de dados e os dados restaurados.
Recuperar até um ponto específico no tempo
Para fazer uma recuperação num determinado momento, siga os mesmos passos indicados na secção anterior, com uma modificação. Quando executa o comando barman recover
, também tem de especificar uma das opções de recuperação num determinado momento do Barman.
O comando seguinte demonstra um exemplo de utilização de barman recover
com o AlloyDB Omni com uma opção de recuperação num determinado momento:
barman recover --remote-ssh-command "ssh postgres@TARGET_IP" TARGET_LABEL BACKUP_ID --target-time="RESTORE_TIMESTAMP" DATA_PATH
Substitua o seguinte:
TARGET_IP
: o endereço IP do servidor de destino.TARGET_LABEL
: a etiqueta que atribuiu ao servidor no ficheiro de configuração do Barman.BACKUP_ID
: o ID da cópia de segurança a partir da qual restaurar, identificado num passo anterior, por exemplo,20230810T210200
.TARGET_TIMESTAMP
: a hora para a qual restaurar, em qualquer formato PostgreSQLtimestamp
que especifique uma data e uma hora, por exemplo,2024-02-06 00:00:00
.DATA_PATH
: o caminho para o subdiretóriodata
do diretório de dados do servidor de destino, por exemplo,/home/your-username/alloydb-data/data
.