Udostępnij za pośrednictwem


Performing Page Restores

W tym temacie odnosi się do SQL Server bazy danych, które są przy użyciu modelu odzyskiwanie Pełny lub jest rejestrowane zbiorczej. strona przywracania jest obsługiwana tylko w przypadku filegroups odczytu/zapisu.

Celem strona przywracania jest przywrócenie jeden lub więcej uszkodzonych strona s bez przywracania całej bazy danych.Zazwyczaj stron, które są kandydatami do przywracanie zostały oznaczone jako "podejrzane" ze względu na błąd wystąpi podczas uzyskiwania dostępu do strona.Podejrzana strony są identyfikowane w suspect_pages tabelamsdb bazy danych.

Uwaga

Nie wszystkie błędy strona wymagają przywracanie.Problem może występować w pamięci podręcznej danych, takich jak indeks pomocniczych, które można rozwiązać przez ponowne obliczanie danych.Na przykład, jeśli administrator bazy danych spadnie pomocniczy indeksu i odtwarza go, uszkodzonych danych, chociaż, nie wskazano jako takie w suspect_pages tabela.

Wiele stron bazy danych można przywrócić natychmiast.Kopie zapasowe plików dziennika są stosowane do wszystkich plików bazy danych, które zawierają strona, która jest jest odzyskiwana.Podobnie jak w przypadku przywracanie pliku Ustawianie przenieść na przyszły okres jest zaawansowanych o przebiegu ponowne wykonanie do jednego dziennika.

strona przywracania jest przeznaczony do naprawiania izolowane uszkodzony strona s.Przywracanie i odzyskiwanie kilka pojedynczych stron może być szybsza niż przywracanie pliku, zmniejszając ilość danych, który jest w trybie offline podczas operacji przywracania.Jednak jeśli trzeba przywrócić więcej niż kilka stron w pliku, jest zazwyczaj bardziej efektywne, aby przywrócić cały plik.Na przykład jeżeli wielu stron na urządzeniu wskazuje Niepowodzenie oczekiwania urządzeń, należy rozważyć przywracania pliku, prawdopodobnie z innej lokalizacji i naprawianie urządzenia.

Przywracanie strona scenariusze

Wszystkie wersje programu SQL Server 2005 i jego nowszych wersjach obsługują przywracanie strona s, gdy baza danych jest w trybie offline)offline strona przywracania).W SQL Server 2005 Enterprise Edition i jego nowsze wersje, jeśli baza danych jest w trybie online podczas strona przywracania, baza danych pozostanie online. Przywracanie i odzyskiwanie strona, gdy baza danych jest w trybie online, jest nazywany online przywracanie stron.

Te strona scenariusze przywracania są w następujący sposób:

  • Tryb offline strona przywracania

    SQL Server 2005 Standard, SQL Server 2005 Express Edition, and SQL Server 2005 Workgroup, and later versions, support only offline restore.SQL Server 2005 Enterprise Edition and later versions use offline restore if the database is already offline.W offline strona przywracania, baza danych jest w trybie offline w czasie, gdy uszkodzony strona s zostaną przywrócone.Na końcu sekwencja przywracanie bazy danych pochodzą online.

    Dla strona przywrócić się powiodła, musi można odzyskać przywróconej s strona do stanu zgodny z bazą danych.Nieprzerwane łańcucha kopii zapasowych dziennika muszą być stosowane do ostatniego przywracanie pełnych ani różnicowych, aby przenieść grupa plików, która zawiera strona do przodu do bieżącego pliku dziennika.

  • Online strona przywracania

    W SQL Server 2005 Enterprise Edition i jego nowsze wersje, gdy warunki pozwalają strona przywraca automatycznie są wykonywane online. W większości przypadków można przywrócić uszkodzone strona bazy danych, w tym grupa plików, do którego jest przywracana strona, pozostaje w trybie online.Przywracanie strona online może być szczególnie przydatne w przypadku stron uszkodzone przez błąd sprzętowy.

    Uszkodzone strona może czasem wymagają przywracanie w trybie offline.Na przykład uszkodzenie pewne krytyczne strony może uniemożliwić bazy danych uruchamiania.W takim przypadku należy użyć przywracanie w trybie offline.

    Uwaga

    przywracanie w trybie online próbuje zaktualizować metadane i tej aktualizacji może się nie powieść, jeśli ma być krytyczne strona.Nie powiedzie się próba przywracanie w trybie online, offline należy wykonać przywracanie.

