PostgreSQL - jak provést import a export (záloha databáze, pg_dump, pg_dumpall)
Používáme PostgreSQL server a chceme provést import a export dané databáze přes terminál. Dále bychom chtěli provádět pravidelnou zálohu PostgreSQL databází a to jak jednotlivě (pg_dump), tak všech databází najednou (pg_dumpall). Jak tyto operace provést?
#přihlášení k PostgreSQL
#import dump.sql do PostgreSQL databáze database2
#export PostgreSQL databáze database7
#export všech PostgreSQL databází
#cron je třeba nastavit pro uživatele postgres
ODPOVĚĎ
#přihlášení k PostgreSQL
sudo -i -u postgres
#import dump.sql do PostgreSQL databáze database2
psql database2 < /home/hanz/Downloads/dump.sql
#export PostgreSQL databáze database7
pg_dump database7 > /tmp/dump.sql
#export všech PostgreSQL databází
pg_dumpall > /tmp/dumpAll.sql
Ukázka zálohování PostgreSQL databází přes CRON
#cron je třeba nastavit pro uživatele postgres
su postgres
vim /home/postgres/backup.sh
name=$(date '+%y-%m-%d-%H-%M')
pg_dumpall > /mnt/data/backups/pgsql/$name.all.pgsql;
crontab -e
# m h dom mon dow command
43 23 * * * /home/postgres/backup.sh