Windows Server: Odzyskiwanie bazy danych MSDB Microsoft SQL Server

Riepilogo: Informacje na temat odzyskiwania bazy danych MSDB Microsoft SQL Server.

Questo articolo si applica a Questo articolo non si applica a Questo articolo non è legato a un prodotto specifico. Non tutte le versioni del prodotto sono identificate in questo articolo.

Sintomi

W przypadku uszkodzenia bazy danych MSDB programu Microsoft SQL Server może nie być w trybie online i nie działać. Usługa agenta SQL Server nie jest uruchamiana, a żadne zaplanowane zadania nie są uruchamiane automatycznie ani ręcznie.

Causa

Uszkodzenie pliku bazy danych SQL Server może wystąpić z wielu różnych powodów. Większość zdarzeń związanych z uszkodzeniem bazy danych MSDB w programie Microsoft SQL Server ma miejsce z powodu problemów sprzętowych związanych z pamięcią, dyskiem lub procesorem.

Risoluzione

Istnieją trzy metody odzyskiwania baz danych Microsoft SQL MSDB:
  1. Przywróć z kopii zapasowej
  2. Używanie bazy danych DBCC CheckDB do naprawy bazy danych MSDB
  3. Zastąp pliki bazy danych MSDB
Przywracanie bazy danych MSDB z kopii zapasowej:
Proces przywracania za pomocą SQL Server Management Studio wymaga aktualnej kopii zapasowej i można go wykonać, przechodząc do właściwości bazy danych "msdb", Tasks >Restore >Database i wskazując lokalizację nośnika kopii zapasowej.
 
Wyświetla kroki przywracania bazy danych MSDB w programie SQL Server Studio Manager.

Użyj bazy danych DBCC CheckDB do naprawy bazy danych:
Jeśli kopia zapasowa nie jest dostępna, możemy uruchomić DBCC CheckDB, aby zapisać bieżącą bazę danych MSDB i jej zawartość. Poniższe polecenia języka T-SQL sprawdzają integralność bazy danych MSDB. Uruchom miękką naprawę bazy danych MSDB, a na koniec twardą naprawę bazy danych MSDB:
  • Sprawdzanie integralności bazy danych MSDB; Czy baza danych jest wolna od uszkodzeń?
Uruchom następujące polecenie w oknie zapytania programu SSMS:
USE Master;
      GO
        ALTER Database MSDB
        SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
        GO
        DBCC CHECKDB (msdb, NOINDEX);
        GO
        ALTER DATABASE MSDB
        SET-MULTI_USER;
        GO
Chcemy sprawdzić wiersz u dołu okna zwrotu zgłaszający błędy "alokacji" i "spójności". Uszkodzona baza danych MSDB zgłasza błąd i wymaga naprawy przy użyciu poniższych poleceń DBCC CHECKDB.
 
Wyniki DBCC CHECkDB podczas sprawdzania błędów spójności.
  • Polecenie MSDB T-SQL dla próby "miękkiego odzyskiwania" bez utraty danych:
Uruchom następujące polecenie w oknie zapytania programu SSMS:
USE Master;
      GO
        ALTER Database MSDB
        SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
        GO
        DBCC CHECKDB (msdb, REPAIR_REBUILD);
        GO
        ALTER DATABASE MSDB
        SET-MULTI_USER;
        GO
Po wykonaniu powyższego polecenia uruchom ponownie DBCC CheckDB, aby wyświetlić nowy stan bazy danych.
  • Polecenie MSDB T-SQL dla próby "twardego odzyskiwania" z możliwą utratą danych:
Uruchom następujące polecenie w oknie zapytania programu SSMS:
USE Master;
      GO
        ALTER Database MSDB
        SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
        GO
        DBCC CHECKDB (msdb, REPAIR_ALLOW_DATA_LOSS);
        GO
        ALTER DATABASE MSDB
        SET-MULTI_USER;
        GO
Po wykonaniu powyższego polecenia uruchom ponownie DBCC CheckDB, aby wyświetlić nowy stan bazy danych.

Zastąp pliki bazy danych MSDB.
Jeśli baza danych MSDB jest uszkodzona, a opcje naprawy DBCC nie działają, należy dodać nową bazę danych MSDB, zastępując pliki bazy danych MSDB.

