Poprawka: Trwa długo, aby przywrócić bazę danych programu SQL Server 2008 R2 lub SQL Server 2008 lub SQL 2012

Tłumaczenia artykułów Tłumaczenia artykułów
Numer ID artykułu: 2653893 - Zobacz jakich produktów dotyczą zawarte w tym artykule porady.
Rozwiń wszystko | Zwiń wszystko

Na tej stronie

Microsoft rozprowadza Microsoft SQL Server 2008 R2 Z dodatkiem Service Pack 1 (SP1) lub 2008 Microsoft SQL Server lub Microsoft SQL Server w 2012 r. ustala się w jednym pliku do pobrania. Ponieważ poprawki są zbiorcze, każde nowe wydanie zawiera wszystkie poprawki i wszystkie aktualizacje zabezpieczeń, które zostały dołączone do poprzedniego programu SQL Server 2008 R2 Service Pack 1 (SP1) lub SQL Server 2008 lub Microsoft SQL Server 2012 wydania aktualizacji.

Symptomy

Może zająć dużo czasu, aby przywrócić bazę danych, Microsoft SQL Server 2008 R2 lub 2008 Microsoft SQL Server lub Microsoft SQL Server 2012.

Przyczyna

Ten problem występuje, ponieważ trwa długo zbudować listy pliku wirtualnego pliku dziennika (VLF), gdy istnieje wiele VLF w bazie danych.

Rozwiązanie

Zbiorcza aktualizacja informacji

SQL Server 2012

Poprawkę dotyczącą tego problemu został opublikowany w zbiorczej aktualizacji 1 dla programu SQL Server 2012. Aby uzyskać więcej informacji na temat tego pakietu aktualizacji zbiorczej kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2679368 Zbiorczy pakiet aktualizacji 1 dla programu SQL Server 2012
Uwaga Ponieważ kompilacje kumulują się, każde nowe wydanie poprawka zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały zawarte w poprzednich 2012 serwera SQL naprawić wydania. Firma Microsoft zaleca, aby rozważyć zastosowanie najnowszej wersji poprawki, zawierający tę poprawkę. Aby uzyskać więcej informacji kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2692828 SQL Server 2012 tworzy wydane po wydaniu programu SQL Server 2012
Do instalacji programu SQL Server 2012, należy zastosować poprawkę programu SQL Server 2012.

SQL Server 2008 Z dodatkiem Service Pack 2

Poprawka usuwająca ten problem został opublikowany w 8 aktualizacja zbiorcza dla dodatku Service Pack 2 dla programu SQL Server 2008. Aby uzyskać więcej informacji na temat tego pakietu aktualizacji zbiorczej kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2648096 8 Zbiorczy pakiet aktualizacji dla dodatku Service Pack 2 dla programu SQL Server 2008
Uwaga Ponieważ kompilacje kumulują się, każde nowe wydanie poprawka zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały zawarte w poprzednich programu SQL Server 2008 naprawić wydania. Firma Microsoft zaleca, aby rozważyć zastosowanie najnowszej wersji poprawki, zawierający tę poprawkę. Aby uzyskać więcej informacji kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2402659 Buduje programu SQL Server 2008, które zostały wydane po wydaniu dodatku Service Pack 2 dla programu SQL Server 2008
Poprawki Microsoft SQL Server 2008 są tworzone dla określonych dodatków service Pack dla programu SQL Server. Do instalacji dodatku Service Pack 2 dla programu SQL Server 2008, należy zastosować poprawkę dodatku Service Pack 2 dla programu SQL Server 2008. Domyślnie wszystkie poprawki, przewidziany w dodatku service pack dla programu SQL Server znajduje się w następnym dodatku service pack dla programu SQL Server.

Dodatek Service Pack 3 dla programu SQL Server 2008

Poprawka usuwająca ten problem został opublikowany w zbiorczej aktualizacji 3 dla dodatku Service Pack 3 dla programu SQL Server 2008. Aby uzyskać więcej informacji na temat tego pakietu aktualizacji zbiorczej kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2648098 Zbiorczy pakiet aktualizacji 3 dla dodatku Service Pack 3 dla programu SQL Server 2008
Uwaga Ponieważ kompilacje kumulują się, każde nowe wydanie poprawka zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały zawarte w poprzednich programu SQL Server 2008 naprawić wydania. Firma Microsoft zaleca, aby rozważyć zastosowanie najnowszej wersji poprawki, zawierający tę poprawkę. Aby uzyskać więcej informacji kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2629969 Buduje programu SQL Server 2008, które zostały wydane po wydaniu dodatku Service Pack 3 dla programu SQL Server 2008
Poprawki Microsoft SQL Server 2008 są tworzone dla określonych dodatków service Pack dla programu SQL Server. Do instalacji dodatku Service Pack 3 dla programu SQL Server 2008, należy zastosować poprawkę dodatku Service Pack 3 dla programu SQL Server 2008. Domyślnie wszystkie poprawki, przewidziany w dodatku service pack dla programu SQL Server znajduje się w następnym dodatku service pack dla programu SQL Server.

