Avatar billede svarrenabe Nybegynder
02. juni 2009 - 09:43 Der er 4 kommentarer og
1 løsning

Hvad belaster min server... MS SQL 2005

Jeg står med en SQL server der efterhånden er ved at være i knæ, og der er en enorm masse views og storede procedure på serveren oprettet af mange forskellige brugere.

Findes der et værktøj der kan isolere de værste syndere, så jeg evt. kan begynde fra en ende med at effektivisere de værste af de stumper kode der ligger på maskinen...

Det skal helst ikke være noget der kræver installation af 3. parts software...

Håber på et hurtigt og enkelt svar :D

/Jonas
Avatar billede 2c Nybegynder
02. juni 2009 - 11:18 #1
Hvad med at kigge på Database Engine Tuning Advisor?

http://msdn.microsoft.com/en-us/library/ms166575.aspx
Avatar billede svarrenabe Nybegynder
02. juni 2009 - 12:51 #2
Det er ikke det jeg leder efter, nærmere noget der kan hjælpe mig med at finde de 10 views og de 10 storede procedure der bruger mest workload over tid...

Performance monitoren kan måske, men jeg ved ikke hvordan...

/Jonas
Avatar billede Syska Mester
02. juni 2009 - 16:04 #3
"SQL Profiler" er din ven ...

Der kan du se de View, SP etc som bruger mest power ...

// ouT
Avatar billede PFD Nybegynder
09. august 2009 - 21:55 #4
jeg ville hverken kigge i DTA'en eller bruge profiler.
Der er i SQL-Server 2005 kommet en rækker DMV'er (Dynamic management view) som kan fortælle dig de ting som du efterspørger her.

Her er et lille eksempel på et script, som giver dig de TOP 50 SQL'er på din server som bruger mest CPU:


SELECT TOP 50
        qs.total_worker_time/qs.execution_count as [Avg CPU Time],
        qs.last_worker_time,
        qs.min_worker_time,
        qs.max_worker_time,
        qs.execution_count,
        SUBSTRING(qt.text,qs.statement_start_offset/2,
            (case when qs.statement_end_offset = -1
            then len(convert(nvarchar(max), qt.text)) * 2
            else qs.statement_end_offset end -qs.statement_start_offset)/2)
        as query_text,
        qt.dbid, dbname=db_name(qt.dbid),
        qt.objectid
FROM sys.dm_exec_query_stats qs
cross apply sys.dm_exec_sql_text(qs.sql_handle) as qt
ORDER BY
        [Avg CPU Time] DESC

Kig mere på det DMV, som hedder sys.dm_exec_query_stats, det kan give en masse dejlig infomation.

-------------!!------------------
http://www.performanceduo.com
-------------!!------------------
Avatar billede svarrenabe Nybegynder
18. august 2009 - 10:47 #5
PFD, dit bud var det bedste, så du får pointsene, og jeg lukker denne, tak for inputs til alle...

/Jonas
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester