2016-07-13 7 views
0

Wir haben eine Audit-Tabelle, die jeden Tag ein paar hunderttausend Datensätze hinzugefügt wird. Aufgrund dieser einen Tabelle möchten wir die Produktions-DB und die Protokolldateigröße nicht erhöhen. Daher überlegen wir, diese Tabelle jede Nacht in eine separate Datenbank zu verschieben. Jeden Abend wird ein Skript ausgeführt, das die Audit-Tabelleneinträge von der Produktions-DB in eine andere Datenbank verschiebt und dann die Audit-Tabelle in der Produktionsdatenbank löscht und neu erstellt.Drop-and-Recreate-Tabelle auf täglicher Basis - wird es noch Speicherplatz in der db-Datei oder in der Protokolldatei enthalten?

Unser Anliegen ist, wenn ich drop und neu erstellen dann wird es Speicherplatz in der Protokolldatei der Produktion db freigeben? oder wird es noch Speicherplatz in db/log-Datei enthalten? denn wenn es Speicherplatz enthält, werden wir riesige db oder Log-Dateien haben.

Kann jemand bitte eine Idee auf oben geben. Eine andere Idee ist, dass wir die Audit-Tabelle direkt in eine separate Datenbank erzeugen, aber das erfordert einige wichtige Programmänderungen im Programm. Bitte schlagen Sie auch eine bessere Lösung vor, wenn möglich. obwohl

Vielen Dank im Voraus

+1

das Lesen Beitrag: http://stackoverflow.com/q/571750/4746087 –

Antwort

0

Die Log-Datei hält immer noch die vollständige Geschichte, auch wenn Sie den Tisch fallen. Wie bereits im Kommentar erwähnt, wird das Wiederherstellungsmodell auf "Einfach" gesetzt, um das Problem zu lösen. Wenn Sie jedoch bereits über eine Datenbank mit Voll-/Massenmodus verfügen, müssen Sie die Datenbank möglicherweise regelmäßig sichern, um die Transaktion zu bereinigen Inhalt in Sicherungsdatei protokollieren.

https://msdn.microsoft.com/en-us/library/ms179478.aspx

0

Unser Anliegen ist es, wenn ich dann löschen und neu erstellen wird es Raum in Log-Datei der Produktion db freizugeben? oder wird es noch Speicherplatz in db/log-Datei enthalten?

Für Log Raum:
Protokollspeicherplatz wiederverwendet werden, es sei denn, bis es Transaktion anhängig, die sie von stoppt dies zu tun.

Für MDF/NDF Raum:
Löschen einer Tabelle wird Platz in der Datenbank freizugeben, aber das wird nicht wieder zu den Fenstern freigegeben werden, wird es auch wie wiederverwendet werden, wenn Sie wieder eine Tabelle erstellen

Verwandte Themen