przywracanie stron wykorzystuje raportowania (w tym strona sum kontrolnych) ulepszone błędów poziom strona i śledzone w programie SQL Server 2005 i jego nowszych wersjach. Strony, które są wykrywane jako uszkodzone przez zsumowanie wyboru lub zapisem poszarpane, uszkodzone strony, można przywrócić przez podanie stron w PRZYWRACANIE instrukcja.przywracanie stron jest przeznaczona dla Przywracanie tylko na kilku stronach uszkodzony.Każda Strona określona w instrukcja przywracanie zastępuje strony z określonego kopia zapasowa zestawu.Musi można odzyskać przywróconej stron do stanu zgodny z bazą danych.Pojawiają się tylko wyraźnie określonej strony.

Ograniczenia przywraca strona

Można przywrócić tylko stron bazy danych.strona przywracania nie można użyć do przywrócenia następujących czynności:

  • Dziennik transakcji

  • Podział strony: Globalne stron tablicy alokacji (GAM), udostępnione tablicy alokacji globalnego (SGAM) stron i stron Strona wolnego miejsca (PFS). Aby uzyskać więcej informacji zobaczZarządzanie alokacje fragment i ilość wolnego miejsca.

  • Strona 0 wszystkich plików danych (strona rozruchowego pliku)

  • Strona 1: 9 (strona uruchamiania bazy danych)

  • wykaz pełnotekstowy

Nie można przywrócić pojedynczej strona, należy użyć istniejących pełną kopię zapasową bazy danych lub pełny plik lub grupa plików kopia zapasowa.

Uwaga

Jeśli strona przywracana jest szczególnym przypadkiem, takich jak strony metadane online przywracanie stron zakończy się niepowodzeniem.W takim przypadku spróbuj offline strona przywracania.

Wymagania dotyczące przywracanie strony

A strona przywracania jest pod warunkiem spełnienia następujących wymagań:

  • Bazy danych, muszą korzystać z pełnego lub rejestrowane zbiorczej model odzyskiwanie.Niektóre problemy istnieć, jeśli jest używany model rejestrowane zbiorczej.Aby uzyskać więcej informacji zobacz następującą sekcję.

  • Nie można przywrócić strony filegroups tylko do odczytu.Chcesz nadać atrybut tylko do odczytu, grupa plików powiedzie się, jeśli istnieje strona przywracania przejściem w tym samym czas w grupa plików,.

  • Sekwencja przywracanie musi zaczynać się od pełny, plik lub grupa plików kopia zapasowa.

  • przywracanie stron wymaga nieprzerwane łańcucha kopii zapasowych dziennika do bieżącego pliku dziennika, a ich należy wszystkie zastosować, aby strona jest uaktualniany z bieżącego pliku dziennika.

  • Podobnie jak w sekwencja przywracanie plików w każdym kroku przywracanie można dodać więcej stron do zestaw przenieść na przyszły okres.

  • Przywracanie kopia zapasowa i strona bazy danych nie można uruchomić w tym samym czasie.

Rejestrowane zbiorczej modelu odzyskiwanie i strona przywracania

Dla bazy danych, która korzysta z modelu odzyskiwanie rejestrowane zbiorczej strona przywracania ma następujące warunki dodatkowe:

  • Wykonywanie kopii zapasowych, podczas gdy grupa plików lub strona danych jest w trybie offline jest problematyczne rejestrowane zbiorczej danych, ponieważ danych w trybie offline nie jest rejestrowany w dzienniku.Wszystkie strona trybu offline może uniemożliwić wykonywanie kopii zapasowych dziennika.W tym przypadku należy rozważyć przy użyciu DBCC REPAIR, ponieważ może to spowodować utratę danych, mniej niż Przywracanie do najnowszej kopia zapasowa.

  • Jeśli kopia zapasowa dziennika z bazy danych rejestrowane zbiorczej napotka uszkodzone strona, nie jest on pod warunkiem, że nie określono CONTINUE_AFTER_ERROR WITH.

  • strona przywracania na ogół nie działa w systemie odzyskiwanie rejestrowane zbiorczej.

    Zaleca się wykonywania strona przywracania jest ustawienie bazy danych do modelu odzyskiwanie pełny i spróbuj wykonać kopię zapasową dziennika.Wykonywanie kopia zapasowa dziennika dziennika działa, można wciąż z strona przywracania.Jeśli dziennika kopia zapasowa dziennika kończy się niepowodzeniem, trzeba albo utraty pracy po wykonaniu poprzedniej kopia zapasowa dziennika dziennika lub należy spróbować systemem DBCC musi być uruchomiony z opcją REPAIR_ALLOW_DATA_LOSS.

