Wenn die MSDB Datenbank eines SQL Servers einen Datenbankfehler meldet und man
keine funktionierende / fehlerfreie Sicherung hat, stellt dies meist ein größeres Problem dar,
da diese nicht mit DBCC CHECKDB repariert werden kann.
Abhilfe schafft meist nur das neu Erstellen der gesamten MSDB Datenbank.
(Leider gehen hierbei unter anderem die eingerichteten Sicherungsjobs verloren)
Die MSDB kann wie folgt beschrieben neu erstellt werden (SQL Server 2000):
- Im SQL Server Enterprise Manager die Eigenschaften des Datenbankservers öffnen.
(Rechtsklick auf den Datenbankserver -> Eigenschaften)
- Auf dem Reiter „Allgemein“ auf den Button „Startparameter“ klicken.
- Den Parameter "-T3608" hinzufügen.
- Den Datenbankserver stoppen und neu starten.
- Überprüfen, dass der SQL Server Agent gestoppt ist.
- Die MSDB Datenbank auswählen und über „Extras -> SQL Query Analyzer“ den QueryAnalyzer starten.
- Die MSDB Datenbank mit folgendem Skript abhängen
use master
go
sp_detach_db ‚msdb’
go
- Die defekte MSDB Datenbank (msdbdata.mdf, msdblog.ldf) löschen oder umbenennen (auf Fileebene).
- Das "instmsdb.sql" Skript mit dem QueryAnalyzer ausführen.
(Liegt unter: …\Microsoft SQL Server\MSSQL\Install)
- Im SQL Server Enterprise Manager wieder den Startparameter "-T3608" entfernen.
- Den Datenbankserver stoppen und neu starten.
Jetzt sollte wieder eine funktionierende und fehlerfreie MSDB Datenbank vorliegen.
Bei einem SQL Server 2005 sollte dies genau so funktionieren.