Microsoft SQL 2005 Transaktionsprotokoll
ist zu groß und es sind mehrere Dateien!?
Guten Tag zusammen,
unsere (Haupt-) Datenbank ist ca. 200 GB groß. Vor kurzem mussten wir unsere Datenbank konvertieren. Beim konvertieren, wurde die Transaktions-Log Datei so groß, dass wir 2 weitere Dateien auf weiteren Festplatten erstellen mussten.
Ist es nun möglich die überflüssigen Log-Dateien zu entfernen? Die Datensicherung der Transaktions-Log Datei läuft ebenfalls nicht mehr (über 350 GB)..
Wie kann man eine Log-Datei verkleinern und die überflüssigen entfernen?
Freue mich über jeden Tipp..
Gruß
Guten Tag zusammen,
unsere (Haupt-) Datenbank ist ca. 200 GB groß. Vor kurzem mussten wir unsere Datenbank konvertieren. Beim konvertieren, wurde die Transaktions-Log Datei so groß, dass wir 2 weitere Dateien auf weiteren Festplatten erstellen mussten.
Ist es nun möglich die überflüssigen Log-Dateien zu entfernen? Die Datensicherung der Transaktions-Log Datei läuft ebenfalls nicht mehr (über 350 GB)..
Wie kann man eine Log-Datei verkleinern und die überflüssigen entfernen?
Freue mich über jeden Tipp..
Gruß
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 100343
Url: https://administrator.de/forum/microsoft-sql-2005-transaktionsprotokoll-100343.html
Ausgedruckt am: 22.12.2024 um 20:12 Uhr
13 Kommentare
Neuester Kommentar
Ich glaube, ich war da etwas voreilig.
Wenn ich mich jetzt richtig erinnere, kann ich zwar die Dateien beim Restore beliebig neu verteilen, aber ich muß für jede alte Datei einen Speicherort angeben. Würde bedeuteten, daß ich auch darüber die zusätzlichen Logdateien nicht wegbekomme, aber man könnte sie alle in ein Verzeichnis legen.
Aber von der ursprünglichen Idee her ja, eine komplette Rücksicherung.
Wenn ich mich jetzt richtig erinnere, kann ich zwar die Dateien beim Restore beliebig neu verteilen, aber ich muß für jede alte Datei einen Speicherort angeben. Würde bedeuteten, daß ich auch darüber die zusätzlichen Logdateien nicht wegbekomme, aber man könnte sie alle in ein Verzeichnis legen.
Aber von der ursprünglichen Idee her ja, eine komplette Rücksicherung.
Hallo Hkhan,
Dateien einer Datenbank zu entfernen geht im SQL Server Management Studio. Dort mit der rechten Maustaste auf die Datenbank und dann in die Eigenschaften. Links im Menü wählt man "Dateien" und kann dann auf der rechten Seite die Dateien auswählen und unten "Entfernen" klicken.
Dateien verkleinern hat ja Andreas Hoster oben schon beschrieben.
Wenn beides nicht funktioniert, weil ja das Transaktionsprotokoll noch voll ist, muß es erst mal gesichert (ok, geht ja nicht) oder geleert werden. Das funktioniert mit dem Befehl:
Gruß, Mad Max
Dateien einer Datenbank zu entfernen geht im SQL Server Management Studio. Dort mit der rechten Maustaste auf die Datenbank und dann in die Eigenschaften. Links im Menü wählt man "Dateien" und kann dann auf der rechten Seite die Dateien auswählen und unten "Entfernen" klicken.
Dateien verkleinern hat ja Andreas Hoster oben schon beschrieben.
Wenn beides nicht funktioniert, weil ja das Transaktionsprotokoll noch voll ist, muß es erst mal gesichert (ok, geht ja nicht) oder geleert werden. Das funktioniert mit dem Befehl:
backup log <Datenbank> with no_log
Gruß, Mad Max
Hallo Hkhan,
<Datenbank> ist der Name der Datenbank. Wenn der Name Leer- oder irgendwelche Sonderzeichen enthält, dann noch mit eckigen Klammern drum (schaden tun die eh nicht). Wenn die Datenbank also "HkhanDB" heißt, dann ist der Befehl:
Die Log-Datei wird dadurch aber nicht kleiner. Sie wird nur geleert, damit man sie anschließend verkleinern oder löschen kann. Wenn der Task also wenige Sekunden gedauert hat und erfolgreich war, dann hast Du wahrscheinlich nichts falsches eingegeben, sondern brauchst nur noch zu verkleinern (s.o. bei Andreas Hoster) oder löschen (s.o. mein erster Beitrag)
Gruß, Mad Max
<Datenbank> ist der Name der Datenbank. Wenn der Name Leer- oder irgendwelche Sonderzeichen enthält, dann noch mit eckigen Klammern drum (schaden tun die eh nicht). Wenn die Datenbank also "HkhanDB" heißt, dann ist der Befehl:
backup log [HkhanDB] with no_log
Die Log-Datei wird dadurch aber nicht kleiner. Sie wird nur geleert, damit man sie anschließend verkleinern oder löschen kann. Wenn der Task also wenige Sekunden gedauert hat und erfolgreich war, dann hast Du wahrscheinlich nichts falsches eingegeben, sondern brauchst nur noch zu verkleinern (s.o. bei Andreas Hoster) oder löschen (s.o. mein erster Beitrag)
Gruß, Mad Max
Hallo Hkhan,
ob 250GB für Eure DB ok sind oder nicht, kann Euch wohl nur der Hersteller Eures Programmes sagen. Allein an der Größe ohne sonstige Informationen kann man nicht festmachen, ob da was nicht stimmt. Von SQL Server ist mir jedenfalls nichts bekannt, daß sich da irgendwo Müll ansammelt, der regelmäßig geleert werden müßte.
Was Du probieren kannst ist, die DB zu verkleinern (Kontextmenü/Tasks/Verkleinern/Datenbank) und dabei das Häkchen in der Mitte bei "Dateien vor dem Freigeben ..." setzen. Wenn da Luft in der DB ist, wird sie dann abgelassen.
Gruß, Mad Max
ob 250GB für Eure DB ok sind oder nicht, kann Euch wohl nur der Hersteller Eures Programmes sagen. Allein an der Größe ohne sonstige Informationen kann man nicht festmachen, ob da was nicht stimmt. Von SQL Server ist mir jedenfalls nichts bekannt, daß sich da irgendwo Müll ansammelt, der regelmäßig geleert werden müßte.
Was Du probieren kannst ist, die DB zu verkleinern (Kontextmenü/Tasks/Verkleinern/Datenbank) und dabei das Häkchen in der Mitte bei "Dateien vor dem Freigeben ..." setzen. Wenn da Luft in der DB ist, wird sie dann abgelassen.
Gruß, Mad Max