Ir al contenido principal
Documentos
Funciones de cadenaDesencadenaBases de datosFunciones JSONFunciones matemáticasFunciones de fechaÍndicesSintaxis básicaGestión de Tablas y Esquemas

PostgreSQL pg_restore

`pg_restore` de PostgreSQL es una utilidad para restaurar una base de datos PostgreSQL a partir de un archivo creado por `pg_dump`. Se utiliza para reconstruir la base de datos a su estado original a partir de un archivo de copia de seguridad.

Utilización

La herramienta `pg_restore` se emplea cuando necesitas restaurar datos de un archivo de copia de seguridad en una base de datos PostgreSQL. Admite varios formatos de archivo (por ejemplo, personalizado, directorio, tar) y opciones para controlar lo que se restaura.

bash
pg_restore [options] backup_file

En esta sintaxis, `fichero_backup` especifica el fichero de archivo desde el que se va a restaurar, y `[opciones]` incluye varias opciones para ajustar el proceso de restauración.

Ejemplos

1. Restauración básica

bash
pg_restore -d mydatabase mybackup.dump

Esto restaura todo el contenido de `mybackup.dump` en la base de datos `mydatabase`.

2. Restaurar con esquema específico

bash
pg_restore -d mydatabase --schema=public mybackup.dump

Este comando restaura sólo el esquema `público` de `mybackup.dump` en `mydatabase`, lo que permite una restauración selectiva.

3. Restaurar con trabajos paralelos

bash
pg_restore -d mydatabase -j 4 mybackup.dump

Aquí, la opción `-j 4` permite el procesamiento en paralelo con cuatro trabajos, lo que acelera la restauración de bases de datos grandes.

4. Restaurar con tabla específica

bash
pg_restore -d mydatabase --table=mytable mybackup.dump

Este comando restaura sólo la tabla "mitabla" de "mibackup.dump" en "mibase de datos".

5. Restaurar sólo datos

bash
pg_restore -d mydatabase --data-only mybackup.dump

Esta opción restaura sólo los datos, sin crear ningún objeto de esquema de base de datos.

6. Restaurar sólo esquema

bash
pg_restore -d mydatabase --schema-only mybackup.dump

Esta opción sólo restaura los objetos del esquema, excluyendo los datos.

Consejos y buenas prácticas

  • Utiliza el formato correcto. Asegúrate de que el formato de archivo del fichero de copia de seguridad coincide con las capacidades de `pg_restore`.
  • Prueba regularmente las restauraciones. Realiza restauraciones de prueba para verificar que tus copias de seguridad son válidas y pueden restaurarse como se espera.
  • Aprovecha los trabajos paralelos. Utiliza la opción `-j` para acelerar la restauración, especialmente en bases de datos grandes.
  • Restauración selectiva. Utiliza opciones como `--table`, `--schema`, `--data-only` o `--schema-only` para restaurar partes concretas de la base de datos cuando no sea necesaria una restauración completa.
  • Comprueba las dependencias. Ten en cuenta las dependencias de objetos al restaurar tablas o esquemas concretos para evitar que falten referencias. Considera la posibilidad de utilizar la opción `--disable-triggers` para gestionar eficazmente las dependencias durante las restauraciones de sólo datos.
  • Tratamiento de errores. Los errores más comunes durante la restauración son la falta de espacios de tablas o de roles. Asegúrate de que el entorno de la base de datos de destino coincide con la configuración original. Utiliza los archivos de registro para diagnosticar y solucionar errores.