Мы запускаем установку SQL Server 2008 R2 Standard на 4-ядерный xeon с 8 ГБ оперативной памяти (из которых sqlserver разрешено использовать 6 ГБ). У меня есть приложение VB6, которое выполняет запросы к данным в этой базе данных для создания отчетов по данным опроса. На составление этих отчетов обычно уходит 7-10 минут (~ 60 вопросов, ~ 17 совокупных баллов, 50-500 респондентов на опрос).
Однако внезапно отчеты стали занимать до 30 минут. И это не просто один отчет время от времени. Это следствие во всем. Он просто замедлился. Я ничего не менял.
Пытался найти замки, но не нашел.
Вот моя статистика ожидания
wait_type waiting_tasks_count wait_time_ms max_wait_time_ms signal_wait_time_ms
------------------------------------------------------------ -------------------- -------------------- -------------------- --------------------
REQUEST_FOR_DEADLOCK_SEARCH 121287 606436183 5107 606436183
SQLTRACE_INCREMENTAL_FLUSH_SLEEP 151607 606430095 4094 0
LAZYWRITER_SLEEP 606582 606429625 1202 320482
XE_TIMER_EVENT 20216 606420962 30058 606420698
LOGMGR_QUEUE 568269 606373068 127733 63394
Не знаю, поможет ли это ..
Кто-нибудь знает, с чего мне начать поиски?
Следующий шаг - выяснить, какие запросы sql занимают так много времени, а затем работать над их оптимизацией (или оптимизацией самой базы данных).
Руководство по устранению неполадок производительности SQL 2008. Он довольно длинный, но если вы не знаете, с чего начать, это поможет вам методично сузить круг вопросов.