Udostępnij za pomocą


Kopie zapasowe dziennika transakcji (SQL Server)

Dotyczy:SQL Server

Ten artykuł dotyczy tylko baz danych programu SQL Server korzystających z pełnych lub zbiorczo zarejestrowanych modeli odzyskiwania. W tym artykule omówiono tworzenie kopii zapasowej dziennika transakcji bazy danych programu SQL Server.

Co najmniej należy utworzyć co najmniej jedną pełną kopię zapasową przed utworzeniem dowolnych kopii zapasowych dziennika. Następnie można utworzyć kopię zapasową dziennika transakcji w dowolnym momencie, chyba że utworzono już kopię zapasową dziennika.

Zalecamy częste wykonywanie kopii zapasowych dziennika, zarówno w celu zminimalizowania narażenia na utratę pracy, jak i obcinania dziennika transakcji.

Administrator bazy danych zazwyczaj tworzy pełną kopię zapasową bazy danych od czasu do czasu, na przykład co tydzień, a opcjonalnie tworzy serię różnicowej kopii zapasowej bazy danych w krótszym odstępie czasu, na przykład codziennie. Niezależnie od kopii zapasowych bazy danych administrator bazy danych wykonuje kopię zapasową dziennika transakcji w częstych odstępach czasu. W przypadku danego typu kopii zapasowej optymalny interwał zależy od czynników, takich jak znaczenie danych, rozmiar bazy danych i obciążenie serwera. Aby uzyskać więcej informacji na temat implementowania dobrej strategii, zobacz Zalecenia w tym artykule.

Jak działa sekwencja kopii zapasowych dziennika

Sekwencja łańcucha dzienników kopii zapasowych dziennika transakcji jest niezależna od kopii zapasowych danych. Załóżmy na przykład następującą sekwencję zdarzeń.

Time Event
08:00 Tworzenie kopii zapasowej bazy danych.
Południe Utwórz kopię zapasową dziennika transakcji.
16:00 Utwórz kopię zapasową dziennika transakcji.
18:00 Tworzenie kopii zapasowej bazy danych.
18:00 Utwórz kopię zapasową dziennika transakcji.

Kopia zapasowa dziennika transakcji utworzona o godzinie 20:00 zawiera rekordy dziennika transakcji od 16:00 do 20:00, obejmujące czas tworzenia pełnej kopii zapasowej bazy danych o godzinie 18:00. Sekwencja kopii zapasowych dziennika transakcji jest ciągła, od początkowej pełnej kopii zapasowej bazy danych utworzonej o godzinie 8:00 do ostatniej kopii zapasowej dziennika transakcji utworzonej o godzinie 18:00. Aby uzyskać informacje o sposobie stosowania tych kopii zapasowych dziennika, zobacz przykład w temacie Stosowanie kopii zapasowych dziennika transakcji (SQL Server).

Rekomendacje

Jeśli dziennik transakcji jest uszkodzony, praca wykonywana od czasu utraty najnowszej prawidłowej kopii zapasowej. Dlatego zdecydowanie zalecamy umieszczenie plików dziennika w magazynie odpornym na błędy.

Jeśli baza danych jest uszkodzona lub chcesz przywrócić bazę danych, zalecamy utworzenie kopii zapasowej dziennika końcowego w celu umożliwienia przywrócenia bazy danych do bieżącego punktu w czasie.

Ostrzeżenie

Znany problem: W przypadku baz danych z tabelami zoptymalizowanymi pod kątem pamięci wykonywanie kopii zapasowej dziennika transakcyjnego bez odzyskiwania, a później wykonywanie przywracania dziennika transakcji z odzyskiwaniem może spowodować brak odpowiedzi procesu przywracania bazy danych. Ten problem może również mieć wpływ na funkcjonalność wysyłania dziennika. Aby obejść ten problem, wystąpienie programu SQL Server można uruchomić ponownie przed zainicjowanie procesu przywracania.

Domyślnie każda pomyślna operacja tworzenia kopii zapasowej dodaje wpis w dzienniku błędów programu SQL Server i w dzienniku zdarzeń systemu. Jeśli tworzysz kopię zapasową dziennika bardzo często, te komunikaty o powodzeniu gromadzą się szybko, co powoduje ogromne dzienniki błędów, które mogą utrudnić znalezienie innych komunikatów. W takich przypadkach można pominąć te wpisy dziennika przy użyciu flagi śledzenia 3226, jeśli żaden ze skryptów nie zależy od tych wpisów. Aby uzyskać więcej informacji, zobacz Ustawianie flag śledzenia za pomocą funkcji TRACEON DBCC.

Wykonaj wystarczająco częste kopie zapasowe dzienników, aby obsługiwać wymagania biznesowe, w szczególności tolerancję utraty pracy, taką jak może być spowodowana uszkodzonym magazynem dzienników.

  • Odpowiednia częstotliwość tworzenia kopii zapasowych dziennika zależy od tolerancji narażenia na utratę pracy zrównoważonej przez liczbę kopii zapasowych dzienników, które można przechowywać, zarządzać nimi i potencjalnie przywracać. Pomyśl o wymaganym celu czasu odzyskiwania (RTO) i celu punktu odzyskiwania (RPO) podczas implementowania strategii odzyskiwania, a w szczególności cykl tworzenia kopii zapasowej dziennika.

  • Wykonanie kopii zapasowej dziennika co 15 do 30 minut może być wystarczające. Jeśli twoja firma wymaga zminimalizowania narażenia na utratę pracy, rozważ częstsze tworzenie kopii zapasowych dziennika. Częściej kopie zapasowe dzienników mają dodatkową zaletę zwiększania częstotliwości obcinania dzienników, co skutkuje mniejszymi plikami dziennika.

Ważne

Aby ograniczyć liczbę kopii zapasowych dziennika, które należy przywrócić, niezbędne jest rutynowe tworzenie kopii zapasowych danych. Można na przykład zaplanować cotygodniową pełną kopię zapasową bazy danych i codzienne różnicowe kopie zapasowe baz danych.
Ponownie pomyśl o wymaganym celu czasu odzyskiwania i celu punktu odzyskiwania podczas wdrażania strategii odzyskiwania, a w szczególności o pełnej i różnicowej cyklu tworzenia kopii zapasowych bazy danych.