PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come ripristinare il file di dump di PostgreSQL nei database di Postgres?

Non hai menzionato come è stato eseguito il backup, quindi la risposta generica è:Di solito con psql strumento.

A seconda di cosa pg_dump è stato richiesto di eseguire il dump, il file SQL può avere diversi set di comandi SQL. Ad esempio, se si istruisce pg_dump per eseguire il dump di un database usando --clean e --schema-only , non puoi aspettarti di essere in grado di ripristinare il database da quel dump poiché non ci saranno comandi SQL per la COPIA (o INSERT se --inserts viene utilizzato ) i dati effettivi nelle tabelle. Un dump del genere conterrà solo comandi SQL DDL e sarà in grado di ricreare lo schema ma non i dati effettivi.

Un tipico dump SQL viene ripristinato con psql :

psql (connection options here) database  < yourbackup.sql

o in alternativa da un psql sessione,

psql (connection options here) database
database=# \i /path/to/yourbackup.sql

Nel caso di backup effettuati con pg_dump -Fc ("formato personalizzato"), che non è un semplice file SQL ma un file compresso, devi usare il pg_restore strumento.

Se stai lavorando su un tipo Unix, prova questo:

man psql
man pg_dump
man pg_restore

in caso contrario, dai un'occhiata ai documenti html. Buona fortuna!