Verkleinern einer Datenbank mit MSSQL-Server
Inhaltsverzeichnis
1 Allgemeines
Der Microsoft©SQL-Server© speichert alle Änderungen der Datenbank in einer "Log-Datei", damit die Änderungen jederzeit wieder rückgängig gemacht werden können. Das ist im Prinzip eine feine Sache, hat jedoch u.U. einen Nachteil:
Je nach Einstellung wird die Log-Datei immer größer und größer! Mit der Zeit kann es sein, dass die Datenbank-Datei z.B. 2 GB groß ist, die Log-Datei aber 20 GB! Das belastet den Server unnötig und verlangsamt auch die Zugriffe auf die Daten teilweise extrem!
1.1 Verkleinern per SQL-Script
Verwenden Sie dieses SQL-Script, um die Datenbank-Logdatei zu verkleinern:
-- ------------------------------------------------------------------------ -- Dieser Script stellt die Datenbank "reflex" auf das einfache -- Transaktionsprotokoll um. Damit wächst die Log-Datei nicht mehr -- ins Unendliche, wenn man kein regelmässiges SQL-Backup durchführt. -- ------------------------------------------------------------------------ USE [master] GO ALTER DATABASE [REFLEX] SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE [REFLEX] SET RECOVERY SIMPLE GO -- ------------------------------------------------------------------------ -- Dieser Script verkleinert die Log-Datei auf 10 MB -- ------------------------------------------------------------------------ USE [reflex] GO DBCC SHRINKFILE (N'REFLEX_Log' , 10) GO
Wichtige Hinweise dazu:
- Dieser Script geht davon aus, dass den Name der Datenbank "REFLEX" lautet! Wenn Ihre Datenbank anders heißt, müssen Sie statt "REFLEX" Ihren Datenbank-Namen verwenden!
1.2 Verkleinern mit dem SQL Server Management Studio©
Man die Log-Datei auch mit dem SQL Server Management Studio© verkleinern.
Öffnen Sie das das SQL Server Management Studio© und melden Sie sich mit einem Benutzer an, der SQL-Administrator-Rechte hat! Dann klicken Sie im Baum links mit der rechten Maustaste auf die Datenbank und wählen aus dem Menü "Eigenschaften" aus.
1.2.1 Wiederherstellungsmodell prüfen/ändern
Zuerst müssen Sie das sog. "Wiederherstellungsmodell" prüfen und ggf. ändern.
Das Wiederherstellungsmodell ist eine Option, mit der festgelegt wird, wie die Log-Datei behandelt wird:
Vollständig bedeutet, dass alle Änderungen der Datenbank ohne zeitliche oder größenmäßige Einschränkung protokolliert werden! Das ist unnötig und führt zu einer übermäßigen Dateigröße der Log-Datei.
Einfach heißt, dass die Protokolldatei nur zu einer bestimmte Größe erreichen kann und die ältesten Daten gelöscht werden, wenn die Größe erreicht ist. Dieses ist die empfohlene Option!
Siehe auch [1]
Zum Anzeigen/ändern des Wiederherstellungsmodells klicken Sie im Eigenschafts-Menü auf das Register "Optionen":
Stellen Sie hier das einfache Wiederherstellungsmodell ein!