CodeGym /Kursy /SQL SELF /Wprowadzenie do backupu (kopii zapasowych)

Wprowadzenie do backupu (kopii zapasowych)

SQL SELF
Poziom 43 , Lekcja 0
Dostępny

No więc, ekipo, znowu czas na świetne historie. Bez ironii! Wyobraź sobie, że twoja baza danych to książka, w której trzymasz cenne informacje. Co się stanie, jeśli przypadkiem wyrwiesz strony z tej książki albo jeśli smok ją spali (albo dysk twardy nagle uzna, że to idealny moment na awarię)? W każdym przypadku, czy to realnym, czy fantastycznym, tracisz dane. I tu właśnie wchodzą backupy — taki „zabezpieczający sznur” dla twoich danych.

Backup, czyli po prostu robienie kopii zapasowej, to proces zapisywania danych do osobnego pliku lub w inne miejsce, żeby w razie nieprzewidzianej sytuacji można je było odzyskać.

Backupy to twoje ubezpieczenie na wypadek, gdyby coś poszło nie tak. Pozwalają przywrócić dane po awarii sprzętu lub softu, cofnąć przypadkowe błędy jak nieuważny DELETE bez WHERE, a także spokojnie przenosić bazę między serwerami — na przykład z development na production. Poza tym backupy często służą do archiwizowania starych danych, jeśli trzeba je zachować „na wszelki wypadek” albo dla historii. Bez nich w krytycznym momencie możesz zostać z niczym.

Ryzyka utraty danych

Pogadajmy o prawdziwych zagrożeniach, które mogą zniszczyć twoje dane. To nie żarty! Oto kilka przykładów, które na pewno wywołają zimny pot u każdego admina baz danych:

Awaria sprzętu. Dyski twarde się psują, pendrive'y giną, a serwery czasem postanawiają „pójść na urlop” na zawsze.

Błędy użytkowników.

Kiedy developer przypadkiem odpala zapytanie typu:

DELETE FROM studenci;

bez użycia WHERE. Gratulacje, właśnie usunąłeś wszystkich studentów! (Mam nadzieję, że nie jesteś adminem bazy danych).

Ataki złośliwego oprogramowania.
Hakerzy mogą zaatakować twój system, zaszyfrować dane albo je usunąć.

Katastrofy naturalne.
Brzmi jak scenariusz filmu, ale trzęsienie ziemi albo powódź może zniszczyć twoje serwery.

I oczywiście, poczucie bezpieczeństwa nigdy nie zaszkodzi. Lepiej raz ustawić backup niż potem próbować odtworzyć bazę od zera, licząc, że uda się przekonać smoka do oddania twoich danych.

Podstawowe scenariusze użycia backupów

Teraz, gdy już wiesz, po co są backupy, zobaczmy najważniejsze sytuacje, w których ratują skórę.

Odzyskiwanie danych po awarii

Pracujesz, nagle wszystko pada — baza danych, serwer, internet. Awaria! Bez backupu siedzisz i zastanawiasz się, gdzie masz ostatnią wersję danych. Z backupem możesz szybko przywrócić system. Zwykle używa się wtedy kopii danych zrobionej przed awarią. Na przykład:

  • Całkowita awaria serwera. Przywracasz całą bazę danych z kopii zapasowej.
  • Uszkodzenie pojedynczych tabel. Przywracasz tylko potrzebne tabele.

Przenoszenie danych między serwerami

Wyobraź sobie, że musisz przenieść bazę z jednego serwera na drugi: na przykład przy wymianie sprzętu albo stawianiu nowego serwera. W takich przypadkach backupy szybko załatwiają sprawę. Robisz kopię na starym serwerze, a potem odtwarzasz ją na nowym.

Przykład komendy do zrobienia backupu bazy danych:

pg_dump -U postgres -d university -f university_backup.sql

Powyższa komenda tworzy plik z kopią zapasową bazy university, który można potem użyć do odtworzenia bazy na innym serwerze.

Archiwizacja danych do długoterminowego przechowywania

Czasem chcesz zachować dane do dalszej analizy albo historii. Na przykład, jeśli masz zamówienia z ostatnich 10 lat, możesz przenieść najstarsze dane do archiwum i zwolnić miejsce w głównej bazie.

Takie podejście pomaga:

  • Przyspieszyć działanie głównej bazy danych.
  • Zachować cenne dane historyczne na wypadek, gdyby się przydały.

Prawdziwe przykłady, kiedy backupy ratowały sytuację

Oto parę historii z życia wziętych, żebyś poczuł, jak ważne są backupy:

Odzyskanie po ataku hakerskim. Kiedyś firma straciła wszystkie dane przez ransomware. Jedynym ratunkiem była kopia zapasowa zrobiona dzień wcześniej. Atak skończył się tylko 2 godzinami przestoju zamiast utraty biznesu.

Błędy programistów. (Kto by pomyślał, że programiści też się mylą?) Jeden ze studentów usunął tabelę z danymi swojej pracy dyplomowej. Na szczęście backup bazy pozwolił wszystko przywrócić w 10 minut.

To na razie tyle. Teraz już wiesz, po co są kopie zapasowe, jakie ryzyka pomagają wyeliminować i jak często warto je robić. Następny wykład zagłębi się w typy backupów i pomoże wybrać najlepszy dla twoich potrzeb. Do zobaczenia na kolejnym wykładzie!

Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION