Freigeben über


Systemdatenbanken

SQL Server enthält die folgenden Systemdatenbanken.

Systemdatenbank BESCHREIBUNG
master-Datenbank Zeichnet alle Informationen auf Systemebene für eine Instanz von SQL Serverauf.
msdb-Datenbank Wird vom SQL Server-Agent verwendet, um Termine für Warnungen und Aufträge zu planen.
model-Datenbank Wird als Vorlage für alle Datenbanken verwendet, die für die Instanz von SQL Servererstellt werden. Änderungen, die an der model -Datenbank vorgenommen werden, z. B. an der Datenbankgröße, der -sortierung, am Wiederherstellungsmodell und an anderen Datenbankoptionen, werden auf jede Datenbank angewendet, die anschließend erstellt wird.
Ressourcendatenbank Eine schreibgeschützte Datenbank, die Systemobjekte enthält, die in SQL Serverenthalten sind. Systemobjekte werden physisch in der Ressourcendatenbank gespeichert, logisch jedoch im sys -Schema jeder Datenbank angezeigt.
tempdb-Datenbank Ein Arbeitsbereich zum Speichern von temporären Objekten oder Zwischenresultsets.

Ändern von Systemdaten

SQL Server unterstützt keine direkten Updates der Informationen in Systemobjekten (z. B. Systemtabellen, gespeicherten Systemprozeduren und Katalogsichten) durch Benutzer. Stattdessen stellt SQL Server einen vollständigen Satz administrativer Tools zur Verfügung, die Benutzern das umfassende Verwalten des Systems sowie aller Benutzer und Objekte in einer Datenbank ermöglichen. Dabei handelt es sich z. B. um:

  • Verwaltungsprogramme, z. B. SQL Server Management Studio.

  • SQL-SMO-API. Über diese API können Programmierer vollständige Funktionen zum Verwalten von SQL Server in ihren Anwendungen bereitstellen.

  • Transact-SQL-Skripts und gespeicherte Prozeduren. Diese können gespeicherte Systemprozeduren und Transact-SQL DDL-Anweisungen verwenden.

Diese Tools schützen Anwendungen vor Änderungen an den Systemobjekten. SQL Server muss z. B. in neuen Versionen von SQL Server in einigen Fällen Änderungen an den Systemtabellen durchführen, um neue Funktionen in den jeweiligen Versionen zu unterstützen. Anwendungen, die SELECT-Anweisungen ausgeben, die direkt auf Systemtabellen verweisen, sind häufig auf das alte Format der Systemtabellen angewiesen. Standorte können möglicherweise erst dann auf eine neue Version von SQL Server aktualisiert werden, nachdem die Anwendungen umgeschrieben wurden, die SELECT-Anweisungen für Systemtabellen ausführen. SQL Server berücksichtigt die durch gespeicherte Systemprozeduren, DDL und SQL-SMO veröffentlichten Schnittstellen, und versucht, die Abwärtskompatibilität dieser Schnittstellen aufrechtzuerhalten.

SQL Server stellt keine Unterstützung für Trigger zur Verfügung, die für die Systemtabellen definiert wurden, da durch sie der Systembetrieb verändert werden kann.

Hinweis

Systemdatenbanken dürfen nicht in Verzeichnissen von UNC-Freigaben enthalten sein.

Anzeigen von System-Datenbankdaten

Sie sollten keine Transact-SQL-Anweisungen codieren, die die Systemtabellen direkt abfragen, es sei denn, dies ist die einzige Möglichkeit, die von der Anwendung benötigten Informationen abzurufen. Anwendungen sollten Katalog- und Systeminformationen mithilfe der folgenden Mechanismen abrufen:

  • Systemkatalogsichten

  • SQL-SMO

  • WMI-Schnittstelle (Windows Management Instrumentation, Windows-Verwaltungsinstrumentation)

  • Katalogfunktionen, Methoden, Attribute oder Eigenschaften der in der Anwendung verwendeten Daten-API, z. B. ADO, OLE DB oder ODBC

  • Gespeicherte Transact-SQL-Systemprozeduren und integrierte Funktionen.

Sichern und Wiederherstellen von Systemdatenbanken (SQL Server)

Ausblenden von Systemobjekten im Objekt-Explorer

Katalogsichten (Transact-SQL)

Datenbanken