SQL al 100%

15/07/2008 - 01:21 por Iván Rico | Informe spam
Hola a todos,

Soy nuevo por estos lados y me acerco a ustedes para ver si me pueden
orientar un poco, me acabo de topar con un servidor SQL 2005 que tiene a los
4 procesadores al 100%, el servidor es lo unico que hace es decir solo tiene
SQL y no hace nada mas, bueno tambien tiene lo RDP para la administración
remota(solo el usuario adminstrador). Veo en el adminsitrador de procesos
que efectivamente es el sql el que consume todos los CPUs, pero me gustaria
saber si hay alguna forma de ver que jobs o que procesos provocan que el CPU
se lance hasta el 100%

¿hay alguna herramienta que me puedan recomendar?

de antemano gracias.

Saludos a todos

Preguntas similare

Leer las respuestas

#1 Maxi Accotto
15/07/2008 - 02:12 | Informe spam
Si claro, deberia usted utilizar la herramienta profiler de SQLServer (esta
viene con el producto) y capturar los eventos de mayor duracion para ver
donde esta teniendo los problemas


Saludos
Maxi Accotto
Microsoft MVP en SQLServer
SQltotalconsulting
-

"Iván Rico" escribió en el mensaje de
noticias:#
Hola a todos,

Soy nuevo por estos lados y me acerco a ustedes para ver si me pueden
orientar un poco, me acabo de topar con un servidor SQL 2005 que tiene a
los 4 procesadores al 100%, el servidor es lo unico que hace es decir solo
tiene SQL y no hace nada mas, bueno tambien tiene lo RDP para la
administración remota(solo el usuario adminstrador). Veo en el
adminsitrador de procesos que efectivamente es el sql el que consume todos
los CPUs, pero me gustaria saber si hay alguna forma de ver que jobs o que
procesos provocan que el CPU se lance hasta el 100%

¿hay alguna herramienta que me puedan recomendar?

de antemano gracias.

Saludos a todos

Respuesta Responder a este mensaje
#2 Ricardo Junquera
15/07/2008 - 09:09 | Informe spam
Hola
Desde el "Monitor de Actividad" en el "SQL Server Management Studio" en la
carpeta de "Administración" puedes ver de una forma muy sencilla que procesos
estan consumiendo CPU


Ricardo Junquera
Consultor Business Intelligence
BG&S Consultores


"Maxi Accotto" wrote:

Si claro, deberia usted utilizar la herramienta profiler de SQLServer (esta
viene con el producto) y capturar los eventos de mayor duracion para ver
donde esta teniendo los problemas


Saludos
Maxi Accotto
Microsoft MVP en SQLServer
SQltotalconsulting
-

"Iván Rico" escribió en el mensaje de
noticias:#
> Hola a todos,
>
> Soy nuevo por estos lados y me acerco a ustedes para ver si me pueden
> orientar un poco, me acabo de topar con un servidor SQL 2005 que tiene a
> los 4 procesadores al 100%, el servidor es lo unico que hace es decir solo
> tiene SQL y no hace nada mas, bueno tambien tiene lo RDP para la
> administración remota(solo el usuario adminstrador). Veo en el
> adminsitrador de procesos que efectivamente es el sql el que consume todos
> los CPUs, pero me gustaria saber si hay alguna forma de ver que jobs o que
> procesos provocan que el CPU se lance hasta el 100%
>
> ¿hay alguna herramienta que me puedan recomendar?
>
> de antemano gracias.
>
> Saludos a todos
>

Respuesta Responder a este mensaje
#3 Carlos A.
18/07/2008 - 15:34 | Informe spam
Buen Dia:
Primero haga un dbcc dbreindex a todas las tablas de la base o bases de
datos alojadas y despues un sp_updatestats a todas las bases de datos.
verifique:MDOP,Cost Threshold for parallelism , maximum worked treads, esto
con el fin de tratar de reducir en primera instancia el consumo del
procesador.
Luego si haga el profiler para detectar las sentencias con mayor consumo en
tiempo, procesador y numero de lecturas, sestas evidenciasn falta de indices
Apoyese muchio en las vistas dinamicas de sql 2005
las sys.dm_db_index_usage_stats, sys.dm_os_performance_counters , este
script le indicara por lo pronto las sentencias mas demoradas desde el
momento en que inicio la instancia.
SELECT TOP 100 qt.text AS 'SP Name', qs.execution_count AS 'Execution
Count',
qs.execution_count/DATEDIFF(Second, qs.creation_time, GetDate()) AS
'Calls/Second',
qs.total_worker_time/qs.execution_count AS 'AvgWorkerTime',
qs.total_worker_time AS 'TotalWorkerTime',
qs.total_elapsed_time/qs.execution_count AS 'AvgElapsedTime',
qs.max_logical_reads, qs.max_logical_writes, qs.total_physical_reads,
DATEDIFF(Minute, qs.creation_time, GetDate()) AS 'Age in Cache'
FROM sys.dm_exec_query_stats AS qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS qt
WHERE qt.dbid = db_id() -- Filter by current database
ORDER BY qs.execution_count DESC

Y esta las que tienen mas consumo de procesador

SELECT TOP 20 qt.text AS 'SP Name', qs.total_worker_time AS
'TotalWorkerTime',
qs.total_worker_time/qs.execution_count AS 'AvgWorkerTime',
qs.execution_count AS 'Execution Count',
ISNULL(qs.execution_count/DATEDIFF(Second, qs.creation_time, GetDate()),
0) AS 'Calls/Second',
ISNULL(qs.total_elapsed_time/qs.execution_count, 0) AS 'AvgElapsedTime',
qs.max_logical_reads, qs.max_logical_writes,
DATEDIFF(Minute, qs.creation_time, GetDate()) AS 'Age in Cache'
FROM sys.dm_exec_query_stats AS qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS qt
WHERE qt.dbid = db_id() -- Filter by current database
ORDER BY qs.total_worker_time DESC

Como son vistas dinamicas estas se limpian cada vez que se baja el servicio
sql

"Iván Rico" wrote:

Hola a todos,

Soy nuevo por estos lados y me acerco a ustedes para ver si me pueden
orientar un poco, me acabo de topar con un servidor SQL 2005 que tiene a los
4 procesadores al 100%, el servidor es lo unico que hace es decir solo tiene
SQL y no hace nada mas, bueno tambien tiene lo RDP para la administración
remota(solo el usuario adminstrador). Veo en el adminsitrador de procesos
que efectivamente es el sql el que consume todos los CPUs, pero me gustaria
saber si hay alguna forma de ver que jobs o que procesos provocan que el CPU
se lance hasta el 100%

¿hay alguna herramienta que me puedan recomendar?

de antemano gracias.

Saludos a todos



Respuesta Responder a este mensaje
#4 Iván Rico
21/07/2008 - 17:42 | Informe spam
Gracias a todos por las respuestas, seguire con las pruebas y cualquier
novedad negativa o positiva la comento en este hilo.

Saludos

"Carlos A." escribió en el mensaje
news:
Buen Dia:
Primero haga un dbcc dbreindex a todas las tablas de la base o bases de
datos alojadas y despues un sp_updatestats a todas las bases de datos.
verifique:MDOP,Cost Threshold for parallelism , maximum worked treads,
esto
con el fin de tratar de reducir en primera instancia el consumo del
procesador.
Luego si haga el profiler para detectar las sentencias con mayor consumo
en
tiempo, procesador y numero de lecturas, sestas evidenciasn falta de
indices
Apoyese muchio en las vistas dinamicas de sql 2005
las sys.dm_db_index_usage_stats, sys.dm_os_performance_counters , este
script le indicara por lo pronto las sentencias mas demoradas desde el
momento en que inicio la instancia.
SELECT TOP 100 qt.text AS 'SP Name', qs.execution_count AS 'Execution
Count',
qs.execution_count/DATEDIFF(Second, qs.creation_time, GetDate()) AS
'Calls/Second',
qs.total_worker_time/qs.execution_count AS 'AvgWorkerTime',
qs.total_worker_time AS 'TotalWorkerTime',
qs.total_elapsed_time/qs.execution_count AS 'AvgElapsedTime',
qs.max_logical_reads, qs.max_logical_writes, qs.total_physical_reads,
DATEDIFF(Minute, qs.creation_time, GetDate()) AS 'Age in Cache'
FROM sys.dm_exec_query_stats AS qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS qt
WHERE qt.dbid = db_id() -- Filter by current database
ORDER BY qs.execution_count DESC

Y esta las que tienen mas consumo de procesador

SELECT TOP 20 qt.text AS 'SP Name', qs.total_worker_time AS
'TotalWorkerTime',
qs.total_worker_time/qs.execution_count AS 'AvgWorkerTime',
qs.execution_count AS 'Execution Count',
ISNULL(qs.execution_count/DATEDIFF(Second, qs.creation_time,
GetDate()),
0) AS 'Calls/Second',
ISNULL(qs.total_elapsed_time/qs.execution_count, 0) AS
'AvgElapsedTime',
qs.max_logical_reads, qs.max_logical_writes,
DATEDIFF(Minute, qs.creation_time, GetDate()) AS 'Age in Cache'
FROM sys.dm_exec_query_stats AS qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS qt
WHERE qt.dbid = db_id() -- Filter by current database
ORDER BY qs.total_worker_time DESC

Como son vistas dinamicas estas se limpian cada vez que se baja el
servicio
sql

"Iván Rico" wrote:

Hola a todos,

Soy nuevo por estos lados y me acerco a ustedes para ver si me pueden
orientar un poco, me acabo de topar con un servidor SQL 2005 que tiene a
los
4 procesadores al 100%, el servidor es lo unico que hace es decir solo
tiene
SQL y no hace nada mas, bueno tambien tiene lo RDP para la administración
remota(solo el usuario adminstrador). Veo en el adminsitrador de procesos
que efectivamente es el sql el que consume todos los CPUs, pero me
gustaria
saber si hay alguna forma de ver que jobs o que procesos provocan que el
CPU
se lance hasta el 100%

¿hay alguna herramienta que me puedan recomendar?

de antemano gracias.

Saludos a todos



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida