Próbowałem wielu różnych rozwiązań do przywracania kopii zapasowej Postgres. Natknąłem się na odmowę zgody na MacOS, żadne rozwiązanie nie działało.
Oto jak udało mi się to uruchomić:
Postgres jest dostarczany z Pgadmin4. Jeśli używasz systemu macOS, możesz nacisnąć CMD
+ SPACE
i wpisać, pgadmin4
aby go uruchomić. Spowoduje to otwarcie karty przeglądarki w chrome.
Jeśli wystąpią błędy przy uruchamianiu pgadmin4, spróbuj killall pgAdmin4
w swoim terminalu, a następnie spróbuj ponownie.
Kroki do uzyskania kopii zapasowej / przywracania pgadmin4 +
1. Utwórz kopię zapasową
Zrób to, klikając bazę danych prawym przyciskiem myszy -> „kopia zapasowa”
2. Nadaj plikowi nazwę.
Jak test12345
. Kliknij kopię zapasową. Tworzy to zrzut pliku binarnego, nie ma .sql
formatu
3. Zobacz, gdzie został pobrany
W prawym dolnym rogu ekranu powinno być wyskakujące okienko. Kliknij stronę „więcej szczegółów”, aby zobaczyć, gdzie została pobrana kopia zapasowa
4. Znajdź lokalizację pobranego pliku
W tym przypadku tak jest /users/vincenttang
5. Przywróć kopię zapasową z pgadmin
Zakładając, że poprawnie wykonałeś kroki od 1 do 4, będziesz mieć plik binarny przywracania. Może się zdarzyć, że Twój współpracownik będzie chciał użyć pliku przywracania na swoim komputerze lokalnym. Powiedz tej osobie, aby poszła do pgadmin i przywróciła
Zrób to, klikając bazę danych prawym przyciskiem myszy -> „przywróć”
6. Wybierz wyszukiwarkę plików
Pamiętaj, aby ręcznie wybrać lokalizację pliku, NIE przeciągaj i nie upuszczaj pliku na pola programu przesyłającego w pgadmin. Ponieważ napotkasz uprawnienia do błędu. Zamiast tego znajdź właśnie utworzony plik:
7. Znajdź wspomniany plik
Może być konieczna zmiana filtra u dołu na „Wszystkie pliki”. Znajdź plik od kroku 4. Teraz naciśnij prawy przycisk „Wybierz”, aby potwierdzić
8. Przywróć wspomniany plik
Ponownie zobaczysz tę stronę z wybraną lokalizacją pliku. Śmiało i przywróć go
9. Sukces
Jeśli wszystko jest w porządku, w prawym dolnym rogu powinien wyskoczyć wskaźnik pokazujący udane przywracanie. Możesz przejść do swoich tabel, aby sprawdzić, czy dane zostały przywrócone dla każdej tabeli.
10. Jeśli to się nie powiedzie:
Jeśli krok 9 nie powiedzie się, spróbuj usunąć stary schemat publiczny z bazy danych. Przejdź do „Narzędzia do wysyłania zapytań”
Wykonaj ten blok kodu:
DROP SCHEMA public CASCADE; CREATE SCHEMA public;
Teraz spróbuj ponownie wykonać kroki od 5 do 9, powinno się to udać
Podsumowanie
W ten sposób musiałem wykonać kopię zapasową / przywrócić kopię zapasową na Postgres, gdy miałem problemy z uprawnieniami do błędów i nie mogłem zalogować się jako administrator. Lub ustaw poświadczenia do odczytu / zapisu przy użyciu chmod
folderów. Ten przepływ pracy działa dla domyślnego zrzutu pliku binarnego „Niestandardowy” z pgadmin. Zakładam, że .sql
jest tak samo, ale jeszcze tego nie przetestowałem
ERROR: syntax error at or near "t"
. Okazało się, że zaimportowałem tylko częściowy schemat, dlategoCREATE TABLE
nie udało się wypowiedzieć wcześniej w skrypcie. Przejrzyj pełne dane wyjściowe importu, aby je znaleźć.