Jump to content

Datenbank Wartung?


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Guten Morgen,

ich habe eine Frage zu einer MS SQL Datenbank. Ich persönlich komme aus dem Interbase / Firebird Umfeld. Unsere Datenbanken sind alle MS Sql basierend. Sie werden schon über Jahre betrieben. Sie sind indiziert, zwar mit Indezes aus mehreren Feldern davon halte ich gar nichts, aber sie haben Indezes. Unsere Kollegen beschweren sich aber immer mehr, dass Wartezeiten auf Daten aus der Datenbank teilweise lange dauert. Ich kann keine Fehler in der Datenbank entdecken. Im "Activity Monitor" sehe ich aber SQL Statements, meistens Updates bzw. Inserts, die bis zu 4 Sekunden dauern.

 

Eine Firebird Datenbank würde man bei diesen Symptomen mit einen BackUp / Restore wieder reorganisieren, wegen den internen Transaktionsketten.

 

Geht dies auch mit SQL Datenbanken? Welche Möglichkeiten habe ich hier?

 

Ich muss mich auf MS SQL Datenbanken einarbeiten.

 

Danke für Eure Hilfe.

Torsten

Link zu diesem Kommentar

Moin,

 

ja, in MS SQL gibt es sehr viele Hilfsmittel, um eine Datenbank zu optimieren oder deren Performance zu diagnostizieren. Diese "auf Verdacht" zu verwenden, wird aber vermutlich nicht helfen.

 

Um den ersten Überblick zu gewinnen, empfehle ich die Sachen von Brent Ozar: https://www.brentozar.com/blitzcache/ 

 

Speziell auf die Wartung von Indizes und Statistiken konzentriert sich die Lösung von Ola Hallengren: https://ola.hallengren.com/sql-server-index-and-statistics-maintenance.html 

 

 

Link zu diesem Kommentar

Okay wer lesen kann ist klar im Vorteil. Du schreibst vom Activity Monitor- also hast du das Studio.

Du kannst im Studio über den Objekt Explorer die Fragmentierung eines Index in seinen Eigenschaften / Fragmentierung nachsehen.

Und du kannst schauen ob die Statistiken veraltet sind. 

 

Das Reorganisieren bzw. Neuerstellen kannst du entweder über das Objektexplorer vornehmen oder per Script

Abhängig von der Eingesetzten SQL Version entweder mit Alter Index 

https://docs.microsoft.com/de-de/sql/t-sql/statements/alter-index-transact-sql?view=sql-server-ver15

oder

dbcc dbreindex

https://docs.microsoft.com/de-de/sql/t-sql/database-console-commands/dbcc-dbreindex-transact-sql?view=sql-server-ver15

 

Link zu diesem Kommentar

Das SSMS zeigt auch an, ob Indizes fehlen, und wenn welche fehlen, welche genau. Dazu im Studio einen Rechtsklick auf den Server/Instanz und dann über Berichte > Leistungsdashboard ganz unten den Link Fehlende Indizes anklicken. Das sind Vorschläge, ob man die Indizes anlegt oder bestehende erweitert, muss man in jedem Fall VORHER prüfen!

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

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...