Zbiorcza aktualizacja pakietu 11 dla systemu SQL Server 2008 R2


Poprawka usuwająca ten problem został opublikowany w 11 aktualizacji zbiorczej. Aby uzyskać więcej informacji dotyczących sposobu uzyskania tego pakietu aktualizacji zbiorczej dla programu SQL Server 2008 R2 kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2633145 Zbiorcza aktualizacja pakietu 11 dla systemu SQL Server 2008 R2
Uwaga Ponieważ kompilacje kumulują się, każde nowe wydanie poprawka zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały zawarte w poprzednich programu SQL Server 2008 R2 naprawić wydania. Zaleca się, aby rozważyć zastosowanie najnowszej wersji poprawki, zawierający tę poprawkę. Aby uzyskać więcej informacji kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
981356 SQL Server 2008 R2 buduje, które zostały wydane po wydaniu programu SQL Server 2008 R2

Zbiorczy pakiet aktualizacji 4 dla programu SQL Server 2008 R2 z dodatkiem SP1

Poprawka usuwająca ten problem został opublikowany w zbiorczej aktualizacji 4. Aby uzyskać więcej informacji dotyczących sposobu uzyskania tego pakietu aktualizacji zbiorczej dla programu SQL Server 2008 R2 z dodatkiem SP1 kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2633146 Zbiorczy pakiet aktualizacji 4 dla programu SQL Server 2008 R2 z dodatkiem SP1
Uwaga Ponieważ kompilacje kumulują się, każde nowe wydanie poprawka zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały zawarte w poprzednich programu SQL Server 2008 R2 SP1 naprawić wydania. Zaleca się, aby rozważyć zastosowanie najnowszej wersji poprawki, zawierający tę poprawkę. Aby uzyskać więcej informacji kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2567616 SQL Server 2008 R2 buduje wydane po wydaniu dodatku SP1 dla programu SQL Server 2008 R2

Stan

Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji "Dotyczy".

Więcej informacji

Liczba segmentów pliku VLF można sprawdzić, przeglądając plik dziennika błędów SQL, a następnie przez znajdowanie numer sekwencyjny dziennika (LSN) w każdym pliku kopii zapasowej dziennika transakcji. Liczba LSN odpowiadają pierwszych cyfr przed symbolem dwukropka w LSNs.

Na przykład pierwszy numer na pierwszy komunikat informacyjny dla LSN jest 1. Jednakże pierwszy numer na drugi komunikat informacyjny dla LSN jest 100 001. W tym scenariuszu istnieją VLF 100 000, używanymi między komunikat informacyjny pierwszy i drugi komunikat informacyjny. W związku z tym dziennik zarejestrowanej transakcji pofragmentowane, który ma wiele wirtualnych plików dziennika (VLF) podobny do następującego:

{Dziennika został kopii zapasowej. Bazy danych: mydbname, date(time) tworzenie: 2010/07/08(12:36:46), pierwszy LSN: 1:5068:70, ostatni LSN: 1:5108:1, liczba urządzeń zrzutu: 1, informacje o urządzeniu: (plik = 1, typ = dysk: {C:\folder\logbackup1.trn}). Jest to tylko komunikat informacyjny. Nie jest wymagane.

Dziennik wykonania kopii zapasowej. Bazy danych: mydbname, date(time) tworzenie: 2010/07/08(15:36:46), pierwszy LSN: 100001:5108:1, ostatni LSN: 100002:5108:1, liczba urządzeń zrzutu: 1, informacje o urządzeniu: (plik = 2, typ = dysk: {C:\folder\logbackup2.trn}). Jest to tylko komunikat informacyjny. Nie jest wymagane.}

Materiały referencyjne

Aby uzyskać więcej informacji na temat numerów sekwencji dziennika (LSN) odwiedź następującą witrynę sieci Web MSDN:
Ogólne informacje dotyczące dziennika sekwencji numerów


Aby uzyskać więcej informacji na temat wpływu czasu przywracania bazy danych o strukturze plików dziennika odwiedź następującą witrynę sieci Web MSDN:
Jak struktura pliku dziennika może wpłynąć na czas przywrócenia bazy danych

