Jak odzyskać bazę danych MS SQL z trybu podejrzanego?

gdy baza danych SQL przechodzi w tryb podejrzany, staje się niedostępna. W takiej sytuacji nie będzie można połączyć się z bazą danych ani odzyskać jej podczas uruchamiania serwera.

odzyskiwanie bazy danych MS SQL z trybu podejrzanego
Rysunek 1: Baza Danych w trybie podejrzanego

sprawdź infografikę poniżej, aby uzyskać szybkie rozwiązania do odzyskiwania bazy danych z trybu podejrzanego w SQL Server 2008 i wyższych wersjach.

kiedy baza danych SQL przechodzi w tryb podejrzany?

gdy SQL server podejrzewa, że główna grupa plików bazy danych jest uszkodzona lub jeśli brakuje pliku bazy danych, status bazy danych jest ustawiony na 'Suspect’.

ponadto istnieje szeroki zakres błędów, które mogą spowodować powstanie bazy danych SQL w trybie podejrzanym.Niektóre z nich są wymienione poniżej:

  1. system nie otwiera urządzenia, na którym znajduje się plik danych lub dziennika serwera SQL.
  2. serwer SQL ulega awarii lub uruchamia się ponownie w trakcie transakcji, co powoduje uszkodzenie lub Niedostępny plik dziennika transakcji.
  3. SQL Server próbuje otworzyć bazę danych, a plik należący do tej bazy danych jest już otwarty przez oprogramowanie antywirusowe zainstalowane w systemie.
  4. baza danych jest wyłączona nieprawidłowo.
  5. brak miejsca na dysku.
  6. SQL nie może wykonać operacji wycofywania lub przewijania do przodu.
  7. pliki bazy danych są przechowywane przez system operacyjny, oprogramowanie do tworzenia kopii zapasowych innych firm itp.

jak usunąć bazę danych SQL z trybu podejrzanego?

Uwaga: Możesz spróbować przywrócić bazę danych w trybie podejrzanym z dobrze znanej kopii zapasowej. Jeśli kopia zapasowa nie jest dostępna, wykonaj następujące czynności.

postępuj zgodnie z sekwencją kroków podaną poniżej, aby odzyskać bazę danych MS SQL z trybu podejrzanego:

Krok 1: Otwórz SSMS i połącz się z bazą danych.

Połącz się z bazą danych SQL Server w SSMS
Rysunek 2: Połącz się z bazą danych

Krok 2: Wybierz opcję nowe zapytanie.

wybierz nowe zapytanie, aby otworzyć okno zapytania w SSMS
Rysunek 3: Wybierz nowe zapytanie

Krok 3: W oknie Edytora zapytań wprowadź następujący kod, aby wyłączyć flagę podejrzanego w bazie danych i ustawić ją na awaryjną:

EXEC sp_resetstatus 'db_name';ALTER DATABASE db_name SET EMERGENCY
Ustaw bazę danych SQL w trybie awaryjnym
Rysunek 4: Ustaw bazę danych w trybie awaryjnym

UWAGA: Jeśli nie możesz ustawić bazy danych w trybie awaryjnym, przejdź do następnego rozwiązania.

Krok 4: Sprawdź spójność głównej bazy danych. Aby to zrobić, skopiuj i wklej następujący kod w Edytorze zapytań:

DBCC CHECKDB ('database_name')
Sprawdź spójność bazy danych SQL
Rysunek 5: Sprawdź spójność bazy danych

Krok 5: następnie przenieś bazę danych do trybu pojedynczego użytkownika i cofnij poprzednie transakcje, wykonując poniższe polecenie:

ALTER DATABASE database_name SET SINGLE_USER WITH ROLLBACK IMMEDIATE
Ustaw bazę danych SQL na tryb pojedynczego użytkownika
Rysunek 6: Ustaw bazę danych na tryb pojedynczego użytkownika

Krok 6: wykonaj pełną kopię zapasową bazy danych.

Krok 7: spróbuj naprawić bazę danych, umożliwiając utratę danych za pomocą polecenia DBCC CHECKDB 'REPAIR_ALLOW_DATA_LOSS’ :

DBCC CHECKDB ('database_name', REPAIR_ALLOW_DATA_LOSS)
użyj polecenia DBCC CHKDB z opcją naprawy
Rysunek 7: Napraw bazę danych za pomocą DBCC CHECKDB

