sql >> Databáze >  >> RDS >> Sqlserver

4 tipy pro spuštění diagnostiky serveru SQL

Vysoce výkonné databáze s vysokou dostupností jsou cílem každého SQL Server DBA, ale realita je taková, že výkon databáze není vždy optimální. Pomalé doby odezvy, časové limity a zahlcené CPU se stávají těm nejlepším z nás, díky čemuž je strategická konfigurace diagnostiky SQL Server zásadním krokem při udržování efektivního a dobře fungujícího systému.

Diagnostika SQL Server odhalí problémy s výkonem související s využitím paměti, rychlostí a efektivitou dotazů a využití CPU, což vám pomůže rychle identifikovat a napravit problémy s minimálním dopadem na výkon. Chcete-li dále minimalizovat dopady na výkon, můžete vytvořit strategii sledování výkonu, která zahrnuje sledování diagnostických dat v průběhu času, abyste odhalili těžko lokalizovatelné problémy a předpověděli budoucí problémy s výkonem dříve, než nastanou.

Chcete-li získat nejcennější informace z diagnostiky serveru SQL Server, je důležité nejprve určit, co chcete z dat zjistit, abyste mohli sledovat nejrelevantnější metriky výkonu. Zde jsou čtyři tipy, které vám pomohou začít.

Diagnostický cíl:Monitorování výkonu databáze pro místní, virtuální a cloudová prostředí

Ať už jsou vaše databáze umístěny lokálně, v cloudu nebo v hybridním prostředí, sledování výkonu databáze v těchto pěti oblastech vás upozorní na některé z nejběžnějších problémů s výkonem:

  • Dostupnost:Udržování vysoké dostupnosti je jednou z hlavních priorit DBA. Sledování dat protokolu převzetí služeb při selhání a aktuální stav serveru jsou klíčem k včasnému odhalení a nápravě problémů.
  • Využití TempDB:Sledujte, kolik TempDB používáte a jak je využíváno. Je také vhodné vytvořit základní linii TempDB a stáhnout údaje o výkonu před a po změnách.
  • I/O:Diagnostika SQL Server odhalí zaseknuté I/O operace, které mohou způsobit blokování a další problémy s výkonem.
  • Využití CPU:Vysoké využití CPU může být způsobeno několika věcmi. Pomocí diagnostiky serveru SQL Server izolujte hlavní příčinu. Tento kontrolní seznam vás může nasměrovat správným směrem.
  • Využití paměti:Pokud neoptimalizujete využití paměti, budete mít v určitém okamžiku problémy s výkonem. Spusťte diagnostiku, abyste zjistili, které procesy využívají více než svůj podíl paměti, a podle potřeby je optimalizujte nebo přepište.

Diagnostický cíl:Najít příčiny blokování a zablokování

Blokování a uváznutí jsou hlavní zabijáci výkonu, takže diagnostika toho, co bloky způsobuje, a rychlé vyřešení problému je zásadní pro udržení vysokého výkonu. Několik běžných zdrojů blokování a uváznutí lze odstranit pomocí těchto tří postupů:

  • Zkoumejte dotazy a plány dotazů:Dlouhé dotazy a neefektivní plány dotazů přispívají k blokování a uváznutí. Diagnostika dokáže identifikovat dotazy, které lze rozdělit do několika krátkých transakcí a jejichž plány dotazů nejsou optimalizovány v důsledku zastaralých statistik.
  • Analýza zátěže:Zvýšení zátěže může způsobit blokování, protože o stejné zdroje soupeří více procesů. Diagnostika může určit, který uživatel, databáze, hostitel nebo příkaz SQL Server způsobuje zablokování nebo uváznutí, takže můžete podle potřeby přerozdělit pracovní zátěž.
  • Kontrola indexů:Dobré indexování může zabránit blokování tím, že odstraní nutnost úplného prohledávání tabulky. Tím, že umožňuje serveru SQL Server vyhledávat místo skenování, indexování udržuje neuzamčené zdroje přístupné.

Diagnostický cíl:řešit falešná upozornění

Falešná upozornění jsou víc než jen otravná; přispívají k nezjištěným problémům s výkonem prostřednictvím únavy z alarmu. K únavě z poplachů dochází, když časté falešné poplachy způsobí, že DBA ignoruje výstrahy a případně jim chybí upozornění, že došlo ke kritickému selhání.

Nejlepší způsob, jak zastavit falešné výstrahy, je diagnostikovat zdroje opakujících se falešných výstrah a buď odstranit nekritické výstrahy, nebo nastavit prahové hodnoty, které přesně určují podmínky, které výstrahu spouštějí.

Diagnostický cíl:Optimalizace dotazů SQL

Spouštění pravidelné diagnostiky SQL Server na dotazy pomůže snížit nebo odstranit řadu potenciálních problémů s výkonem. Dva způsoby, jak můžete zlepšit dotazy založené na diagnostice serveru SQL Server, jsou:

  • Ladění dotazů:Pokud váš nástroj pro sledování výkonu SQL Serveru ukazuje, že generování sestavy trvá dlouho, že v poslední době došlo k velkému nárůstu čekání na vstup/výstup nebo že spuštění určitých úloh trvá třikrát déle než dělali před rokem, diagnostika může naznačovat, že ladění dotazů je v pořádku. Ladění dotazů zlepšuje výkon analyzováním dotazů a jejich následným přepisováním, pokud je to nutné, dokud neběží na maximální úroveň efektivity.
  • Aktualizace statistik:Jak bylo uvedeno výše, zastaralé statistiky přispívají k problémům s výkonem tím, že spouštějí neefektivní plány dotazů. Kde je to možné, naplánujte si automatické aktualizace. Když automatizace není možná, přidejte do svého kontrolního seznamu pravidelné údržby ruční aktualizace, abyste zajistili, že statistiky zůstanou aktuální.

Diagnostika SQL Server je základním nástrojem v sadě nástrojů DBA. Pochopení toho, jak diagnostika přispívá k udržení spolehlivého a vysoce dostupného databázového prostředí SQL Server, vám pomůže rychle najít a opravit problémy s výkonem s minimálním dopadem na vaše uživatele.


  1. Převod datového typu datetime2 na datový typ datetime má za následek hodnotu mimo rozsah

  2. Příkazy nejsou synchronizovány; tento příkaz nyní nemůžete spustit

  3. Jak uložím a načtu obrázek na svém serveru v java webové aplikaci

  4. SELECT dotaz s podmínkou CASE a SUM()