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 tempdb-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, mit der er Einstellungen für die Anzahl der Dateien und mehr steuern kann. Beispiele für Vorgänge:
ALTER DATABASE [tempdb] ADD FILE
ALTER DATABASE [tempdb] REMOVE
Dateigröße
In den folgenden Abschnitten werden Methoden zum Steuern der Größe von Dateien in der tempdb
-Datenbank beschrieben.
Weitere Informationen zu diesen Methoden finden Sie unter TempDB-Datenbank verkleinern.
Dateigrößen in tempdb ändern
Verwenden Sie die ALTER DATABASE
-Anweisung, 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 verringern
msdb.dbo.gcloudsql_tempdb_shrinkfile
ist eine gespeicherte Prozedur, mit der Sie eine einzelne Datei in der Datenbank tempdb
verkleinern können.
Diese gespeicherte Prozedur bietet alle Vorteile des Befehls 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: Ein Ganzzahlwert, der entweder 0 oder 1 ist. Wenn 1, 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: Ein Ganzzahlwert, der entweder 0 oder 1 ist. Wenn 1, 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 an den
DBCC SHRINKFILE
-Befehl alle Werte, die größer oder gleich null sind. 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 an den
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 einen Ganzzahlwert von „0“ oder „1“.
Wenn der Wert auf 1 gesetzt 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 einen Ganzzahlwert von „0“ oder „1“.
Wenn der Wert auf 1 gesetzt 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 einen Ganzzahlwert von „0“ oder „1“.
Wenn der Wert auf 1 gesetzt 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 einen Ganzzahlwert von „0“ oder „1“.
Wenn der Wert auf 1 gesetzt ist, wird
Nächste Schritte
- Instanzeinstellungen
- Weitere Informationen zu Cloud SQL-Instanzen überwachen.