msdb-Datenbank

Gilt für:SQL ServerAzure SQL Managed Instance

Die msdb-Datenbank wird vom SQL Server-Agent zum Planen von Warnungen und Aufträgen und von anderen Features wie SQL Server Management Studio, Service Broker und Datenbank-E-Mail verwendet.

Beispielsweise verwaltet SQL Server automatisch einen vollständigen Onlinesicherungs- und Wiederherstellungsverlauf innerhalb von Tabellen in msdb. Diese Informationen umfassen den Namen der Person, die die Sicherung ausgeführt hat, den Zeitpunkt der Sicherung und die Angabe, auf welchen Medien bzw. in welchen Dateien die Sicherung gespeichert wurde. SQL Server Management Studio verwendet diese Informationen, um einen Plan für die Wiederherstellung einer Datenbank und das Anwenden von Transaktionsprotokollsicherungen vorzuschlagen. Sicherungsvorgänge für alle Datenbanken werden auch dann aufgezeichnet, wenn sie mit benutzerdefinierten Anwendungen oder Tools von Drittanbietern erstellt wurden. Wenn Sie beispielsweise eine Microsoft Visual Basic-Anwendung verwenden, die SQL Server Management Objects (SMO)-Objekte aufruft, um Sicherungsvorgänge auszuführen, wird das Ereignis in den Msdb-Systemtabellen , im Microsoft Windows-Anwendungsprotokoll und im SQL Server-Fehlerprotokoll protokolliert. Um die in der msdb-Datenbank gespeicherten Informationen zu schützen, empfiehlt es sich, das msdb -Transaktionsprotokoll auf einem fehlertoleranten Datenträger zu speichern.

Standardmäßig verwendet msdb das einfache Wiederherstellungsmodell. Wenn Sie die Tabellen mit dem Sicherungs- und Wiederherstellungsverlauf verwenden, empfiehlt es sich, das vollständige Wiederherstellungsmodell für msdbzu verwenden. Weitere Informationen finden Sie unter Wiederherstellungsmodelle (SQL Server). Beachten Sie, dass das Wiederherstellungsmodell von msdb automatisch auf einfache Weise festgelegt wird, wenn SQL Server installiert oder aktualisiert wird und wann immer Setup.exe zum Neuerstellen der Systemdatenbanken verwendet wird.

Wichtig

  • Nach einem Vorgang, durch den msdbaktualisiert wird (beispielsweise nach dem Sichern oder Wiederherstellen von Datenbanken), empfiehlt es sich, eine Sicherung von msdbauszuführen. Weitere Informationen finden Sie unter Sichern und Wiederherstellen von Systemdatenbanken (SQL Server).
  • In der msdb-Datenbank in der verwalteten Azure SQL-Instanz gibt es Unterschiede. Überprüfen Sie die Transparenz der Sicherung, um mehr zu erfahren.

Physische Eigenschaften der msdb-Datenbank

Die folgende Tabelle zeigt die Anfangskonfigurationswerte der msdb -Daten und -Protokolldateien. Die Größe dieser Dateien kann für unterschiedliche Editionen des SQL Server-Datenbankmoduls geringfügig variieren.

Datei Logischer Name Physikalischer Name Dateivergrößerung (file growth)
Primäre Daten MSDBData MSDBData.mdf Automatische Vergrößerung um 10 Prozent, bis der Speicherplatz auf dem Datenträger erschöpft ist.
Protokoll MSDBLog MSDBLog.ldf Automatische Vergrößerung um 10 %, bis der Maximalwert von 2 TB erreicht wird.

Informationen zum Verschieben der msdb -Datenbank oder -Protokolldateien finden Sie unter Verschieben von Systemdatenbanken.

Datenbankoptionen

Die folgende Tabelle zeigt den Standardwert jeder Datenbankoption in der msdb -Datenbank und gibt an, ob die Option geändert werden kann. Zum Anzeigen der aktuellen Einstellungen dieser Optionen verwenden Sie die Katalogsicht sys.databases .