Krok 8: Przenieś bazę danych do trybu wielu użytkowników:

ALTER DATABASE database_name SET MULTI_USER
Ustaw bazę danych SQL na tryb wielu użytkowników
Rysunek 8: Ustaw bazę danych na tryb wielu użytkowników
ALTER DATABASE database_name SET MULTI_USER

Krok 9: odśwież serwer bazy danych.

po wykonaniu tych kroków powinieneś być w stanie połączyć się z bazą danych. W przypadku utraty danych będziesz mieć kopię zapasową bazy danych do przywrócenia (Krok 6).

co jeśli to rozwiązanie nie zadziała?

Jeśli plik bazy danych serwera okazał się poważnie uszkodzony, powyższe kroki mogą nie przywrócić bazy danych. W tym momencie spróbuj przywrócić bazę danych za pomocą Stellar Repair for MS SQL.

pobierz za darmo

oprogramowanie może naprawić typowe błędy uszkodzenia bazy danych SQL, które występują z przyczyn takich jak baza danych w trybie podejrzanym i kilka innych. Oprogramowanie wykorzystuje zaawansowane algorytmy do naprawy i przywrócenia bazy danych SQL z trybu podejrzanego do stanu normalnego (online).

Jak odzyskać bazę danych SQL z trybu podejrzanego za pomocą narzędzia do odzyskiwania SQL Stellar?

UWAGA: Przed uruchomieniem programu Stellar Repair for MS SQL należy zamknąć instancję serwera.

Krok 1: Pobierz, zainstaluj i uruchom oprogramowanie Stellar Repair dla MS SQL.

Krok 2: w oknie wybierz bazę danych wybierz Przeglądaj lub Szukaj, aby wybrać plik bazy danych SQL (.mdf) z bazy danych podejrzanych.

Rysunek 9: Wybierz plik bazy danych

Krok 3: Po wybraniu pliku naciśnij Naprawa.

napraw wybrany uszkodzony plik bazy danych za pomocą usługi Stellar Repair dla oprogramowania SQL
Rysunek 10-napraw wybrany plik

Uwaga: usuń zaznaczenie pola wyboru „Dołącz usunięte rekordy”, jeśli nie chcesz, aby usunięte rekordy zostały odzyskane.

Krok 4: Podgląd naprawionego pliku MDF dla odzyskiwalnych obiektów bazy danych SQL server.

podgląd naprawionych komponentów bazy danych
Rysunek 11: okno podglądu

Krok 5: kliknij Zapisz w menu Plik, aby zapisać naprawiony plik.

wybierz opcję Zapisz, aby zapisać naprawiony plik bazy danych
Rysunek 12: menu Plik

Krok 6: W oknie Zapisz bazę danych wykonaj następujące czynności:

  • Wybierz MDF w obszarze Zapisz jako.
  • Zapisz naprawiony plik w nowej bazie danych lub aktywnej bazie danych.
  • wypełnij szczegóły w obszarze Połącz z serwerem.
Dodaj szczegóły, aby zapisać naprawiony plik bazy danych
rysunek 13: Zapisz okno bazy danych

Krok 7: kliknij Zapisz.

Otwórz SSMS i dołącz db (zawierający naprawiony plik MDF). Będziesz mógł uzyskać dostęp do bazy danych.

dodatkowe funkcje oprogramowania

  • naprawiają uszkodzone pliki MDF i NDF.
  • odzyskuje tabele, wyzwalacze, klucze, indeksy, procedury składowane, domyślne, reguły, schemat itp.
  • obsługuje MS SQL 2019, 2017, 2016, 2014, 2012, 2008 R2 i wersje niższe.
  • zapewnia wiele opcji zapisywania naprawionej bazy danych, w tym MS SQL (MDF), CSV, HTML i XLS.

oprogramowanie jest zaufane przez Microsoft MVPs

wniosek

ten post omówił metody na „Jak odzyskać bazę danych MS SQL z trybu podejrzanego”. Nakreślono w nim kroki ręczne, aby naprawić bazę danych SQL w trybie podejrzanym. Ponadto wyjaśniono, w jaki sposób można użyć oprogramowania do naprawy bazy danych SQL do naprawy podejrzanej bazy danych.

You might also like

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.