SQL Server udostępnia trzy modele odzyskiwania, które pozwalają określić sposób, w jaki program SQL Server zarządza plikami dziennika i przygotowuje bazę danych do odzyskiwania po utracie danych lub innej awarii. Każda z nich reprezentuje inne podejście do równoważenia kompromisu między zachowaniem przestrzeni dyskowej i zapewnieniem szczegółowych opcji odzyskiwania po awarii. Trzy modele odzyskiwania po awarii oferowane przez SQL Server to:
- Prosty
- Pełny
- Zbiorcze logowanie
Przyjrzyjmy się bliżej każdemu z tych modeli.
Prosty model odzyskiwania
Prosty model odzyskiwania jest właśnie taki: prosty. W tym podejściu SQL Server przechowuje tylko minimalną ilość informacji w dzienniku transakcji. SQL Server skraca dziennik transakcji za każdym razem, gdy baza danych osiągnie punkt kontrolny transakcji, nie pozostawiając żadnych wpisów dziennika dla celów odzyskiwania po awarii.W przypadku baz danych używających prostego modelu odzyskiwania można przywracać tylko pełne lub różnicowe kopie zapasowe. Nie można przywrócić takiej bazy danych do określonego punktu w czasie - można przywrócić ją tylko do dokładnego czasu, kiedy wystąpiła pełna lub różnicowa kopia zapasowa. W związku z tym automatycznie tracisz wszelkie modyfikacje danych dokonane między czasem ostatniego pełnego / różnicowego backupu a czasem awarii. Pełny model odzyskiwania również nosi nazwę samoprzypisującą. W tym modelu SQL Server przechowuje dziennik transakcji do czasu utworzenia kopii zapasowej. Umożliwia to zaprojektowanie planu odzyskiwania po awarii, który obejmuje kombinację pełnych i różnicowych kopii zapasowych bazy danych w połączeniu z kopiami zapasowymi dzienników transakcji.W przypadku awarii bazy danych można uzyskać największą elastyczność przy przywracaniu baz danych przy użyciu pełnego modelu odzyskiwania. Oprócz zachowania modyfikacji danych przechowywanych w dzienniku transakcji pełny model odzyskiwania umożliwia przywrócenie bazy danych do określonego punktu w czasie. Na przykład, jeśli błędna modyfikacja uszkodziłaby twoje dane o 2:36 rano w poniedziałek, możesz użyć przywracania danych programu SQL Server w celu przywrócenia bazy danych do godziny 2:35, likwidując skutki błędu. Model odzyskiwania po zbiorczym logowaniu jest modelem specjalnego przeznaczenia, który działa w podobny sposób jak pełny model odzyskiwania. Jedyną różnicą jest sposób obsługi operacji masowej modyfikacji danych. Model zarejestrowany zbiorczo rejestruje te operacje w dzienniku transakcji przy użyciu techniki znanej jako minimalne logowanie . Oszczędza to znacząco czasu przetwarzania, ale uniemożliwia korzystanie z opcji przywracania w punkcie czasowym.Microsoft zaleca, aby model odzyskiwania oparty na zbiorach był używany tylko przez krótki czas. Najlepsza praktyka nakazuje przełączyć bazę danych do modelu odzyskiwania zbiorczego, tuż przed wykonaniem operacji zbiorczych i przywrócić go do pełnego modelu odzyskiwania po ukończeniu tych operacji. Użyj SQL Server Management Studio, aby wyświetlić lub zmienić model odzyskiwania: Pełny model odzyskiwania
Model odzyskiwania rejestrujący w pamięci masowej
Zmienianie modeli odzyskiwania