Problemer med databaseydeevne er ikke ualmindelige. Heldigvis er der normalt en ret intuitiv løsning på de fleste problemer. Det vigtigste, en DBA kan gøre for at løse problemer hurtigt og forbedre SQL Server-ydeevnen, er at sikre, at din præstationsovervågningsstrategi er opdateret og tilpasset dine databaseovervågningsbehov. Hvis det ikke er det, er det tid til at handle.
Det første skridt til at forbedre din databaseovervågning er at vurdere din nuværende situation. Du ved ikke, hvor din overvågning mangler, eller om overvågning forbedrer nogen af dine præstationsproblemer, hvis du ikke tager en basismåling af dit udgangspunkt.
For at indstille din præstationsbaseline skal du vurdere tilstanden af dine SQL Server-databaser ved at stille dig selv et par spørgsmål:
Er forespørgsler optimeret? Underpræsterende forespørgsler er en sikker måde at sænke ydeevnen på. Der er mange tricks, du kan prøve for at rydde op i dine forespørgsler, men din bedste mulighed er at implementere en forespørgselsoptimering, der analyserer og omskriver dine forespørgsler, indtil den finder en, der er hurtigere.
Er indekser i god stand? Indeksering udført korrekt formodes at fremskynde datahentning. Der er dog nogle almindelige problemer, der kan forsinke ydeevnen, herunder ineffektive fyldfaktorindstillinger og sideopdelinger. Den bedste måde at undgå disse præstationsproblemer på er ikke at indstille en systemdækkende fyldfaktorværdi og se på behovene for hvert indeks individuelt.
Er mange data fragmenteret? Fragmenterede data påvirker ydeevnen ved at sætte for meget blank plads på en side eller ved at forårsage, at sider tilføjes. Serveren skal scanne og søge efter de fragmenterede data, hvilket får databasen til at køre langsomt. At køre Genopbyg eller Omorganiser kan rydde op i fragmentering.
Er der noget, der æder CPU'en? Databaser sænker farten, når CPU'en er under belastning fra flere ressourcer. Vurder CPU-belastningen og afgør, om problemet er, at du skal tilføje mere CPU, eller at der er ineffektive ressourcer, der bruger mere CPU, end de burde.
Når du har et øjebliksbillede af startlinjen, har du en bedre idé om, hvilke typer overvågningsforbedringer, du skal fokusere på. Her er fem måder, du kan forbedre din SQL Server-databaseovervågning på.
1. Vurder dine overvågningsintervaller og rens data så ofte som muligt
Ydeevneovervågningsværktøjer giver uendelige valgmuligheder for, hvilke målinger der skal overvåges, hvornår data skal trækkes, og hvor længe dataene skal opbevares. Hvis du overvåger flere tilfælde, er mængden af data, du indsamler, potentielt svimlende (og dyr at opbevare).
For at holde dine data på et overskueligt niveau skal du ikke indsamle data oftere, end du skal, og kun opbevare data længe nok til at spotte trends. Når du har registreret noget af interesse, skal du arkivere eller slippe af med dataene.
2. Tjek, at dine forespørgsler fungerer effektivt
Der er mange steder, hvor ydeevneproblemer kan gemme sig i SQL Server. Da databaseapplikationer ofte udfører SQL-forespørgsler, er vurdering af dine forespørgslers tilstand et godt sted at begynde at eliminere problemer.
For eksempel vil overvågning af, hvordan forespørgsler klarer sig over tid, hjælpe dig med at isolere dem, der bruger flere ressourcer end normalt. Når du har identificeret problematiske forespørgsler, kan du køre hver forespørgsel for at bestemme den specifikke kilde til problemet og rette den.
3. Gennemgå Perfmon-tællere og -indstillinger
SQL Server Performance Monitor (Perfmon) er et værdifuldt værktøj, der hjælper DBA'er med at isolere svage punkter i deres SQL Server-databaser. Perfmon giver dig mulighed for at opsætte ydeevnetællere for hver af dine servere for at identificere CPU-flaskehalse, diskydeevne, hukommelsesproblemer og meget mere.
Denne artikel af Brent Ozar forklarer, hvordan du kommer i gang med at bruge Perfmon og beskriver nogle bedste fremgangsmåder.
4. Konfigurer dine underretninger baseret på sværhedsgrad
Selvom der er mange tilgængelige alarmkonfigurationer, er det bedst at være selektiv, når du konfigurerer alarmer, så du ikke bukker under for alarmtræthed. En god tommelfingerregel er at konfigurere advarsler for problemer med sværhedsgrad 17 eller højere og for fejlmeddelelser 823, 824 og 825 – med andre ord de problemer, der kan resultere i, at dine servere går offline, alvorlig datakorruption eller datatab.
5. Udnyt alle de alarmstyringsfunktioner, dit SQL Server-ydelsesovervågningsværktøj tilbyder
SQL Server-overvågningsløsninger tilbyder en bred vifte af administrationsfunktioner. Brug lidt tid på at lære dit værktøjs funktioner at kende, og vær sikker på, at du får mest muligt ud af din investering.
Nogle funktioner, du skal kigge efter, som vil hjælpe dig med at forbedre din præstationsovervågningsproces, er:
Regler: Giver dig mulighed for at tilpasse, hvilke alarmer der udløses, og hvornår
Diagnostik: Fortæller dig, at der er et problem, og tilbyder derefter mulige rettelser
Problemprioritering: Fokuser din opmærksomhed på de mest alvorlige problemer først
Mobilunderretninger: Giver dig mulighed for at få adgang til, vurdere og begynde at udløse alarmer hvor som helst og når som helst
Støjreduktion: Hjælper dig med at undgå alarmtræthed ved kun at modtage de meddelelser, du har brug for