Preskočiť na obsah

O projekte

DeadlockCafe je kuchárka diagnostických T-SQL skriptov a DBA postupov pre Microsoft SQL Server. Pri každom recepte je okrem kódu aj vysvetlenie: kedy ho použiť, ako čítať výsledok a na čo si dať pozor.

Čo tu nájdeš

98 receptov – skripty, snippety a návody na blokovanie a deadlocky, výkon a indexy, exekučné plány, Query Store, zálohy a obnovu, bezpečnosť, SQL Agent a Always On.

Okrem receptov tu je vysvetlenie čakaní (čo znamená PAGEIOLATCH, WRITELOG, CXPACKET…) a Výbava – inštalačky, buildy, nástroje a komunitné skripty na jednom mieste.

Nevieš, kde začať? Pri probléme na serveri otvor návod Prvá pomoc DBA – ktorý skript spustiť pri probléme (symptóm → čo spustiť najskôr a čo potom), pri pomalom dotaze kuchárku exekučných plánov v priečinku Exekučné plány.

Pre koho

Pre DBA, vývojárov a správcov, ktorí riešia pomalý server alebo dotaz, blokovanie, plný log či zlyhaný job a chcú overený skript s vysvetlením namiesto náhodného výsledku z fóra. Väčšina receptov je pre SQL Server 2016 a novší (on-premises); požadovaná verzia je pri každom recepte. V bočnom paneli si nastavíš Moja verzia a recepty pre novšiu verziu sa označia.

Kto to robí

Kaviareň varí Matej Naď, databázový administrátor. Recepty vznikajú z každodennej praxe a priebežne sa vylepšujú – každá zmena ostáva v histórii verzií.

Hlavný baristaMatej Naď – profil na LinkedIn

Ako sú recepty pripravené

  • Pri každom skripte je uvedené, pre ktoré verzie SQL Servera je, aké oprávnenia potrebuje a či len číta.
  • Vysvetlenie (Kedy použiť, Ako čítať výsledok, varovanie) hovorí, čo výsledok znamená – a čo nie.
  • Tvrdenia sú overené proti dokumentácii Microsoftu a uznávaným autorom; zdroje sú uvedené pri recepte.
  • Parametre ako {{DatabaseName}} vyplníš priamo na stránke a kopíruješ už hotový skript.

Bezpečne používať

Diagnostické recepty sú read-only – nič nemenia. Aj čítanie však vie server zaťažiť (fragmentácia indexov, veľké DMV, DBCC). Recepty, ktoré niečo menia (napr. SINGLE_USER), sú označené varovaním. Ukážky v kuchárke exekučných plánov si vytvárajú vlastnú testovaciu databázu PlanLab – patria len na testovací server.

Každý skript najprv vyskúšaj na TEST / UAT, skontroluj server a databázu, proti ktorej máš otvorené okno, a na PROD spúšťaj s rozvahou. Skripty sú poskytnuté bez záruky.

Licencia

  • Kód receptov (T-SQL, PowerShell) je pod licenciou MIT – môžeš ho používať aj upravovať, aj v práci.
  • Texty (návody, vysvetlenia) sú pod licenciou CC BY 4.0 – pri ďalšom zdieľaní uveď DeadlockCafe a odkaz na recept.

Komunitné nástroje (napr. sp_WhoIsActive od Adama Machanica – GPL-3.0, First Responder Kit od Brent Ozar Unlimited – MIT, údržbové skripty Olu Hallengrena – MIT) majú vlastných autorov a licencie. Pri takom recepte je rámik „Komunitný skript“ s autorom, licenciou a odkazom na originál; licencia DeadlockCafe sa na ne nevzťahuje.

Našiel si chybu?

Skript na tvojej verzii nefunguje, výsledok nesedí alebo máš tip na vylepšenie? Napíš mi správu na LinkedIn.

Pomôže, keď pridáš:

  • odkaz na recept,
  • verziu SQL Servera (SELECT @@VERSION;),
  • chybovú hlášku alebo čo si čakal a čo prišlo.

Do správy neposielaj názvy serverov, loginy ani dáta zákazníkov.

Napísať na LinkedIn

Novinky

Nové recepty odoberaj cez RSS kanál (napr. vo Feedly, Outlooku alebo Thunderbirde).