| Termin | Definicja |
|---|---|
| kopia zapasowa bazy danych | ![]() Kopia zapasowa bazy danych to zapis jej stanu umożliwiający odtworzenie danych po awarii. Kopia zapasowa bazy danych – czym jest i do czego służyKopia zapasowa bazy danych to przygotowany wcześniej zestaw informacji, który pozwala odtworzyć zawartość bazy po utracie, uszkodzeniu albo niepożądanej zmianie danych. Nie chodzi wyłącznie o skopiowanie pojedynczego pliku. W zależności od zastosowanej technologii zabezpieczeniu mogą podlegać tabele, relacje między tabelami, indeksy, procedury, ustawienia dostępu, dzienniki transakcji oraz inne elementy potrzebne do uruchomienia kompletnego środowiska danych. Dzięki temu możliwe jest przywrócenie nie tylko samych rekordów, lecz także struktury, w której te rekordy były przechowywane i wykorzystywane. Znaczenie kopii zapasowej ujawnia się przede wszystkim wtedy, gdy podstawowy zbiór danych przestaje być dostępny. Przyczyną może być awaria nośnika, błędna aktualizacja, pomyłkowe usunięcie tabeli, uszkodzenie systemu plików, działanie złośliwego oprogramowania albo nieprawidłowo wykonana operacja administracyjna. W takiej sytuacji wcześniejsze wykonanie kopii ogranicza skalę przestoju i zmniejsza ryzyko bezpowrotnej utraty informacji. Sama obecność pliku z kopią nie oznacza jednak pełnego zabezpieczenia. Istotne jest również ustalenie, z jakiego momentu pochodzi zapis, czy można go odczytać oraz czy odtworzenie zostało sprawdzone w praktyce. Warto rozróżnić kopię bazy od zwykłego eksportu wybranych danych. Eksport może obejmować na przykład część tabel zapisanych do pliku tekstowego, lecz nie zawsze zachowuje uprawnienia, zależności, kolejność operacji i elementy wymagane do szybkiego przywrócenia pracy. Kopia tworzona z uwzględnieniem mechanizmów konkretnego systemu bazodanowego zwykle daje większą kontrolę nad zakresem odtwarzania i pozwala lepiej dopasować zabezpieczenie do sposobu użytkowania danych. Kopia zapasowa bazy danych a rodzaje ochrony informacjiW praktyce stosuje się kilka sposobów tworzenia kopii zapasowych. Kopia pełna obejmuje cały wskazany zbiór danych i jest najprostsza do zrozumienia podczas odtwarzania. Kopia przyrostowa zapisuje zmiany, które pojawiły się od czasu wykonania poprzedniej kopii, natomiast kopia różnicowa uwzględnia zmiany od ostatniego pełnego zabezpieczenia. Kopie przyrostowe mogą ograniczać ilość przechowywanych danych, ale odtworzenie wymaga zachowania właściwej sekwencji plików. W przypadku kopii różnicowej potrzebny jest zazwyczaj ostatni pełny zapis oraz najnowsza kopia różnicowa. Osobną kategorię stanowią kopie wykonywane na poziomie transakcji lub dzienników zmian. Pozwalają one odtworzyć stan bazy z większą dokładnością czasową, o ile dzienniki są kompletne i nie zostały uszkodzone. Takie podejście jest przydatne, gdy ważne jest ograniczenie odstępu między ostatnią kopią a momentem awarii. Należy jednak pamiętać, że bardziej szczegółowy mechanizm wymaga staranniejszej konfiguracji, monitorowania zajętości nośników oraz kontroli ciągłości zapisów. Nie powinno się przechowywać wszystkich kopii w jednym miejscu. Awaria urządzenia, zalanie, kradzież albo błąd operatora mogłyby wtedy jednocześnie pozbawić dostępu do danych podstawowych i zapasowych. Rozsądny model zakłada co najmniej kilka niezależnych lokalizacji lub nośników, różne momenty wykonania kopii oraz ograniczenie dostępu do plików z kopiami. Kopia przechowywana w tym samym katalogu co baza może być pomocna przy szybkim odtworzeniu po drobnej pomyłce, lecz nie powinna być jedynym zabezpieczeniem. Ważne jest także odróżnienie kopii od mechanizmów ciągłej dostępności. Replikacja, synchronizacja lub zapasowa instancja mogą skrócić przerwę w działaniu, lecz błędne usunięcie danych może zostać powielone również w kopii bieżącej. Kopia zapasowa służy do cofnięcia się do wcześniejszego, zachowanego stanu. Dlatego oba podejścia mogą się uzupełniać, ale nie zastępują się wzajemnie. Kopia zapasowa bazy danych – typowe problemy i błędyJednym z częstszych problemów jest wykonywanie kopii bez późniejszego sprawdzenia, czy można ją odczytać. Proces może zakończyć się komunikatem sugerującym powodzenie, a plik może być niepełny, uszkodzony albo pozbawiony części zależności. Z tego powodu należy okresowo przeprowadzać próbne odtworzenie na odseparowanym środowisku. Test powinien obejmować nie tylko pojawienie się tabel, ale również możliwość wykonania zapytań, odtworzenie relacji, działanie aplikacji korzystającej z bazy oraz zgodność danych z oczekiwanym momentem. Błędem bywa również nieuwzględnienie aktywności bazy podczas kopiowania. Jeżeli dane są zmieniane w trakcie operacji, zwykłe skopiowanie plików może doprowadzić do niespójności. Bezpieczniejsze jest wykorzystanie mechanizmu oferowanego przez używany system bazodanowy, blokady dopasowanej do rodzaju operacji albo kopii wykonywanej w sposób zapewniający spójny punkt w czasie. Szczególnej uwagi wymagają bazy intensywnie aktualizowane, ponieważ nawet krótki okres niespójności może mieć wpływ na wiele powiązanych rekordów. Niebezpieczne jest przechowywanie kopii bez kontroli dostępu. Plik zawierający dane może być równie wrażliwy jak działająca baza, a czasem nawet łatwiejszy do skopiowania. Dostęp powinien być ograniczony do upoważnionych osób i procesów, a nośnik powinien być chroniony przed przypadkowym nadpisaniem. W zależności od charakteru informacji można zastosować szyfrowanie podczas przechowywania i przesyłania. Hasło lub klucz nie powinny być trzymane w tym samym miejscu co kopia, ponieważ utrata jednego składnika mogłaby pozbawić ochrony albo uniemożliwić odtworzenie. Problemem jest też brak określonego czasu przechowywania. Zbyt krótka historia kopii może uniemożliwić powrót do stanu sprzed niezauważonego uszkodzenia. Zbyt długa historia bez porządkowania może z kolei zapełnić nośnik i zatrzymać nowe zadania. Przydatne jest ustalenie zasad obejmujących częstotliwość wykonywania kopii, liczbę zachowywanych wersji, sposób oznaczania plików, odpowiedzialność za kontrolę oraz procedurę postępowania po błędzie. Kopia zapasowa bazy danych – praktyczne wskazówki tworzeniaPrzed przygotowaniem planu zabezpieczenia należy określić, jaką utratę danych można zaakceptować i jak szybko musi zostać przywrócone działanie. Jeżeli dane zmieniają się rzadko, wystarczająca może być kopia wykonywana w ustalonych odstępach. Przy częstych zmianach potrzebne są częstsze zapisy albo dodatkowe rejestrowanie zmian. Warto osobno opisać maksymalny akceptowany czas przerwy oraz maksymalny akceptowany zakres utraconych operacji. Takie ustalenia pomagają dobrać rozwiązanie do rzeczywistego ryzyka, zamiast tworzyć kopie bez jasno określonego celu. Każda kopia powinna mieć czytelne oznaczenie zawierające co najmniej datę, zakres oraz rodzaj zapisu. Przydatny jest dziennik z informacją, czy zadanie zakończyło się poprawnie, ile danych objęło i gdzie znajduje się wynik. Automatyzacja ogranicza liczbę pominiętych terminów, ale nie zwalnia z kontroli. Należy obserwować komunikaty błędów, wolne miejsce, czas trwania operacji i zmiany w rozmiarze kopii. Nagły wzrost albo spadek rozmiaru może wskazywać na zmianę zakresu, pominięcie tabel lub problem z procesem. Procedura odtworzenia powinna być opisana w sposób zrozumiały dla osoby, która nie wykonywała pierwotnej konfiguracji. Powinno się wskazać kolejność działań, wymagane uprawnienia, lokalizację kopii, zależności między plikami oraz sposób sprawdzenia wyniku. Warto utrzymywać więcej niż jedną przetestowaną wersję procedury, ponieważ sposób odtwarzania może różnić się w zależności od rodzaju awarii. Przed wykonaniem odtworzenia na działającym zbiorze należy zabezpieczyć jego aktualny stan, aby nie utracić danych powstałych po czasie wybranej kopii. Przydatne jest także okresowe ćwiczenie całego scenariusza. Można sprawdzić odtworzenie pojedynczej tabeli, odtworzenie pełnego zbioru, odzyskanie danych z innego nośnika oraz reakcję na brak jednej z kopii pośrednich. Wyniki testów powinny być zapisywane wraz z datą i opisem wykrytych trudności. Jeżeli odtworzenie trwa dłużej niż zakładano, należy przeanalizować przyczynę i zaktualizować plan. Kopia zapasowa bazy danych – kiedy zgłosić się do serwisuDo serwisu warto zgłosić się wtedy, gdy kopia nie daje się otworzyć, pojawiają się komunikaty o uszkodzeniu, brakuje części danych albo nie jest znana prawidłowa kolejność odtwarzania. Pomoc może być potrzebna również po awarii dysku, infekcji, przypadkowym usunięciu tabeli, zmianie urządzenia lub przeniesieniu bazy do innego środowiska. Przed rozpoczęciem samodzielnych prób należy ograniczyć zapisy na uszkodzonym nośniku i nie nadpisywać plików, które mogą zawierać przydatne informacje. W Warszawie wsparcie w takich sytuacjach świadczy Warszawskie Pogotowie Komputerowe 24/7. Przy zgłoszeniu warto opisać rodzaj bazy, przybliżony moment wystąpienia problemu, dostępne kopie, komunikaty oraz działania wykonane po awarii. Takie informacje ułatwiają ocenę sytuacji i dobranie bezpiecznej kolejności czynności. W przypadku danych istotnych dla pracy organizacji szczególne znaczenie ma zachowanie oryginalnych nośników i plików, przygotowanie ich kopii roboczych oraz dokumentowanie każdej operacji wykonywanej podczas odzyskiwania. Po przywróceniu danych nie powinno się kończyć działań na samym uruchomieniu bazy. Należy sprawdzić kompletność rekordów, działanie powiązanych aplikacji, uprawnienia użytkowników, poprawność najnowszych zmian oraz możliwość wykonania kolejnej kopii. Jeżeli przyczyną problemu była nieudokumentowana konfiguracja albo brak kontroli nad zadaniami, warto od razu uporządkować harmonogram, lokalizacje przechowywania i procedurę testowania. Dobrze przygotowana kopia zapasowa bazy danych jest elementem stałego planu ochrony informacji, a nie jednorazowym plikiem tworzonym dopiero po wystąpieniu awarii. |