Systemdatenbanken
Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed Instance
SQL Server enthält die folgenden Systemdatenbanken.
Systemdatenbank | Beschreibung |
---|---|
master-Datenbank | Zeichnet alle Informationen auf Systemebene für eine Instanz von SQL Server auf. |
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 auf der Instanz von SQL Server erstellt wurden. Ä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 | Ist eine schreibgeschützte Datenbank, die Systemobjekte enthält, die in SQL Server enthalten 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. |
Wichtig
Für Azure SQL-Datenbank Singletons und Pools für elastische Datenbanken gelten nur die Masterdatenbank und die tempdb-Datenbank. Weitere Informationen finden Sie unter Was ist ein Azure SQL-Datenbank-Server. Eine Erläuterung von tempdb im Kontext von Azure SQL-Datenbank finden Sie unter tempdb-Datenbank in Azure SQL-Datenbank. Für Azure SQL Managed Instance gelten alle Systemdatenbanken. Weitere Informationen zu verwalteten Instanzen in Azure SQL-Datenbank finden Sie unter Was ist eine verwaltete Instanz.
Ändern von Systemdaten
SQL Server unterstützt keine direkte Aktualisierung der Informationen in Systemobjekten wie Systemtabellen, gespeicherten Systemprozeduren und Katalogansichten. Stattdessen stellt SQL Server einen vollständigen Satz von Verwaltungstools bereit, mit denen Benutzer ihr System vollständig verwalten und alle Benutzer und Objekte in einer Datenbank verwalten können. Diese umfassen die folgenden Themen:
Verwaltungshilfsprogramme, z. B. SQL Server Management Studio.
SQL-SMO-API. Auf diese Weise können Programmierer vollständige Funktionen für die Verwaltung von SQL Server in ihren Anwendungen enthalten.
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. Beispielsweise muss SQL Server manchmal die Systemtabellen in neuen Versionen von SQL Server ändern, um neue Funktionen zu unterstützen, die in dieser Version hinzugefügt werden. Anwendungen, die SELECT-Anweisungen ausgeben, die direkt auf Systemtabellen verweisen, sind häufig auf das alte Format der Systemtabellen angewiesen. Websites können möglicherweise nicht auf eine neue Version von SQL Server aktualisieren, bis sie Anwendungen neu geschrieben haben, die aus Systemtabellen ausgewählt werden. SQL Server betrachtet die vom System gespeicherten Prozeduren, DDL und SQL-SMO veröffentlichten Schnittstellen und arbeitet daran, die Abwärtskompatibilität dieser Schnittstellen aufrechtzuerhalten.
SQL Server unterstützt in den Systemtabellen definierte Trigger nicht, da sie den Vorgang des Systems ändern können.
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
Transact-SQL-System gespeicherte Prozeduren und integrierte Funktionen.
Related Tasks
Verwandte Inhalte
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Tickets als Feedbackmechanismus für Inhalte auslaufen lassen und es durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unter:Einreichen und Feedback anzeigen für