Po zastąpieniu plików bazy danych MSDB tracimy wszystkie informacje, takie jak niestandardowe zadania tworzenia kopii zapasowych, informacje o zadaniach, replikacja, wysyłka dzienników i dane planu konserwacji.

Poniższe czynności służą do zastąpienia istniejącej bazy danych MSDB nową domyślną bazą danych MSDB.
  • Przejdź do katalogu instalacyjnego SQL Server i przejdź do folderu Templates w katalogu Binn:
Wyświetlanie lokalizacji pliku bazy danych MSDB i szablonów dziennika.

Pliki msdbdata.mdf i msdblog.ldf to pliki szablonów baz danych MSDB, które musimy uruchomić w nowej, stabilnej bazie danych MSDB.
  • Musimy zatrzymać usługę SQL Server, aby zastąpić istniejące pliki bazy danych MSDB.
Wyświetlanie lokalizacji w programie SQL Server Management Studio, w której można uruchomić lub zatrzymać usługę SQL Server.
  • Przejdź do katalogu danych programu SQL Server. Ścieżka katalogu w poniższym przykładzie to C:\Program Files\Microsoft SQL Server\MSSQL15.SQL2019\MSSQL\DATA
Ścieżka katalogu danych programu SQL Server
 
  • Znajdź uszkodzone pliki "msdbdata.mdf" i "msdblog.ldf".
Pokazuje domyślną lokalizację bazy danych MSDB i pliku dziennika w katalogu aplikacji SQL Server.
  • Skopiuj i przenieś pliki do innego katalogu; W tym przypadku przenosimy je do folderu o nazwie "MSDB_Save". Istnieje szansa, że pliki te można zaimportować do innej instalacji SQL Server i ponownie sprawdzić za pomocą DBCC CHECKDB; Usuwanie uszkodzonych plików bazy danych podczas rozwiązywania problemów nie jest najlepszą praktyką.
                Pokazywanie lokalizacji do przechowywania uszkodzonych plików bazy danych MSDB.
  • Znajdź miejsce, w którym są zapisywane pliki tymczasowej bazy danych MSDB i umieść ich kopię z powrotem w naszym domyślnym katalogu bazy danych SQL Server:
Lokalizacja szablonów plików bazy danych MSDB programu SQL Server
  • Ostateczna lokalizacja plików tymczasowych bazy danych MSDB; z powrotem do domyślnego katalogu danych C:\Program Files\Microsoft SQL Server\MSSQL15.SQL2019\MSSQL\DATA.
Usługa Active Directory dla plików baz danych MSDB
  • Po zastąpieniu plików bazy danych MSDB uruchom usługę SQL Server.
Wyświetlanie, gdzie w SQL Server Management Studio można ponownie uruchomić usługę SQL Server.
 

Prodotti interessati

Microsoft Windows Server 2016, Microsoft Windows Server 2019, Microsoft Windows Server 2022, Microsoft Windows Server 2025

Prodotti

C Series, HS Series, Modular Infrastructure, Tower Servers, PowerEdge R240, PowerEdge R250, PowerEdge R260, PowerEdge R340, PowerEdge R350, PowerEdge R360, PowerEdge R440, PowerEdge R450, PowerEdge R540, PowerEdge R550, PowerEdge R640 , PowerEdge R6415, PowerEdge R650, PowerEdge R650xs, PowerEdge R6515, PowerEdge R6525, PowerEdge R660, PowerEdge R660xs, PowerEdge R6615, PowerEdge R6625, PowerEdge R740, PowerEdge R740XD, PowerEdge R740XD2, PowerEdge R7415, PowerEdge R7425, PowerEdge R750, PowerEdge R750XA, PowerEdge R750xs, PowerEdge R7515, PowerEdge R7525, PowerEdge R760, PowerEdge R760XA, PowerEdge R760xd2, PowerEdge R760xs, PowerEdge R7615, PowerEdge R7625, PowerEdge R840, PowerEdge R860, PowerEdge R940, PowerEdge R940xa, PowerEdge R960 ...
Proprietà dell'articolo
Numero articolo: 000200606
Tipo di articolo: Solution
Ultima modifica: 05 set 2025
Versione:  9
Trova risposta alle tue domande dagli altri utenti Dell
Support Services
Verifica che il dispositivo sia coperto dai Servizi di supporto.