Więcej informacji na temat VLF dziennika transakcji na ten temat można znaleźć w następującej witrynie MSDN sieci Web:
Ogólne informacje o pliku dziennika transakcji

Obejście problemu

  • Zaczekać na zakończenie operacji odzyskiwania lub przywracania

    Jeśli-odzyskane bazy danych, która występuje niska wydajność podczas przywracania lub odzyskiwanie bazy danych, należy poczekać na można ukończyć operacji przywracania lub odzyskiwanie. Na przykład wyświetlane stan offline lub odzyskuj stan bazy danych odzyskane w SQL Server Management Studio (SSMS). Zazwyczaj zatrzymanie programu SQL Server oferuje zwolnienia, nie wolno odzyskiwania i może zająć więcej czasu na powtarzanie tej samej fazy analizy odzyskiwania, wykonaj ponownie fazy lub cofnąć fazy.
  • Zapobiec przywracaniu sekwencji dziennika transakcji, który zawiera tysiące VLF

    Jeśli występuje niska wydajność podczas Przywracanie i odzyskiwanie bazy danych przy użyciu pliku kopii zapasowej, można uniknąć, przywracanie sekwencje dziennika transakcji, które zawierają tysiące VLF. Aby zidentyfikować plik kopii zapasowej, który posiada większość wirtualnych plików dziennika rejestrowane, użyć następującej instrukcji, aby wyświetlić kolumny FirstLSN i LastLSN w kopii zapasowej plików dziennika:
    Przywracanie HEADERONLY FROM DISK='C:\folder\file.trn "

    Można zdecydować uniknąć przywracanie kopii zapasowej plików dziennika. Lub można użyć instrukcji ZATRZYMAĆ na polecenia PRZYWRÓĆ, aby uniknąć bardzo pofragmentowane części dzienników transakcji. Jeśli nie pełni przywrócić sekwencji dziennika do punktu, najpóźniej w czasie awarii scenariuszu odzyskiwania, utrata danych w bazie danych programu SQL Server. Utrata danych, to występuje, ponieważ nie wszystkie transakcje są trzymane. Dlatego jest kompromis decyzji biznesowych. Dziennik transakcji bardzo pofragmentowane pełni można przywrócić. Jednak operacja ta może zająć wiele godzin. Lub można użyć instrukcji ZATRZYMAĆ na do windykacji zatrzymać odzyskiwania przed bardzo pofragmentowane część dziennika. Jednak brak transakcji, które zostanie pominięty, zostaną utracone.

    Uwaga Bez instalowania tej poprawki, istnieje zazwyczaj brak regresu bezpieczne przyspieszoną odzyskiwania po ponownym uruchomieniu programu SQL Server. SQL Server ma zlokalizować listy VLF analizowania plików dziennika transakcji ponów zakończone i następnie cofnąć nieukończone transakcje na zakończenie odzyskiwania do bezpiecznego trybu online bazy danych. Nie można bezpiecznie pominąć transakcji podczas odzyskiwania.

Właściwości

Numer ID artykułu: 2653893 - Ostatnia weryfikacja: 12 kwietnia 2012 - Weryfikacja: 1.0
Informacje zawarte w tym artykule dotyczą:
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Express
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Express
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Web
Słowa kluczowe: 
kbqfe kbfix kbexpertiseadvanced kbsurveynew kbmt KB2653893 KbMtpl
Przetłumaczone maszynowo
WAŻNE: Ten artykuł nie został przetłumaczony przez człowieka, tylko przez oprogramowanie do tłumaczenia maszynowego firmy Microsoft. Firma Microsoft oferuje zarówno artykuły tłumaczone przez ludzi, jak i artykuły tłumaczone maszynowo, dzięki czemu każdy użytkownik może uzyskać dostęp do całej zawartości bazy wiedzy Knowledge Base we własnym języku. Prosimy jednak pamiętać, że artykuły przetłumaczone maszynowo nie zawsze są doskonałe. Mogą zawierać błędy słownictwa, składni i gramatyki, przypominające błędy robione przez osoby, dla których język użytkownika nie jest językiem ojczystym. Firma Microsoft nie odpowiada za wszelkie nieścisłości, błędy lub szkody spowodowane nieprawidłowym tłumaczeniem zawartości oraz za wykorzystanie tej zawartości przez klientów. Oprogramowanie do tłumaczenia maszynowego jest często aktualizowane przez firmę Microsoft.
Anglojęzyczna wersja tego artykułu to:2653893

Przekaż opinię

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com