Auf dieser Seite wird die Verwaltung der tempdb-Datenbank in Cloud SQL beschrieben.
Die tempdb-Datenbank ist eine Systemdatenbank, die viele Objekte enthält, einschließlich temporärer Tabellen, gespeicherter Prozeduren und mehr. In Ihren Instanzen können Sie übliche Vorgänge für diese Datenbank ausführen.
Eine tempdb-Datenbank wird bei jedem Neustart einer Instanz neu erstellt. Damit keine Nutzerberechtigungen verloren gehen, stellt Cloud SQL dem Nutzer sqlserver
nach dem Neustart einer Instanz Berechtigungen bereit.
Überblick
Der Nutzer sqlserver
hat die Berechtigung ALTER zum Verwalten der temporären Datenbankoptionen.
Weitere Informationen zum Verwalten dieser Ressource finden Sie auf der Seite Temporäre Datenbank.
tempdb-Dateien verwalten
Nachdem Sie die Verbindung zu einer Instanz hergestellt haben, kann der Nutzer sqlserver
die temporären Dateien verwalten.
Anzahl der Dateien
Der Nutzer hat die Berechtigung ALTER für die temporäre Datenbank. Damit kann er unter anderem Einstellungen für die Anzahl der Dateien steuern. Beispiele für Vorgänge:
ALTER DATABASE [tempdb] ADD FILE
ALTER DATABASE [tempdb] REMOVE
Dateigröße
In den folgenden Abschnitten werden Methoden beschrieben, mit denen die Größe von Dateien in der tempdb
-Datenbank gesteuert werden kann.
Weitere Informationen zu diesen Methoden finden Sie unter TempDB-Datenbank verkleinern.
Dateigrößen in tempdb ändern
Verwenden Sie die Anweisung ALTER DATABASE
, um die Größe der Dateien in der tempdb-Datenbank zu steuern. Weitere Informationen finden Sie unter ALTER DATABASE (Transact-SQL) Datei- und Dateigruppen-Optionen.
Größe einzelner Dateien verkleinern
msdb.dbo.gcloudsql_tempdb_shrinkfile
ist eine gespeicherte Prozedur, mit der Sie eine einzelne Datei in der tempdb
-Datenbank verkleinern können.
Diese gespeicherte Prozedur bietet dieselben Vorteile wie der Befehl DBCC SHRINKFILE
.
Im Folgenden finden Sie Beispiele für die Verwendung der gespeicherten Prozedur msdb.dbo.gcloudsql_tempdb_shrinkfile
und ihrer Parameter, die über Cloud SQL Studio ausgeführt werden:
Standardeinstellung
msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME'
Wobei:
- FILENAME: der Name der zu verkleinernden Datei. Beispiel:
tempdev
Mit diesem Befehl werden die folgenden SQL Server-Befehle ausgeführt:
USE tempdb
DBCC SHRINKFILE (@filename)
- FILENAME: der Name der zu verkleinernden Datei. Beispiel:
EMPTYFILE
msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME', @empty_file=EMPTY_FILE_INT
Wobei:
- EMPTY_FILE_INT: Ganzzahlwert, der entweder 0 oder 1 ist. Wenn „1“ festgelegt ist, wird
EMPTYFILE
als Option übergeben. Diese Option hat Vorrang vor anderen Parametern.
Mit diesem Befehl werden die folgenden SQL Server-Befehle ausgeführt:
USE tempdb
DBCC SHRINKFILE (@filename, EMPTYFILE)
- EMPTY_FILE_INT: Ganzzahlwert, der entweder 0 oder 1 ist. Wenn „1“ festgelegt ist, wird
Zielgröße
msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME', @target_size=TARGET_SIZE_INT
Wobei:
- TARGET_SIZE_INT: eine Ganzzahl, die die Zielgröße der Datei in Megabyte darstellt. Übergibt dem Befehl
DBCC SHRINKFILE
einen Wert, der größer oder gleich null ist. Beispiel:10
Mit diesem Befehl werden die folgenden SQL Server-Befehle ausgeführt. Die Ganzzahl 10 ist als Beispiel enthalten:
USE tempdb
DBCC SHRINKFILE (@filename, 10)
- TARGET_SIZE_INT: eine Ganzzahl, die die Zielgröße der Datei in Megabyte darstellt. Übergibt dem Befehl
Nur Zielgröße und Kürzung
msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME', @target_size=10, @truncateonly=TRUNCATE_ONLY_INT
Wobei:
- TRUNCATE_ONLY_INT: Akzeptiert den Ganzzahlwert „0“ oder „1“.
Wenn „1“ festgelegt ist, wird
TRUNCATEONLY
als Option übergeben. Die Zielgröße wird ignoriert, wennTRUNCATEONLY
übergeben wird. Diese Option hat Vorrang vorNOTRUNCATE
.
Mit diesem Befehl werden die folgenden SQL Server-Befehle ausgeführt:
USE tempdb
DBCC SHRINKFILE (@filename, 10, TRUNCATEONLY)
- TRUNCATE_ONLY_INT: Akzeptiert den Ganzzahlwert „0“ oder „1“.
Wenn „1“ festgelegt ist, wird
Zielgröße und keine Option zum Kürzen
msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME', @target_size=10, @no_truncate=NO_TRUNCATE_INT
Wobei:
- NO_TRUNCATE_INT: Akzeptiert den Ganzzahlwert „0“ oder „1“.
Wenn „1“ festgelegt ist, wird
NOTRUNCATE
als Option übergeben.
Mit diesem Befehl werden die folgenden SQL Server-Befehle ausgeführt:
USE tempdb
DBCC SHRINKFILE (@filename, 10, NOTRUNCATE)
- NO_TRUNCATE_INT: Akzeptiert den Ganzzahlwert „0“ oder „1“.
Wenn „1“ festgelegt ist, wird
Nächste Schritte
- Instanzeinstellungen
- Weitere Informationen zu Cloud SQL-Instanzen überwachen.