tempdb-Datenbank

Aktualisiert: 14. April 2006

Die tempdb-Systemdatenbank ist eine globale Ressource, die für alle Benutzer verfügbar ist, die mit der Instanz von SQL Server verbunden sind. In der Datenbank sind die folgenden Elemente enthalten:

  • Temporäre Benutzerobjekte, die explizit erstellt werden, z. B. globale oder lokale temporäre Tabellen, temporäre gespeicherte Prozeduren, Tabellenvariablen oder Cursor.
  • Interne Objekte, die von SQL Server 2005-Datenbankmodul erstellt werden, z. B. Arbeitstabellen zum Speichern von Zwischenergebnissen für Spool- und Sortiervorgänge.
  • Zeilenversionen, die von Datenänderungstransaktionen in einer Datenbank generiert werden, die READ COMMITTED mit Zeilenversionsverwaltung oder Transaktionen der Snapshotisolation verwendet.
  • Zeilenversionen, die von Datenänderungstransaktionen für Features, wie z. B. Onlineindexvorgänge, Multiple Active Result Sets (MARS) und AFTER-Trigger, generiert wurden.

Die Operationen in tempdb werden minimal protokolliert. Dies ermöglicht einen Rollback der Transaktionen. tempdb wird bei jedem Start von SQL Server neu erstellt, damit das System immer eine einwandfreie Kopie der Datenbank verwenden kann. Temporäre Tabellen und gespeicherte Prozeduren werden beim Trennen der Verbindung automatisch gelöscht; es sind keine Verbindungen aktiv, wenn das System heruntergefahren wird. Daher wird zwischen den einzelnen Sitzungen von SQL Server nichts in tempdb gespeichert. Sicherungs- und Wiederherstellungsvorgänge sind in tempdb nicht zulässig.

physikalische Eigenschaften von tempdb

Die folgende Tabelle listet die anfänglichen Konfigurationswerte der tempdb-Daten- und Protokolldateien auf. Die Größe dieser Dateien kann sich in den verschiedenen Editionen von SQL Server 2005 geringfügig unterscheiden.

Datei Logischer Name physikalischer Name Dateizuwachs

Primäre Daten

tempdev

tempdb.mdf

Automatische Vergrößerung um 10 Prozent, bis der Speicherplatz auf dem Datenträger erschöpft ist.

Protokoll

templog

templog.ldf

Automatische Vergrößerung um 10 Prozent bis maximal 2 TB

Die Größe von tempdb kann sich auf Leistung eines Systems auswirken. Wenn tempdb z. B. zu klein ist, kann die Systemverarbeitung mit der automatischen Vergrößerung der Datenbank ausgelastet sein, um Ihre Arbeitslastanforderungen bei jedem Start von SQL Server zu erfüllen. Sie können diesen zusätzlichen Aufwand vermeiden, indem Sie die Größe von tempdb heraufsetzen. Weitere Informationen finden Sie unter Optimieren der Leistung von 'tempdb' und Kapazitätsplanung für tempdb.

Leistungsverbesserungen in tempdb

Die Leistung von tempdb wurde in SQL Server 2005 folgendermaßen verbessert:

  • Temporäre Tabellen und Tabellenvariablen können zwischengespeichert werden. Das Zwischenspeichern ermöglicht das sehr schnelle Ausführen von Vorgängen zum Löschen und Erstellen der temporären Objekte und reduziert das Auftreten von Seitenzuordnungskonflikten.
  • Das Latchprotokoll für Seitenzuordnungen wurde verbessert. Dadurch wird die Anzahl der verwendeten UP-Latches (Update) reduziert.
  • Der Protokollierungsaufwand für tempdb wurde reduziert. Dadurch wird die in der tempdb-Protokolldatei verwendete E/A-Bandbreite reduziert.
  • Der Algorithmus zum Zuordnen von gemischten Seiten in tempdb wurde verbessert.

Verschieben der tempdb-Daten- und -Protokolldateien

Weitere Informationen zum Verschieben der tempdb-Daten- und -Protokolldateien finden Sie unter Verschieben von Systemdatenbanken.

Datenbankoptionen

