Sembra che tu stia cercando di verificare la validità e la correttezza di un dump PostgreSQL che hai appena creato.
Il tuo principale malinteso è che non devi ripristinare il dump nello stesso database da cui lo hai creato . È possibile ripristinare su un altro database sullo stesso cluster o, per ulteriori paranoie, un database su un altro cluster (server). Verifica che il dump sia stato ripristinato senza errori e che i dati siano come ti aspetti.
Per ulteriore paranoia, ferma il server PostgreSQL e copia i file nella directory dei dati. In questo modo hai anche un backup a livello di file. Nota che le copie a livello di file delle directory di dati PostgreSQL possono solo essere letto dalla stessa versione principale (8.1/8.2/...) di PostgreSQL costruita con la stessa opzione sulla stessa piattaforma, quindi, se la datadir è da 9.2.x su Windows x64, può essere letta solo da un altro Windows host x64 con 9.2.x installato.
Se sei preoccupato per il tuo database originale, probabilmente non hai backup. Questo è un critico problema. Devi andare a leggere urgentemente il capitolo della documentazione sul backup e il ripristino e ottieni un buon automatizzato schema di backup in atto. Dai un'occhiata a barman .
Aggiorna dopo la modifica della domanda :
-F t
è una scelta strana; semplici dump SQL o -F c
di solito ha più senso.
Il file che hai prodotto non è un .gz
(compresso con gzip), comunque, è un .tar
archivio, non compresso. Può essere estratto in una directory piena di file SQL.
Per testarlo, usa pg_restore
per ripristinarlo in un nuovo database vuoto creato con createdb
o il CREATE DATABASE
comando.