PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

ClusterControl — zaawansowane zarządzanie kopiami zapasowymi — PostgreSQL

Informacja jest jednym z najcenniejszych zasobów w firmie, więc będziesz potrzebować dobrego planu odzyskiwania danych po awarii (DRP), aby zapobiec utracie danych w razie wypadku lub awarii sprzętu. Kopie zapasowe są podstawowym krokiem we wszystkich planach DR, ale zarządzanie nimi i ich monitorowanie może być trudnym zadaniem, jeśli masz złożone środowisko.

ClusterControl posiada wiele funkcji zaawansowanego zarządzania kopiami zapasowymi (m.in. ważne funkcje, takie jak automatyczne przełączanie awaryjne, monitorowanie itp.), które pozwalają nie tylko wykonywać różne typy kopii zapasowych na różne sposoby, ale także kompresować, szyfruj, weryfikuj, a nawet więcej.

W tym blogu zobaczymy, jak wykorzystać ClusterControl do zaawansowanego zarządzania kopiami zapasowymi w klastrze bazy danych PostgreSQL.

Typy kopii zapasowych

Najpierw wspomnijmy, jakich typów kopii zapasowych można używać do ochrony danych.

  • logiczne:kopia zapasowa jest przechowywana w formacie czytelnym dla człowieka, takim jak SQL.

  • Fizyczne:Kopia zapasowa zawiera dane binarne.

  • Pełna/przyrostowa/różnicowa:Definicja tych trzech typów kopii zapasowych jest zawarta w nazwie. Pełna kopia zapasowa to pełna kopia wszystkich Twoich danych. Przyrostowa kopia zapasowa tworzy kopie zapasowe tylko tych danych, które uległy zmianie od czasu wykonania poprzedniej kopii zapasowej, a różnicowa kopia zapasowa zawiera tylko te dane, które uległy zmianie od ostatniego wykonania pełnej kopii zapasowej. Przyrostowe i różnicowe kopie zapasowe zostały wprowadzone jako sposób na zmniejszenie ilości czasu i miejsca na dysku potrzebnego do wykonania pełnej kopii zapasowej.

  • Zgodność z odzyskiwaniem punktu w czasie:PITR obejmuje przywracanie bazy danych w dowolnym momencie z przeszłości. Aby to zrobić, musisz przywrócić pełną kopię zapasową, a następnie zastosować wszystkie zmiany, które nastąpiły po utworzeniu kopii zapasowej, aż do momentu tuż przed awarią.

Korzystając z ClusterControl, możesz wykonać wszystkie te typy kopii zapasowych dla swojej bazy danych PostgreSQL, a nawet połączyć je, aby ulepszyć swoją strategię tworzenia kopii zapasowych.

Funkcje zarządzania kopiami zapasowymi ClusterControl

Teraz zobaczmy, jak ClusterControl może pomóc w zarządzaniu wszystkimi różnymi typami kopii zapasowych z tego samego przyjaznego dla użytkownika interfejsu użytkownika i systemu.

Zakładamy, że masz zainstalowany serwer ClusterControl i zarządza on twoim klastrem PostgreSQL. W przeciwnym razie możesz skorzystać z naszej oficjalnej dokumentacji, aby zainstalować ClusterControl i wdrożyć lub zaimportować swój klaster PostgreSQL za jego pomocą.

Tworzenie kopii zapasowej

W tym celu przejdź do ClusterControl -> Wybierz swój klaster PostgreSQL -> Kopia zapasowa -> Utwórz kopię zapasową.

Możesz utworzyć nową kopię zapasową lub skonfigurować zaplanowaną. W naszym przykładzie natychmiast utworzymy pojedynczą kopię zapasową.

Tutaj masz jedną metodę dla każdego typu kopii zapasowej, o której wspominaliśmy wcześniej.

Typ kopii zapasowej

Narzędzie

Definicja

logiczne

pg_dumpall

Jest to narzędzie do zapisywania wszystkich baz danych PostgreSQL klastra w jednym pliku skryptu. Plik skryptu zawiera polecenia SQL, których można użyć do przywrócenia baz danych.

Fizyczne

pg_basebackup

Służy do tworzenia binarnej kopii plików klastra bazy danych, jednocześnie upewniając się, że system jest automatycznie włączany i wyłączany z trybu tworzenia kopii zapasowej. Kopie zapasowe są zawsze wykonywane z całego klastra bazy danych działającego klastra bazy danych PostgreSQL. Są one pobierane bez wpływu na innych klientów w bazie danych.

Pełny/Przyrost/Różnica

pgbackrest

Jest to proste, niezawodne rozwiązanie do tworzenia kopii zapasowych i przywracania danych, które można bezproblemowo skalować do największych baz danych i obciążeń dzięki wykorzystaniu algorytmów zoptymalizowanych pod kątem specyficznych wymagań bazy danych. Jedną z najważniejszych funkcji jest obsługa pełnych, przyrostowych i różnicowych kopii zapasowych.