Podstawowe strona Przywracanie składni

Aby określić strona w instrukcja przywracanie DATABASE, należy nazwę pliku pliku zawierającego strona i identyfikator strona strona.Wymagana składnia jest następująca:

PRZYWRACANIE BAZY DANYCH nazwa_bazy_danych

   PAGE ='file:page [ ,...n ]' [ ,...n ]

   FROM <backup_device> [ ,...n ]

Z NORECOVERY

Aby uzyskać więcej informacji na temat parametrów opcji strona zobacz RESTORE Arguments (Transact-SQL). Aby uzyskać więcej informacji na temat składni przywracanie DATABASE zobacz przywracanie (języka Transact-SQL).

Procedurę przywracania strona

Podstawowe etapy przywracanie stron są następujące:

  1. Uzyskaj identyfikatory uszkodzonych stron do przywrócenia strona.Suma kontrolna lub błąd zapisu poszarpane zwraca identyfikator strona, zawierający informacje, wymagane do określania strona.Aby wyszukać identyfikator strona uszkodzone strona, za pomocą żadnego z następujących źródeł.

    Źródłowy identyfikator strona

    Temat

    msdbsuspect_pages

    Understanding and Managing the suspect_pages Table

    Dziennik błędów

    Viewing the SQL Server Error Log

    Ślady zdarzeń

    Monitoring Events

    DBCC

    DBCC (języka Transact-SQL)

    Dostawca WMI

    Dostawca WMI dla pojęcia zdarzenia serwera

  2. przywracanie stron rozpoczynać pełnego bazy danych, plik lub grupa plików kopia zapasowa, zawierający odpowiednią strona.W instrukcja przywracanie DATABASE należy użyć klauzula strona aby wyświetlić listę identyfikatorów wszystkich stron, należy przywrócić strona.

    PAGE ='file:page [ ,...n ]'

  3. Zastosowanie najnowszej różnice.

  4. Zastosowanie kopii zapasowych dziennika kolejnych.

  5. Utwórz nową kopię zapasową dziennika bazy danych, która zawiera końcowe LSN przywróconych stron, oznacza to, pkt, przy której ostatnia strona przywracany jest trybu offline.Końcowe LSN, które ustawiono jako część pierwszego przywracanie w sekwencji, to ponowne wykonanie miejsce docelowe LSN.Rolki online, do przodu pliku zawierającego strona jest w stanie zatrzymania w docelowym ponowne wykonanie LSN.Aby uzyskać bieżącą docelowym ponowne wykonanie LSN pliku, zobacz temat redo_target_lsn kolumnasys.master_files.Aby uzyskać więcej informacji zobaczsys.master_files (Transact-SQL).

  6. Przywrócić nowej kopia zapasowa dziennika dziennika.Po zastosowaniu tej nowej kopia zapasowa dziennika strona przywracania jest zakończona i strona s jest teraz używany.

Uwaga

Ta sekwencja jest analogiczne do sekwencja przywracanie pliku.W rzeczywistości strona przywracania i przywraca plik można jednocześnie przeprowadzić w ramach tej samej sekwencji.

Przykład

W poniższym przykładzie przywraca cztery strony uszkodzonego pliku B z NORECOVERY. Następny dziennika dwie kopie zapasowe są stosowane z NORECOVERY, a następnie wykonywanie kopia zapasowa dziennika ogona dziennik, który jest przywracany z RECOVERY.

Important noteImportant Note:

Jeśli uszkodzone strona są przechowywane metadane bazy danych krytycznych, sekwencja przywracanie stron trybu offline może być konieczne.Aby wykonać przywracanie w trybie offline, należy tworzyć kopię zapasową transakcji zalogować NORECOVERY WITH.

W następującym przykładzie wykonywana przywracanie w trybie online.W przykładzie, identyfikator pliku w pliku B jest 1, i są strona identyfikatory uszkodzonych stron 57, 202, 916, a 1016.

RESTORE DATABASE <database> PAGE='1:57, 1:202, 1:916, 1:1016'
   FROM <file_backup_of_file_B> 
   WITH NORECOVERY;
RESTORE LOG <database> FROM <log_backup> 
   WITH NORECOVERY;
RESTORE LOG <database> FROM <log_backup> 
   WITH NORECOVERY; 
BACKUP LOG <database> TO <new_log_backup> 
RESTORE LOG <database> FROM <new_log_backup> WITH RECOVERY;
GO