pg_dump
por defecto crea los comandos sql necesarios para recrear los datos. Para recuperarlo, solo necesita invocar psql
(no pg_restore
) con el archivo como entrada. pg_restore
solo se debe utilizar para el formato binario (no predeterminado y menos habitual no recomendado ) de pg_dump
. Lee los documentos .
Actualización: pg_dump
los formatos binarios ( -Fc
-Ft
) que se utilizarán pg_restore
están bien y ofrecen cierta flexibilidad adicional. Pero son menos estándar (no SQL), menos aptos para importar desde algunas herramientas (por ejemplo, una interfaz php) o manipularse con un editor de texto, y un poco menos portátiles para otras versiones e incluso otras bases de datos. Para las copias de seguridad, me quedaría con el formato plano predeterminado. Para otros escenarios, la opción binary + pg_restore puede ser igual o más adecuada.
El punto a tener en cuenta es que en Postgresql, en el escenario típico , la copia de seguridad normalmente se realiza mediante pg_dump (plain) y la restauración con el cliente de línea de comando estándar ( psql ).