Die folgende Tabelle nennt die Standardwerte für die einzelnen Datenbankoptionen in der tempdb-Datenbank und gibt an, ob die entsprechende Option geändert werden kann. Wenn Sie die aktuellen Einstellungen für diese Optionen anzeigen möchten, verwenden Sie die sys.databases-Katalogsicht.

Datenbankoption Standardwert Kann geändert werden.

ALLOW_SNAPSHOT_ISOLATION

OFF

Ja

ANSI_NULL_DEFAULT

OFF

Ja

ANSI_NULLS

OFF

Ja

ANSI_PADDING

OFF

Ja

ANSI_WARNINGS

OFF

Ja

ARITHABORT

OFF

Ja

AUTO_CLOSE

OFF

Nein

AUTO_CREATE_STATISTICS

ON

Ja

AUTO_SHRINK

OFF

Nein

AUTO_UPDATE_STATISTICS

ON

Ja

AUTO_UPDATE_STATISTICS_ASYNC

OFF

Ja

CONCAT_NULL_YIELDS_NULL

OFF

Ja

CURSOR_CLOSE_ON_COMMIT

OFF

Ja

CURSOR_DEFAULT

GLOBAL

Ja

Datenbankverfügbarkeitsoptionen

ONLINE

MULTI_USER

READ_WRITE

Nein

Nein

Nein

DATE_CORRELATION_OPTIMIZATION

OFF

Ja

DB_CHAINING

ON

Nein

NUMERIC_ROUNDABORT

OFF

Ja

PAGE_VERIFY

NONE

Nein

PARAMETERIZATION

SIMPLE

Ja

QUOTED_IDENTIFIER

OFF

Ja

READ_COMMITTED_SNAPSHOT

OFF

Nein

RECOVERY

SIMPLE

Nein

RECURSIVE_TRIGGERS

OFF

Ja

Service Broker-Optionen

ENABLE_BROKER

Ja

TRUSTWORTHY

OFF

Nein

Eine Beschreibung dieser Datenbankoptionen finden Sie unter ALTER DATABASE (Transact-SQL).

Einschränkungen

Die folgenden Operationen können mit der tempdb-Datenbank nicht ausgeführt werden:

  • Hinzufügen von Dateigruppen.
  • Sichern und Wiederherstellen der Datenbank.
  • Ändern der Sortierung. Die Standardsortierung ist die Serversortierung.
  • Ändern des Datenbankbesitzers. tempdb befindet sich im Besitz von dbo.
  • Erstellen eines Datenbanksnapshots.
  • Löschen der Datenbank.
  • Löschen des guest-Benutzers aus der Datenbank.
  • Teilnehmen an der Datenbankspiegelung.
  • Wiederherstellen der primären Dateigruppe, der primären Datendatei oder der Protokolldatei.
  • Umbenennen der Datenbank oder primären Dateigruppe.
  • Ausführen von DBCC CHECKALLOC.
  • Ausführen von DBCC CHECKCATALOG.
  • Festlegen der Datenbank auf OFFLINE.
  • Festlegen der Datenbank oder primären Dateigruppe auf READ_ONLY.

Siehe auch

Aufgaben

Problembehandlung bei unzureichendem Speicherplatz in tempdb

Konzepte

Optimieren der Leistung von 'tempdb'
Kapazitätsplanung für tempdb
tempdb und Indexerstellung
Systemdatenbanken

Andere Ressourcen

sys.databases (Transact-SQL)
sys.master_files (Transact-SQL)
Verschieben von Datenbankdateien

Hilfe und Informationen

Informationsquellen für SQL Server 2005

Änderungsverlauf

Version Verlauf

14. April 2006

Neuer Inhalt:
  • Datenbanksnapshot, DBCC CHECKALLOC und DBCC CHECKCATALOG wurden zur Liste der eingeschränkten Vorgänge hinzugefügt.
  • Der Hinweis, dass Sicherungs- und Wiederherstellungsvorgänge in tempdb nicht zulässig sind, wurde hinzugefügt.

05. Dezember 2005

Neuer Inhalt:
  • Ein Abschnitt über die Leistungsverbesserungen wurde hinzugefügt.
Geänderter Inhalt:
  • Der Verweis auf die SUPPLEMENTAL_LOGGING-Option wurde entfernt.