Tuesday, March 20, 2012

Performance problem

Hello everybody,
I need to detect wich database is getting more resources on my database
machine.
I have to use SQL Profiler.
Wich parameter i should analyze?
Thanks
Leandro Loureiro dos SantosLeandro,
You might want to trace to a file and then load this trace file into a table
(or just trace to a table).
Events to monitor:
Defaults are fine.
Columns to monitor:
Add DatabaseID to the defaults.
Run profiler for a typical workload on your database, and then query your tr
ace table and run the following pseudo queries:
SUM(Duration) GROUP BY DatabaseID, ORDER BY 1 -- will give you database tha
t have the most time taken up running queries
SUM(CPU) GROUP BY DatabaseID, ORDER BY 1 -- will give you most CPU intensi
ve database
SUM(Reads) GROUP BY DatabaseID, ORDER BY 1 -- will give you most Read I/O i
ntensive database
SUM (Writes) GROUP BY DatabaseID, ORDER BY 1 -- will give you most Write I/
O intensive database
You might also want to find the top 10 intensive queries across databases. H
ave a play, there's a wealth of information to be found in a profiler trace
table.
Mark Allison, SQL Server MVP

No comments:

Post a Comment