4. Sprawdź, czy możesz podłączyć się do nowo utworzonej bazy:

Tworzenie kopii zapasowej

Ćwiczenie 2.8.

Tworzenie kopii zapasowych jest jednym z podstawowych obowiązków administratora bazy danych. Niezależnie od tego, ile wydano pieniędzy na niezawodny sprzęt, zawsze istnieje możliwość jego awarii i utraty danych. Ponadto, niedoświadczony użytkownik może usunąć lub zmodyfikować wszystkie dane przechowywane w pewnej tabeli niezgodnie ze swoimi zamierzeniami. Wreszcie, każdy nawet najlepiej zabezpieczony system po podłączaniu do internetu może stać się przedmiotem udanego ataku pirata komputerowego. W każdej z tych sytuacji najszybszą (a czasami jedyną) metodą ponownego uruchomienia bazy danych jest jej odtworzenie z aktualnej kopii zapasowej.

SZBD PostreSQL umożliwia tworzenie logicznych kopii zapasowych baz danych bez konieczności wyłączania systemu. Służą do tego polecenia pgjdump oraz pgjdumpall.

Najprostszym sposobem wykonania kopii zapasowej bazy danych jest wydanie polecenia pgjdump:

1. Upewnij się, że SZBD PostgreSQL został pomyślnie uruchomiony.

2. Zaloguj się na konto użytkownika postgres:

3. Utwórz kopię zapasową wybranej bazy danych:

4. W katalogu domowym użytkownika, który wykonał kopię bazy danych utworzony został plik test.bak.

Działanie narzędzia pgdump polega na utworzeniu skryptu złożonego z poleceń SQL oraz wewnętrznych poleceń programu psql, które po wykonaniu odtworzą całość bazy danych. Skrypt wynikowy jest zapisany w postaci tekstowej.

Oprócz wykonywania kopii bezpieczeństwa baz danych użytkownika należy zabezpieczyć się na wypadek uszkodzenia systemowej bazy danych template1. Za pomocą polecenia pgdumpall można wykonać kopię zapasową wszystkich baz danych w całej instalacji (włącznie z bazą systemową i tabelami systemowymi). Operację tę może przeprowadzić jedynie administrator SZBD PostgreSQL (a nie administrator poszczególnych baz danych):

