2011-02-16 17 views

उत्तर

12
DECLARE @cntr_value bigint 

SELECT @cntr_value = cntr_value 
    FROM sys.dm_os_performance_counters 
    WHERE counter_name = 'transactions/sec' 
     AND object_name = 'SQLServer:Databases' 
     AND instance_name = 'YourDatabase' 

WAITFOR DELAY '00:00:01' 

SELECT cntr_value - @cntr_value 
    FROM sys.dm_os_performance_counters 
    WHERE counter_name = 'transactions/sec' 
     AND object_name = 'SQLServer:Databases' 
     AND instance_name = 'YourDatabase' 
+0

जब मैं इसे चलाता हूं तो मुझे 426836 का मूल्य मिलता है। क्या यह प्रति सेकेंड लेनदेन है? काफी ऊंचा लगता है। – izip

+0

@izip: "प्रति सेकंड" काउंटर के लिए मान संचयी है। उस समय अंतराल के लेनदेन के लिए आपको निश्चित समय अंतराल के लिए दो मानों का अंतर उठाना होगा। मैं अपना जवाब अपडेट करूंगा। –

+0

धन्यवाद, यह 10 के रूप में वापस आया जो अधिक उचित लगता है! – izip

0

प्रक्रियाओं https://www.brentozar.com/askbrent/ रिटर्न डेटाबेस स्तर पर इस जानकारी, अन्य महान जानकारी का एक बहुत कुछ के साथ में स्थित sp_BlitzFirst। निम्नलिखित की तरह एक साधारण कॉल आपको दिखाएगा कि 5 सेकंड के दौरान क्या होता है।

EXEC dbo.sp_BlitzFirst @ExpertMode = 1, @seconds = 5; 
संबंधित मुद्दे