LKBDE11338: Komprimieren ("shrinking") einer SQL Datenbank unter Microsoft SQL Server 2005


Symptom

Du stellst fest, dass eine bestimmte Datenbank hat sehr viel ungenutzten Speicherplatz, dieser soll freigegeben werden.

Cause

Dies ist normal, Datenbankplatz wurde belegt und später durch Löschen von Datensätzen wieder freigegeben

Solution

- Verbinde Dich mit der Instanz SQL Server 2005 Datenbank Engine und erweitere die Instanz
- Erweitere "Datenbanken und rechtsklicke die Datenbank, die verkleinert werden soll.
- Klick auf "Tasks", wähle "komprimieren" ("to shrink"), danach klicke "Datenbank" ("Database").

- Optional kann die Checkbox "Dateien vor ungenutzter Speicherfreigabe reorganisieren" ("reorganize files before releasing unused space").
Ist dieser Punkt ausgewählt, muss auch ein Wert für den maximalen Freiraum nach der Komprimierung angegeben werden (ich empfehle diese Option!).

Diese Option entspricht dem "target_percent" Wert, wenn der Befehl "DBCC SHRINKDATABASE" verwendet wird.  Die Option nicht zu wählen ist genauso, wie der Befehlt "DBCC SHRINKDATABASE" mit der "TRUNCATEONLY" Option. TRUNCATEONLY verkleinert die Datenbankdatei zur zuletzt allokierten Ausdehnung. Dies reduziert die Dateigröße, ohne dass Daten verschoben werden.
Als Standardwert ist diese Option nicht gesetzt.

Ältere Versionen von SQL Server kennen nur das DBCC SHRINKDATABASE Werkzeug.

- Gib den maximialen Prozentsatz an freiem Speicherplatz an, der in der Datenbankdatei nach der Komprimierung erhalten bleiben soll. Mögliche Werte liegen zwischen 0 und 99. Die Option ist nur verfügbar, wenn der Haken bei "Reorganize files before releasing unused space" gesetzt wurde.

- Klick .

Disclaimer:

The information provided in this document is intended for your information only. Lubby makes no claims to the validity of this information. Use of this information is at own risk!

About the Author

Author: Wim Peeters - Keskon GmbH & Co. KG

Wim Peeters is electronics engineer with an additional master in IT and over 30 years of experience, including time spent in support, development, consulting, training and database administration. Wim has worked with SQL Server since version 6.5. He has developed in C/C++, Java and C# on Windows and Linux. He writes knowledge base articles to solve IT problems and publishes them on the Lubby Knowledge Platform.