Nie wspomniałeś, jak wykonano kopię zapasową, więc ogólna odpowiedź brzmi:Zazwyczaj z psql narzędzie.
W zależności od tego, co pg_dump polecono zrzucić, plik SQL może zawierać różne zestawy poleceń SQL. Na przykład, jeśli poinstruujesz pg_dump zrzucić bazę danych za pomocą --clean i --schema-only , nie można oczekiwać, że będzie można przywrócić bazę danych z tego zrzutu, ponieważ nie będzie żadnych poleceń SQL do KOPIOWANIA (lub WSTAWIANIA, jeśli --inserts jest używany ) rzeczywiste dane w tabelach. Taki zrzut będzie zawierał tylko polecenia DDL SQL i będzie w stanie odtworzyć schemat, ale nie rzeczywiste dane.
Typowy zrzut SQL jest przywracany za pomocą psql :
psql (connection options here) database < yourbackup.sql
lub alternatywnie z psql sesja,
psql (connection options here) database
database=# \i /path/to/yourbackup.sql
W przypadku kopii zapasowych wykonanych za pomocą pg_dump -Fc ("format niestandardowy"), który nie jest zwykłym plikiem SQL, ale skompresowanym plikiem, musisz użyć pg_restore narzędzie.
Jeśli pracujesz na uniksie, spróbuj tego:
man psql
man pg_dump
man pg_restore
w przeciwnym razie spójrz na dokumentację html. Powodzenia!