2013-01-21 14 views
13

Podczas konfigurowania funkcji LogShipping dla programu SQL Server można wybrać, aby pomocnicza baza danych znajdowała się w trybie Bez odzyskiwania lub w trybie gotowości. Brak odzyskiwania oznacza brak dostępu do bazy danych podczas wysyłki dziennika. Tryb gotowości daje dostęp tylko do odczytu, a jeśli wybierzesz opcję rozłączania użytkowników, gdy ma się rozpocząć przywracanie, wydaje się, że nie zakłóca to procesu wysyłki dziennika. To wydaje mi się dodatkową korzyścią z trybu gotowości, ale o ile widzę, dokumentacja nie wspomina o żadnych szkodliwych skutkach.Log-Shipping: Dlaczego wybrałbyś tryb bez odzyskiwania?

Zastanawiam się, dlaczego ktokolwiek zdecyduje się na użycie trybu bez odzyskiwania? Jedyne wiarygodne powody, dla których mogę myśleć, to sytuacja, w której tryb gotowości spowodował znaczącą degradację wydajności (ale w dokumentacji nie ma żadnej wzmianki o takiej treści) lub jeśli istnieje jakiś wymóg zabezpieczeń, aby aktywnie uniemożliwić każdemu zobaczenie zawartości dodatkowej bazy danych (co wydaje się rzadkie/mało prawdopodobne).

Czy ktoś może mnie oświecić, co ma być zaletą wyboru trybu bez odzyskiwania?

+7

Nie rozumiem, dlaczego jest to uważane za nietypowe. Często zadawane pytania zawierają kryteria "• narzędzia programowe powszechnie używane przez programistów". Log-Shipping jest częścią SQL Server, który jest bardzo powszechnie używany przez programistów, a nawet poszukiwanie StackOverflow pokazuje, że pytania na temat LogShipping są zadawane i odbierane tutaj. – PhantomDrummer

Odpowiedz

16

Podczas korzystania z trybu NORECOVERY, docelowa baza danych nie będzie miała dostępu, więc baza danych nie będzie musiała obchodzić niezakończone transakcje. Dziennik może zostać przywrócony "tak jak jest" i pozostawiony w tym stanie.

Podczas korzystania z trybu STANDBY baza danych odtwarza się jako NORECOVERY, a następnie analizuje i wycofuje wszystkie niezatwierdzone transakcje w dzienniku. Może wtedy dać dostęp tylko do odczytu dla użytkowników. Po przywróceniu następnego dziennika baza danych rozłącza wszystkich użytkowników i ponownie przywraca niezatwierdzone transakcje z ostatniego dziennika do przodu.

Jak widać, STANDBY ma potencjalnie duży dodatkowy koszt podczas przywracania, w zależności od wielkości transakcji.

Więcej szczegółów at this article at My World of SQL.

Powiązane problemy