Я видел именно эту проблему, и исправление, которое в конечном итоге было выпущено, чтобы исправить это, было прямым результатом моего случая с Microsoft CSS. Для исправления нет общедоступной статьи базы знаний. Убедитесь, что вы применили Пакет обновления 4 и самое последнее накопительное обновление для SQL Server (на момент написания статьи это Накопительное обновление № 3 (9.00.5259) ).
До выпуска исправления Microsoft предложила просто прекратить создание таблиц #temp (так же, как KB # 916086 ). Поскольку это означало бы существенную переписывание десятков и десятков процедур отчетности, в моем случае обходным решением (независимо от флагов трассировки или расположения временного файла) было перезапускать наш кластер каждые два выходных. Тьфу.
Чтобы отследить использование базы данных tempdb, есть несколько сценариев, которые могут помочь, например, посмотрите на sp_whoIsActive Адама Мачаника, а именно:
А также этот скрипт (и те, что в комментариях) от @SQLSoldier:
Я хотел бы убедиться, что все ваши курсоры используют LOCAL STATIC READ_ONLY FORWARD_ONLY
(см. Это и это ), и посмотреть, есть ли какие-либо известные дорогие запросы, которые широко используют #temp таблицы / @table переменные, CTE, или могут содержать ненужные сортировки или приводить к хеш-соединениям ... все это может внести свой вклад в проблему (я сомневаюсь, что вы найдете одну золотую причину). Самым простым исправлением в качестве отправной точки «удар за доллар» будет использование правильных и недорогих опций курсора вместо значений по умолчанию.
Тем временем я бы (а) установил CU # 3 и (б) вызвал PSS. Скажите им, что вы после очень конкретного исправления, которое уже было подтверждено как ошибка и выпущено для других пользователей как частное исправление: «VSTS # 109112 - Отложенное удаление временной таблицы не масштабируется для определенных рабочих нагрузок». Возможно, вам придется сначала оплатить сбор за рассмотрение дела, но, поскольку это ошибка, плата должна быть возвращена.
SELECT @@VERSION;
? Согласно моему ответу, мое первое предложение будет состоять в том, чтобы убедиться, что вы используете SP4 и самое последнее накопительное обновление.