PITR

pg_basebackup + WAL

Aby utworzyć kopię zapasową zgodną z PITR, ClusterControl użyje pg_basebackup i plików WAL, aby móc przywrócić bazę danych w dowolnym momencie w przeszłości.

Musisz wybrać jedną metodę, serwer, z którego zostanie pobrana kopia zapasowa i gdzie chcesz przechowywać kopię zapasową. Możesz również przesłać kopię zapasową do chmury (AWS, Google Cloud lub Azure) w tym samym zadaniu kopii zapasowej, włączając odpowiednią opcję.

Następnie możesz określić kompresję, szyfrowanie i okres przechowywania kopie zapasowe.

W sekcji kopii zapasowej można zobaczyć postęp tworzenia kopii zapasowej oraz informacje takie jak metoda, rozmiar, lokalizacja i inne.

Przywracanie kopii zapasowej

Po zakończeniu tworzenia kopii zapasowej możesz ją przywrócić za pomocą ClusterControl. W tym celu w sekcji kopii zapasowej (ClusterControl -> Wybierz Klaster PostgreSQL -> Kopia zapasowa) możesz wybrać opcję Przywróć kopię zapasową lub bezpośrednio Przywróć kopię zapasową, którą chcesz przywrócić.

Masz trzy opcje przywrócenia kopii zapasowej. Możesz go przywrócić w istniejącym węźle bazy danych, przywrócić i zweryfikować kopię zapasową na samodzielnym hoście lub utworzyć nowy klaster z kopii zapasowej.

Jeśli próbujesz przywrócić kopię zapasową zgodną z PITR, musisz również określić godzinę.

Dane zostaną przywrócone tak, jak w określonym czasie. Weź pod uwagę, że używana jest strefa czasowa UTC i że usługa PostgreSQL zostanie ponownie uruchomiona w węźle docelowym.

Możesz monitorować postęp przywracania w sekcji Aktywność na serwerze ClusterControl.

Automatyczna weryfikacja kopii zapasowej

Kopia zapasowa nie jest kopią zapasową, jeśli nie można jej przywrócić. Weryfikowanie kopii zapasowych to coś, co zwykle jest przez wielu zaniedbywane. Zobaczmy, jak ClusterControl może zautomatyzować weryfikację kopii zapasowych PostgreSQL i uniknąć niespodzianek w przypadku konieczności ich przywrócenia.

W ClusterControl wybierz swój klaster i przejdź do sekcji Kopia zapasowa, a następnie wybierz Utwórz kopię zapasową.

Funkcja automatycznej weryfikacji kopii zapasowej jest dostępna dla zaplanowanych kopii zapasowych. Wybierzmy więc opcję Zaplanuj tworzenie kopii zapasowych.

Podczas planowania kopii zapasowej, oprócz wybrania typowych opcji, takich jak metoda lub pamięć, należy również określić harmonogram/częstotliwość.

W następnym kroku możesz skompresować i zaszyfrować kopię zapasową oraz określić okres przechowywania. Tutaj masz również funkcję Zweryfikuj kopię zapasową.

Aby korzystać z tej funkcji, potrzebujesz dedykowanego hosta (lub maszyny wirtualnej), nie jest częścią klastra.

ClusterControl zainstaluje oprogramowanie i przywróci kopię zapasową na tym hoście. Możesz pozostawić ten węzeł uruchomiony do testowania lub raportowania albo wyłączyć go do następnego zadania weryfikacji.

Po przywróceniu możesz zobaczyć ikonę weryfikacji w sekcji ClusterControl Backup.

Wnioski

Kopie zapasowe są obowiązkowe w każdym środowisku, ponieważ pomagają chronić dane. Aby nimi zarządzać, ważne jest, aby mieć dobre narzędzie z zaawansowanymi funkcjami tworzenia kopii zapasowych, aby było to tak proste, jak to tylko możliwe.

ClusterControl ma wiele funkcji, które pomogą Ci w tym zadaniu, takich jak planowanie kopii zapasowych, monitorowanie, weryfikacja kopii zapasowych i wiele innych. Obsługuje również różne metody tworzenia kopii zapasowych i można je łączyć, aby mieć dobry DRP.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy zapytania typu SELECT są jedynym typem, który można zagnieżdżać?

  2. Jak za pomocą postgres przekonwertować interwał na liczbę godzin?

  3. Posiadanie grup według klauzul — GeneralBits elein

  4. nie można utworzyć automatycznego przyrostowego klucza podstawowego za pomocą flask-sqlalchemy

  5. PostgreSQL:Jak ustawić search_path na poziomie użytkownika?