Como AlloyDB Omni es compatible con PostgreSQL, los comandos y las técnicas de restauración de datos que se describen en el manual de Barman también se aplican a AlloyDB Omni. En esta página se muestra una selección de tareas de recuperación habituales, con ejemplos de comandos relevantes.
Para obtener más información sobre cómo configurar Barman para que funcione con AlloyDB Omni, consulta el artículo sobre cómo configurar Barman para AlloyDB Omni.
Antes de empezar
Antes de restaurar tus datos de AlloyDB Omni, necesitas lo siguiente:
Un servidor de base de datos de destino que ejecute la misma versión principal de AlloyDB Omni que el servidor de base de datos de origen. Para obtener más información sobre cómo instalar AlloyDB Omni, consulta Instalar AlloyDB Omni.
El servidor de destino puede ser el mismo que el de origen.
La utilidad
rsync
, instalada en el servidor de destino.Un servidor de copias de seguridad de Barman con al menos una copia de seguridad válida de Barman de la base de datos de AlloyDB Omni de origen.
Conectividad SSH entre el servidor de copia de seguridad de Barman y el servidor de destino.
Claves SSH configuradas para permitir que el usuario
barman
del servidor Barman se autentique con el servidor de destino como usuariopostgres
sin contraseña.Suficiente espacio libre en el disco del servidor de destino para alojar la base de datos restaurada.
Recuperar con una copia de seguridad específica
En el servidor de destino, detén AlloyDB Omni.
Docker
docker stop CONTAINER_NAME
Sustituye
CONTAINER_NAME
por el nombre que asignaste al contenedor de AlloyDB Omni cuando lo instalaste (por ejemplo,my-omni
).Podman
podman stop CONTAINER_NAME
Sustituye
CONTAINER_NAME
por el nombre que asignaste al contenedor de AlloyDB Omni cuando lo instalaste (por ejemplo,my-omni
).En el servidor Barman, elige una copia de seguridad para restaurar. Para ver las copias de seguridad disponibles, ejecuta el comando
barman list-backups
. Para ver los detalles de una copia de seguridad concreta, ejecuta el comandobarman show-backup
.Para recuperar la copia de seguridad elegida en el servidor de AlloyDB Omni de destino, ejecuta el comando
barman recover
.Cuando ejecutes el comando, incluye lo siguiente:
- Usa la opción de recuperación remota.
- Especifica el directorio de datos del servidor de destino como directorio de destino.
El siguiente comando muestra un ejemplo de uso de
barman recover
con AlloyDB Omni:barman recover --remote-ssh-command "ssh postgres@TARGET_IP" TARGET_LABEL BACKUP_ID DATA_PATH
Haz los cambios siguientes:
TARGET_IP
: la dirección IP del servidor de destino.TARGET_LABEL
: la etiqueta que has asignado al servidor en el archivo de configuración de Barman.BACKUP_ID
: el ID de la copia de seguridad desde la que se va a restaurar, que se ha identificado en un paso anterior. Por ejemplo,20230810T210200
.DATA_PATH
: la ruta a la subcarpetadata
del directorio de datos del servidor de destino. Por ejemplo,/home/your-username/alloydb-data/data
.
En el servidor de la base de datos de destino de AlloyDB Omni, inicia el servicio:
Docker
docker start CONTAINER_NAME
Podman
podman start CONTAINER_NAME
Una vez que se haya reiniciado el servicio, conéctate a tu servidor AlloyDB Omni. Deberías ver las bases de datos y los datos restaurados.
Recuperar a un momento dado
Para realizar una recuperación a un momento dado, sigue los mismos pasos que se indican en la sección anterior, con una modificación. Cuando ejecutes el comando barman recover
, también debes especificar una de las opciones de recuperación a un momento dado de Barman.
El siguiente comando muestra un ejemplo de uso de barman recover
con AlloyDB Omni con una opción de recuperación a un momento dado:
barman recover --remote-ssh-command "ssh postgres@TARGET_IP" TARGET_LABEL BACKUP_ID --target-time="RESTORE_TIMESTAMP" DATA_PATH
Haz los cambios siguientes:
TARGET_IP
: la dirección IP del servidor de destino.TARGET_LABEL
: la etiqueta que has asignado al servidor en el archivo de configuración de Barman.BACKUP_ID
: el ID de la copia de seguridad desde la que se va a restaurar, que se ha identificado en un paso anterior. Por ejemplo,20230810T210200
.TARGET_TIMESTAMP
: la hora a la que se va a restaurar, en cualquier formato de PostgreSQLtimestamp
que especifique tanto una fecha como una hora. Por ejemplo,2024-02-06 00:00:00
.DATA_PATH
: la ruta a la subcarpetadata
del directorio de datos del servidor de destino. Por ejemplo,/home/your-username/alloydb-data/data
.