Zálohování PostgreSQL databáze pomocí nástroje pg_dump

Zálohování PostgreSQL databáze pomocí nástroje pg_dump

Publikováno: 4.7.2012

PostgreSQL je robustní, otevřená opensource databáze a stejně jako jiné databázové stroje (jako např. MySQL), poskytuje nástroje pro vytvoření zálohy.

Následující postupy jsou testovány v distribuci Ubuntu server 12.04.

Přihlášení

Nejprve je nutné přihlásit se ke správnému účtu.

To obstará následující příkaz:

$ sudo su - postgres

Můžete si zobrazit existující databáze:

$ psql -l

Výpis ukončíte klávesou q.

Záloha pomocí pg_dump

Zálohování databáze provedete použitím pg_dump příkazu. V jednom kroku lze vždy zálohovat pouze jednu databázi.

Obecná syntaxe:
pg_dump databaze > Výstupní_soubor

Pro zálohování databáze users použijte následující příkaz:

$ pg_dump users > users.dump.out 

Pro obnovení databáze users použijte:

$ psql -d users -f users.dump.out 

Další způsob:

$ pg_dump -U postgres users -f users.sql

UPDATE 14.9.2012

$ sudo -u postgres pg_dump users > /home/users.dump.sql

Obnovení:

$ psql -U postgres -d users -f ussrs.sql

Záloha jedné tabulky

Zálohování tabulky groups v databázi users:

$ pg_dump --table groups -U postgres users -f groups.sql

Obnovení:

$ psql -f groups.sql postgres

Použití komprese

$ pg_dump users | gzip -c > users.dump.out.gz

Pro obnovení databáze users použijte:

$ gunzip users.dump.out.gz

$ psql -d users -f users.dump.out

Využití příkazu pg_dumpall

Další možností je příkaz pg_dumpall. Jak název napovídá, příiaz zálohuje všechny databáze najednou.

Použití je následující:

$ pg_dumpall > all.dbs.out

nebo

$ pg_dumpall | gzip -c > all.dbs.out.gz

Pro obnovení ze zálohy použijte:

$ psql -f all.dbs.out postgres

Nahoru
Tento web používá k poskytování služeb a analýze návštěvnosti soubory cookie. Používáním tohoto webu s tímto souhlasíte. Další informace