
Questo è un documento di ‘come fare’ che fornisce solo comandi esemplificativi; come viene effettivamente fatto dipende esclusivamente dalla persona che lo esegue e dai casi d'uso specifici.
Innanzitutto, un disclaimer. Questo post fornisce una guida generale su come eseguire il backup di una tabella del database Postgres. Gli esempi forniti non si riferiscono a nessuna tabella o database specifico. Se stai cercando di eseguire il backup di una tabella specifica, dovresti anche eseguire il backup delle tabelle che fanno riferimento alle tabelle originali. Poiché Postgres è un database relazionale, ci saranno sempre riferimenti tra diversi tavoli.
Questo è un documento 'come fare' che fornisce solo comandi di esempio, come viene effettivamente fatto dipende esclusivamente dalla persona che lo fa e dai casi d'uso specifici. Mantieni sempre l'integrità dei dati che stai cercando di recuperare. Eseguire il backup dell'intero database è sempre un'opzione sicura, ma quando si eseguono backup di tabelle specifiche bisogna essere attenti.
SQL-dump/pg_dump:
L'idea alla base del metodo SQL-dump è quella di generare un file di testo con i comandi SQL che, se restituiti al server, ricreeranno il database nello stesso stato in cui si trovava al momento del dump. PostgreSQL fornisce il programma utilità pg_dump per questo scopo.
pg_dump è uno strumento efficace e completo per eseguire backup del database Postgres e utilizzare i backup per ripristinare il database postgres. Tuttavia, non è limitato al solo Database. Possiamo usare pg_dump per eseguire il backup delle tabelle e quindi usarlo per ripristinare anche le singole tabelle. Utilizzando pg_dump è possibile eseguire il backup del database locale e ripristinarlo su un database remoto.
Come eseguire il backup di un database Postgres:
How to Restore Postgres Database
Ripristina una tabella Postgres :
$ /opt/msys/3rdParty/bin/psql -U ecuser -f ms_table.sql pe
Il comando sopra installerà la tabella che era stata salvata nel file ms_table.sql nel database ‘pe’. Assicurati che questa tabella non esista già, altrimenti vedrai una serie di errori ‘già esistente’. Questo comando crea la tabella ed esporta tutti i dati nella tabella appena creata.
Ripristina un Database postgres :
$ /opt/msys/3rdParty/bin/psql -U ecuser -d pe -f pe_dump.sql
Simile al ripristino della tabella, possiamo usare il comando sopra per ripristinare il database completo. Qui stiamo ripristinando il database ‘pe’ utilizzando il file pe_dump.sql che avevamo creato durante il backup del database nella sezione Backup sopra.
Ripristina tutti i Database :
$ /opt/msys/3rdParty/bin/psql -u ecuser -f all_dump.sql
Ripristina tutti i database usando il comando sopra. ‘all_dump.sql’ era il file che era stato creato usando pg_dumpall. Il comando sopra ci darà tutti i database Postgres esattamente nello stato in cui si trovavano quando è stato eseguito un dump dal server di database originale.