Jump to content

Schrumpfen von Datenbanken - unstimmige Belegungsangaben


Empfohlene Beiträge

Geschrieben (bearbeitet)

Bei Tasks - Verkleinern - Dateien ergibt sich in Summe für Daten und Log eine DB-Größe von 30 GB,  davon 29 GB verfügbar. Bei Tasks - Verkleinern - Datenbank sind dann plötzlich von 30 GB nur 5 GB verfügbar. Letzteres trifft eher zu, schon die Größe einiger Tabellen überschreitet 3 GB. 

 

Woher kommt diese Differenz und wie kann ich sie korrigieren. DBCC CheckDB, updateusage etc. haben nicht geholfen.

 

Vielen Dank

bearbeitet von CBonnkirch
Geschrieben

Moin,

 

Ist dir das nur aufgefallen oder entstehen daraus Probleme? 

 

Ich habe keine direkte Erklärung, aber vermutlich hängt es damit zusammen, wie SQL Server die Daten in den Dateien organisiert. Sie liegen meist nicht "am Stück". Durchaus denkbar, dass eine der Angaben daher falsch oder irreführend ist. Ich kann dem im Moment leider nicht genauer auf den Grund gehen. 

 

Gruß, Nils

Geschrieben (bearbeitet)
vor 9 Minuten schrieb NilsK:

Moin,

 

Ist dir das nur aufgefallen oder entstehen daraus Probleme? 

 

Ich habe keine direkte Erklärung, aber vermutlich hängt es damit zusammen, wie SQL Server die Daten in den Dateien organisiert. Sie liegen meist nicht "am Stück". Durchaus denkbar, dass eine der Angaben daher falsch oder irreführend ist. Ich kann dem im Moment leider nicht genauer auf den Grund gehen. 

 

Gruß, Nils

Es scheint schon einen gewissen Einfluss auf die Speichernutzung zu haben. Bei ca. 50 GB Gesamtgröße aller DBs (davon zwei mit solchen Symptomen) hat MSSQL eine Hauptspeichernutzung von 80GB. Oder ist das "normal"?

bearbeitet von CBonnkirch
Geschrieben

Moin,

 

SQL cacht Ergebnisse aller Leseabfragen, denn es könnte ja sein, dass man sie gleich nochmal benötigt. Es gibt vier PerfMon-Indikatoren, die Aufschluss darüber ermöglichen, was da abgeht:

 

  • MSSQL$<Instanz>:Puffer-Manager: „Lebenserwartung der Seite“ und „Puffercache-Trefferquote“ --> besagen eigentlich das gleiche, nur aus unterschiedlichen Blickwinkeln. Wenn die Lebenserwartung hoch und die Trefferquote nah bei 100% liegt, wird der Cache zumindest genutzt :-) 
  • MSSQL$<Instanz>:Memory Manager: „Zielserverspeicher“ und „Serverspeicher gesamt“ --> im Idealfall sind beide gleich und unterhalb des für die Instanz konfigurierten Höchstspeichers.

 

Ich habe dazu vor 9 Jahren mal was für den IT-Administrator geschrieben.

Geschrieben
vor 2 Stunden schrieb CBonnkirch:

Das passt doch nicht zusammen.

Hast Du Filestream aktiv? Das ist ein weiterer Punkt in der Combobox der beim manuellen Vergleichen beachtet werden müsste. Soweit ich weiß, siehst du beim Shrink die Werte des PFS (Page Free Space), das ist etwas anderes, als Du mit dbcc updateusage aktualisierst. PFS sagt dem SQL-Server wo welche Seiten frei sind. Das lässt sich, meine ich, nur mit dbcc checkdb (ohne physical_only) "korrigieren", wenn da etwas durcheinander ist.

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...