hwimmer 10 Geschrieben 23. Februar 2009 Melden Teilen Geschrieben 23. Februar 2009 Hallo, wir haben eine SQL 2005 DB mit einer DB-Grösse von 200 GByte. Das Log-File ist derzeit auf 370 GB angewachsen, da wir in den letzten beiden Tagen grössere Mengen an Daten importiert haben. Nun will ich das Log verkleinern. In den Datenbankeigenschaften bei Anfangsgrösse Logfile steht auch der Wert auf 370 GByte. Es ist doch nun so, wenn ich das Log sichere und anschließend verkleinere wird die Datei im Filesystem trotzdem nicht kleiner als 370 Gbyte, weil ja die Anfangsgrösse so hoch ist. Den Wert der Anfangsgrösse kann ich zwar kleiner setzen, er übernimmt mir allerdings diesen Wert nicht. Bräuchte da mal Hilfe. Vielen Dank schon mal im voraus. Gruß Hans Zitieren Link zu diesem Kommentar
phoenixcp 10 Geschrieben 23. Februar 2009 Melden Teilen Geschrieben 23. Februar 2009 Hallo Hans Hast du nach dem erneuten Setzen der Größe des Transaktionsprotokolls das Logfile erneut gesichert und verkleinert? Gruß Carsten Zitieren Link zu diesem Kommentar
hwimmer 10 Geschrieben 23. Februar 2009 Autor Melden Teilen Geschrieben 23. Februar 2009 Hallo, Carsten, ja, habe ich. Immerhin ist das Log jetzt von 370 GB auf 300 GB geschrumpft. Aber ich habe eigentlich den Wert 5 GB bei Anfangsgrösse gesetzt und jetzt steht wieder 300 GB drin. Wie muß ich das verstehen ? Danke Hans Zitieren Link zu diesem Kommentar
phoenixcp 10 Geschrieben 23. Februar 2009 Melden Teilen Geschrieben 23. Februar 2009 Wieviel freier Platz ist denn in dem Transaktionslog vorhanden? In welchem Recovery Mode steht denn die Datenbank? Full, Bulk oder Simple? Ich glaube zwar die Antwort zu kennen, aber wer weiß. Welchen Patchstand hast du auf deinem SQL Server installiert? Die kannst du mit select @@version[/Code] checken. Zitieren Link zu diesem Kommentar
hwimmer 10 Geschrieben 23. Februar 2009 Autor Melden Teilen Geschrieben 23. Februar 2009 Hallo, Ich habe folgende Version: Microsoft SQL Server 2005 - 9.00.3228.00 (X64) Feb 9 2008 09:33:32 Copyright © 1988-2005 Microsoft Corporation Enterprise Edition (64-bit) on Windows NT 5.2 (Build 3790: Service Pack 2) Das Wiederherstellungsmodell steht auf massenprotokolliert. Wie finde ich heraus, wieviel Platz noch im Log ist ? In den DB-Eigenschaften steht: DB-Grösse: 540 GB Verfügbarer Speicherplatz: 21 GB Meinst du das damit ? Gruß Hans Zitieren Link zu diesem Kommentar
phoenixcp 10 Geschrieben 23. Februar 2009 Melden Teilen Geschrieben 23. Februar 2009 Ok, das Patchset sieht nach meiner Meinung ok aus, ist zwar nicht das aktuellste, aber da steht ja immer noch der SW-Hersteller der DB-Applikation mit davor, bevor man lospatcht. ;) Den freien Speicherplatz in deinem Logfile müsstest du sehen wenn du per Tasks\Shrink\Files das Logfile auswählst. Dort solltest du dann die kleinstmögliche Größe sehen, auf die sich das Transaktionslog shrinken lassen sollte. Zitieren Link zu diesem Kommentar
hwimmer 10 Geschrieben 23. Februar 2009 Autor Melden Teilen Geschrieben 23. Februar 2009 Hier zeigt er mit an: Aktuell zugeordnet: 300416,13 MB Verfügbar: 1381,36 MB D. h. ich könnte derzeit das Log nur um 1,4 GB verkleinern ? Aber muß ich machen, damit ich das Logfile noch kleiner bekomme ? Das Wiederherstellungmodell auf "einfach" setzen ? Ich mache täglich abends eine Vollsicherung aller Datenbanken und Logfiles und verkleinere anschließend die Datenbanken über einen Wartungsplan. Danke nochmal für deine Hilfe. Gruß Hans Zitieren Link zu diesem Kommentar
phoenixcp 10 Geschrieben 23. Februar 2009 Melden Teilen Geschrieben 23. Februar 2009 Also ich würde dir bei deinem Model eine andere Backupstrategie empfehlen: 1 mal täglich Fullbackup der Datenbank mit anschließendem Shrink 4 bis 6 mal täglich Backup des Transaktionslogs mit anschließendem Shrink Nur die DB zu shrinken wird dir nicht viel bringen. Es bringt aus Erfahrung mehr, die Files jeweils einzeln zu shrinken. Das die DB im Bulk-Modus ist, wird seinen Grund haben, also würde ich sie nicht übereilt auf simple umstellen. Evtl. solltest du nach dem einrichten des neuen Wartungsplans für das Transaktionslog darüber nachdenken, ob es nicht sinnvoll wäre, das TRN auf eine Größe einzustellen, bei der es zwischen den Sicherungsintervallen nicht weiter wachsen muss. Allerdings muss man hier dann erstmal sehen wie sich die Größe des TRN einpendelt, wenn es regelmäßig gesichert und geshrinkt wird. Zitieren Link zu diesem Kommentar
NilsK 2.934 Geschrieben 24. Februar 2009 Melden Teilen Geschrieben 24. Februar 2009 Moin, im Unterschied zur Datenbank wird das TP sequenziell geschrieben: Neue Transaktionen werden hinten angehängt. Dabei steht ein Pointer auf der letzten nicht bestätigten Transaktion. Alles dahinter ist der "aktive" Teil des TP. Bei einer großen TP-Datei kann es durchaus sein, dass der Pointer sehr weit "hinten" in der Datei steht. Vor dem Pointer ist dann viel Platz, aber der kann nicht freigegeben werden, weil das System immer nur von hinten abschneiden kann. Daher kann es sein, dass man nach dem Sichern oder Abschneiden des Protokolls mehrfach in zeitlichen Abständen das Kommando zur Verkleinerung geben muss, damit der Pointer über das Dateiende hinweg wieder am Anfang der Datei steht und somit der freie Platz am Ende - wo er dann entfernt werden kann. Gruß, Nils Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.