Tabellengrößen und was beim Ändern von Datenbankwartungstasks beachtet werden sollte

Wenn die Datenbank sehr groß wird, muss der Verursacher gefunden werden. Mit den folgenden vier SQL-Abfragen lassen sich die Tabellen der Größe nach auflisten:

create table #tempspc (name nvarchar(776), rows int, reserved varchar(18), data varchar(18), index_size varchar(18), unused varchar(18))

exec sp_msforeachtable 'insert into #tempspc exec sp_spaceused ''?'''

select Name, Rows, cast(left(reserved,len(reserved)-3) as int) as Reserved_KB, cast(left(data,len(data)-3) as int) as Data_KB, cast(left(index_size,len(index_size)-3) as int) as Index_Size_KB, cast(left(unused,len(unused)-3) as int) as Unused_KB from #tempspc order by reserved_KB DESC

drop table #tempspc

Werden nun Maßnahmen zur Verkleinerung einiger Tabellen getroffen, dann bitte langsam! Werden zuviele Daten auf einmal gelöscht, so kann die Größe des Transaktionslogs kurzfristig stark ansteigen. In Folge dessen könnte der Festplattenplatz eng werden. Ich rechne für das Löschen einer bestimmten Datenmenge ungefähr mit dem dreifachen Bedarf an Logspace, um halbwegs auf der sicheren Seite zu sein. Werden die Daten aus einer Tabelle gar nicht benötigt, so kann unter Umständen das SQL-Statement “Truncate <table name>” verwendet werden. Ein wichtiges Beispiel dafür findet sich in MS-KB926731, der nicht nur beachtet werden sollte, wenn der Maintenance Task “Delete Aged System Center Reporting Data” aktiviert wird. Ein Truncate sollte auch bei der Änderung des Tasks “Delete Aged Inventory History” in Betracht gezogen werden. Alternativ kann der Alterswert in mehreren Schritten gesenkt werden. Läuft der Task nach dem Default-Schedule wöchentlich und soll der Alterswert vom Default 90 Tage auf 30 Tage gesenkt werden, so könnte der Alterswert z.B. in 6-8 Schritten wöchentlich um 7-10 Tage gesenkt werden. So wird anstatt dem etwa 8,5-fachen bei den nächsten 6-8 Läufen des Tasks “nur” in etwa jeweils die doppelte Datenmenge gelöscht.

Damit wünsche ich dem Leser einen fröhlichen Frühjahrsputz!

Kommentarfunktion ist deaktiviert