Datenbankoption Standardwert Kann geändert werden.
ALLOW_SNAPSHOT_ISOLATION EIN Nein
ANSI_NULL_DEFAULT OFF Ja
ANSI_NULLS OFF Ja
ANSI_PADDING OFF Ja
ANSI_WARNINGS OFF Ja
ARITHABORT OFF Ja
AUTO_CLOSE OFF Ja
AUTO_CREATE_STATISTICS EIN Ja
AUTO_SHRINK OFF Ja
AUTO_UPDATE_STATISTICS EIN Ja
AUTO_UPDATE_STATISTICS_ASYNC OFF Ja
CHANGE_TRACKING OFF Nein
CONCAT_NULL_YIELDS_NULL OFF Ja
CURSOR_CLOSE_ON_COMMIT OFF Ja
CURSOR_DEFAULT GLOBAL Ja
Datenbankverfügbarkeitsoptionen ONLINE

MULTI_USER

READ_WRITE
Nein

Ja

Ja
DATE_CORRELATION_OPTIMIZATION OFF Ja
DB_CHAINING EIN Ja
ENCRYPTION OFF Nein
MIXED_PAGE_ALLOCATION EIN Nein
NUMERIC_ROUNDABORT OFF Ja
PAGE_VERIFY CHECKSUM Ja
PARAMETERIZATION SIMPLE Ja
QUOTED_IDENTIFIER OFF Ja
READ_COMMITTED_SNAPSHOT OFF Nein
RECOVERY SIMPLE Ja
RECURSIVE_TRIGGERS OFF Ja
Service Broker-Optionen ENABLE_BROKER Ja
TRUSTWORTHY EIN Ja

Eine Beschreibung dieser Datenbankoptionen finden Sie unter ALTER DATABASE (Transact-SQL).For a description of these database options, see ALTER DATABASE (Transact-SQL).

Beschränkungen

Die folgenden Operationen können an der msdb -Datenbank nicht ausgeführt werden:

  • Ändern der Sortierung. Die Standardsortierung entspricht der Serversortierung.
  • Löschen der Datenbank.
  • Löschen des guest -Benutzers aus der Datenbank.
  • Aktivieren von Change Data Capture
  • Teilnehmen an der Datenbankspiegelung.
  • Entfernen der primären Dateigruppe, der primären Datendatei oder der Protokolldatei.
  • Umbenennen der Datenbank oder der primären Dateigruppe.
  • Versetzen der Datenbank in den OFFLINE-Modus.
  • Versetzen der primären Dateigruppe in den READ_ONLY-Modus.

Empfehlungen

Berücksichtigen Sie beim Arbeiten mit der msdb-Datenbank die folgenden Empfehlungen:

  • Es ist immer eine aktuelle Sicherung der msdb-Datenbank verfügbar.

  • Sichern Sie die msdb-Datenbank so schnell wie möglich nach den folgenden Vorgängen:

    • Erstellen, Ändern oder Löschen von Aufträgen, Warnungen, Proxys oder Wartungsplänen
    • Hinzufügen, Ändern oder Löschen von Datenbank-E-Mail-Profilen
    • Hinzufügen, Ändern oder Löschen richtlinienbasierter Verwaltungsrichtlinien
  • Erstellen Sie keine Benutzerobjekte in msdb. Wenn Sie dies tun, muss msdb häufiger gesichert werden.

  • Behandeln Sie die msdb-Datenbank als streng vertraulich, und gewähren Sie keinen Zugriff auf alle Benutzer, ohne dass sie ordnungsgemäß benötigt werden. Beachten Sie insbesondere, dass SQL Server-Agent-Aufträge häufig Mitglieder der Sysadmin-Rolle sind und daher sicherstellen, dass ausgeführter Code nicht manipuliert werden kann.

  • Überwachen von Änderungen an Objekten in msdb