добавили память на сервер, теперь периодическая загрузка ЦП 99-100%
Всем доброго дня!
Есть проблема: добавили память на сервер SQL, теперь периодическая загрузка ЦП 99-100%. Раньше памяти не было и проблемы не было. Как выяснить с чем связана проблема?
Нравится
Здравствуйте!
Необходимо анализировать. Для начала стоит обратить внимание на процессы, которые больше всего занимают ресурс ЦП.
Не редки случаи, когда 100% загрузка ЦП SQL сервером происходит при блокировках. Ранее у вас узкое место было в системе ввода-вывода, а теперь в обработке самих данных. Внимательно смотрите какие части БД на каких дисках располагаются, например, TEMPDB, по умолчанию находится на диске С, а в этой базе происходят сортировки и создания временных таблиц. Эту базу лучше класть на RAID, а еще лучше на SSD. Так же, не маловажным моментом является сбор статистики и дефрагментация индексов, это нужно делать каждый день.
"Евгений Либин" написал:какие части БД на каких дисках располагаются, например, TEMPDB
Евгений, добрый день!
Блокировки действительно частое явление, пока не думал что с ними делать.
Я правильно понимаю: что при добавлении оперативной памяти кардинально меняется "узкое место"?
TEMPDB как и лог базы црм реально лежат на c:\ а не на ssd как сама база! Надо всё вместе с логами на ssd закинуть?
Но будьте аккуратными, SSD имеет ограниченный ресурс, и если будет утеряна TEMPDB, то вы ничего не потеряете, а вот с файлами данных могут быть проблемы. Лучше саму базу на 10 RAID, а темповую базу на SSD.
Есть монитор активности, там видно какие сессии что делают, есть активность по запросам, а вообще это работа для DBA, т.е. настройка и тюнинг БД.
Начните с простого,в 60% это помогает
1. tempdb на ссд
2 ежедневный ребилд индексов и сбор статистики.
Дальше нужно смотреть, может индексов не достаточно, может наоборот, слишком много.
"Евгений Либин" написал:Есть монитор активности, там видно какие сессии
Евгений, спасибо! Именно благодаря этой замечательной функции (подсказал доблестный админ) в mssms и нашел косячную процедуру, которая в джобе часто запускалась. А еще понял (так же благодаря админу), что параллелизм зло, поэтому
Max Degree of Parallelism = 4 (а лучше вооюще 2 поставить)!!!