|
Проблемы с SQL сервером. Загрузка ЦП 100%
| ☑ |
0
Тема
25.11.13
✎
11:38
|
Тут есть спецы по SQL? Загрузка ЦП 100% процессом SQL. В чем может быть причина? если большой запрос то как можно узнать что это за запрос? и можно как-то сделать чтобы SQL не вешал систему, т.е. ограничить ресурс ЦП?
|
|
1
php5
25.11.13
✎
11:42
|
(25) Ограничить можно щелкнув в Managment Studio на корне дерева (где список баз). Там и по оперативке можно ограничить и по процессору.
Для просмотра выполнения запросов, в том числе и тяжелых кури профайлер sql.
|
|
2
viknik
25.11.13
✎
11:45
|
1. Монитор активности или профайлер
2. CPU affinity mask (если, конечно, не одно ядро на SQL-сервере)
|
|
3
dk
25.11.13
✎
11:47
|
max DOP поставить в половину числа процессоров
|
|
4
МихаилМ
25.11.13
✎
11:51
|
(0)
max DOP ограничить можно, но это не решение проблемы.
учитесь пользоваться ms sql profiler и технологическим журналом.
также у гилева есть бесплатный сервис анализа производительности 1с8 в связке с мс скл.
|
|
5
dk
25.11.13
✎
11:56
|
(4) лучше уж DOP поменять чем (1) и (2) ))
|
|
6
МихаилМ
25.11.13
✎
12:00
|
(0)
это проблему не решает, а только слегка маскирует.
|
|
7
dmrjan
25.11.13
✎
12:05
|
Попробуй ограничить стоимость запроса скажем до 300 или 500. Те, у кого отчеты начнут ругаться - первыми прибегут.
|
|
8
Demiurg
25.11.13
✎
13:08
|
(0) человеческих вариантов два: либо найти топ запросов, нагружающих запросов и их оптимизировать или тупо купить железку с сильно большим количеством ядер процессоров
остальное так себе...
|
|
9
Demiurg
25.11.13
✎
13:08
|
нагружающих запросов = нагружающих проц
|
|
10
Леха Дум
25.11.13
✎
13:14
|
Выполни запрос:
SELECT r.session_id
,status
,substring(qt.text,r.statement_start_offset/2,
(CASE WHEN r.statement_end_offset = -1
then len(convert(nvarchar(max), qt.text)) * 2
ELSE r.statement_end_offset END - r.statement_start_offset)/2)
AS query_text
,qt.dbid
,qt.objectid
,r.cpu_time
,r.total_elapsed_time
,r.reads
,r.writes
,r.logical_reads
,r.scheduler_id
FROM sys.dm_exec_requests r
cross apply sys.dm_exec_sql_text(sql_handle) AS qt
WHERE r.session_id >4
ORDER BY r.scheduler_id, r.status, r.session_id
узнаешь какие запросы сейчас выполняются
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший