sql >> Databasteknik >  >> RDS >> Sqlserver

SQL Server prestanda råd från Brent Ozar och Pinal Dave

Om någon hade några tvivel om att en paneldiskussion där Brent Ozar och Pinal Dave skulle svara på deltagarnas frågor om SQL Server-prestanda skulle bli en framgång, skingrades de snabbt under storsäljaren Ask the Experts-sessionen Quest som hölls i juni. Tillsammans med Jason Hall, Senior Technical Engineer på Quest, höll Brent och Pinal samtalet livligt, informativt och roligt när de delade med sig av sina perspektiv och bäst bevarade hemligheter om allt som är relaterat till SQL Server-prestanda – såväl som många andra ämnen.

Hur deras resa med SQL Server-prestanda började

Under introduktionerna fick vi veta att Brent är en Microsoft SQL Master och ägare på Brent Ozar Unlimited. Han påstår sig ha gjort "hemska saker" med SQL Server under sin karriär, eftersom han lärde sig vad han inte skulle göra. Efter att ha börjat i besöksnäringen bestämde han sig för att han ville arbeta med teknik, men inte vara en utvecklare där han skulle behöva lära sig nya kodningsspråk – så han valde att syssla med databaser. Han letade efter det dyraste i datacentret, lärde sig så mycket han kunde och väntade på att det skulle gå sönder så att han kunde visa sitt värde. Hans metod verkar ha fungerat.

Pinal är expert på SQL Server-prestandajustering och konsult på SQLAuthority.com. Han berättade om sina tidiga dagar som tekniker och arbetade i ett bullrigt datacenter där han rullade runt hårddiskar på en vagn och var tvungen att byta dem in och ut från servrar. Han insåg klokt att det inte var där pengarna skulle vara, så han undersökte det högst betalda jobbet i sin organisation, som visade sig vara en databasadministratör. Han studerade för att bli det och resten är historia.

Formatet för Ask the Experts har utformats för att svara på deltagarnas vanligaste frågor om SQL Server-prestanda. Här är ett urval av den uppriktiga Q/A.

F:Som någon ny inom SQL Server-prestanda och databasadministration, var rekommenderar du att jag fokuserar min tekniska utbildning? Det finns så mycket information där ute att det är svårt att skära igenom allt. Vad skulle du rekommendera till en nybörjare som kommer igång med SQL Server?

S:Brent sammanfattade det nog bäst när han sa "Så, en server gav aldrig någon löneförhöjning". Hans förslag är att förstå vad folk klagar på, vad det betyder för dem och vem som är mest högljudd om det. Prioritera sedan därifrån. Gå dit användarna är missnöjda och hör hur deras klagomål låter.

F:När du får ett klagomål om att databasen är långsam, vad kontrollerar du först på SQL Server, vilka mätvärden tänker du på och hur ser den processen ut?

S:Enligt Brent, börja med att blockera, för det är som en tickande bomb. Om någon startade en transaktion och de inte har stängt den kan du stöta på problem där loggfilen bara växer och växer och du får ont om utrymme. Efter blockering, titta på väntestatistiken för att få en snabb läggning av landet.

Å andra sidan vill Pinal veta vad databasproffs kan göra på systemet själva för att sakta ner saker, som att spåra allt möjligt i aktivitetsövervakare och profiler. Sedan föreslår han att du letar efter jobb som kan innehålla dolda transaktioner som att bygga om eller krympa ett index. Han rekommenderar att du tillfälligt inaktiverar den agenten för att se om prestandan återhämtar sig, då vet du säkert.


  1. Hur man får år och månad från ett datum i MySQL

  2. Beräkna decil från senaste i MySQL

  3. 3 sätt att hitta positionen för en delsträng i en sträng i MySQL

  4. Hur LENGTH() fungerar i MariaDB