Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 как узнать сколько места занимает процесс в tempdb.  [new]
Maktym
Member

Откуда:
Сообщений: 62
Доброго Всем Дня.

Ситуация такова:
На производственной базе раз в несколько недель лог файл TempDB базы разростается до 60Гб.
При нормальной работе стандартный размер примерно 13 -16Гб.
В результате Сиквел делает непроизвольный ристарт и база обнуляется.

ВОПРОС:
Как можно узнать какие процессы занимают наибольшее количество места в TempDB.(Если можно прислать необходимые скрипты.)
Как можно узнать сколько времени данные процессы бегут.
С каких Баз Данных эти процессы были инициализированны.


Зарание Благодарю.
29 июн 11, 11:12    [10891277]     Ответить | Цитировать Сообщить модератору
 Re: как узнать сколько места занимает процесс в tempdb.  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Чтобы записать лишние 40 Гб в лог, нужно прилично времени. Берите отлавливайте долгоиграющие запросы: скорее всего какой-то из них - ваш пациент.
29 июн 11, 11:16    [10891299]     Ответить | Цитировать Сообщить модератору
 Re: как узнать сколько места занимает процесс в tempdb.  [new]
Maks Bragar
Member

Откуда: UA->AT
Сообщений: 165
Maktym,

Tempdb Space Usage in SQL Server
29 июн 11, 12:06    [10891754]     Ответить | Цитировать Сообщить модератору
 Re: как узнать сколько места занимает процесс в tempdb.  [new]
Maktym
Member

Откуда:
Сообщений: 62
Гавриленко Сергей Алексеевич,

Спасибо за совет,Но есть еще один вопрос:

Как я могу узнать какие Процессы бегут в TempDB и какой обьем они заниимают.
29 июн 11, 12:23    [10891945]     Ответить | Цитировать Сообщить модератору
 Re: как узнать сколько места занимает процесс в tempdb.  [new]
Maktym
Member

Откуда:
Сообщений: 62
Maks Bragar,

Спасибо.
29 июн 11, 12:23    [10891950]     Ответить | Цитировать Сообщить модератору
 Re: как узнать сколько места занимает процесс в tempdb.  [new]
1d0
Member

Откуда: инфа100%
Сообщений: 2521
Maktym
Гавриленко Сергей Алексеевич,

Спасибо за совет,Но есть еще один вопрос:

Как я могу узнать какие Процессы бегут в TempDB и какой обьем они заниимают.


как обычно профайлером.
29 июн 11, 17:19    [10894827]     Ответить | Цитировать Сообщить модератору
 Re: как узнать сколько места занимает процесс в tempdb.  [new]
Alexandr Kr.
Member

Откуда: Украина, Харьков
Сообщений: 165
Maktym
Как я могу узнать какие Процессы бегут в TempDB и какой обьем они заниимают.


Добрый день.
Вот так можно попробовать посмотреть какой процесс сколько отбирает tempdb.
select spid,db_name(dbid),
SUM(tsu.user_objects_alloc_page_count +tsu.internal_objects_alloc_page_count ) as tempdb_allocations,
sum(tsu.user_objects_alloc_page_count +tsu.internal_objects_alloc_page_count - 
								tsu.user_objects_dealloc_page_count - 
								tsu.internal_objects_dealloc_page_count) as tempdb_current
from sys.dm_db_task_space_usage	tsu	join
(select distinct spid,dbid,status from sys.sysprocesses 
where status not in( 'sleeping','background') and spid!=@@SPID) spr on tsu.session_id=spr.spid
group by spid,dbid
29 июн 11, 19:28    [10895727]     Ответить | Цитировать Сообщить модератору
 Re: как узнать сколько места занимает процесс в tempdb.  [new]
stavgreengo
Member

Откуда:
Сообщений: 710
А оно надо заморачиваться с tempdb ? Я тупо шринкую после backup trancet_only в ночном джобе каждую ночь !!!
З.Ы.: разве что хотите вникнуть в суть вещей !!!
30 июн 11, 13:59    [10899448]     Ответить | Цитировать Сообщить модератору
 Re: как узнать сколько места занимает процесс в tempdb.  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
stavgreengo
А оно надо заморачиваться с tempdb ? Я тупо шринкую после backup trancet_only в ночном джобе каждую ночь !!!
О. Еще один оптимизатор шринком. А что вы будете шринковать, когда tempdb полностью засрет диск и все дружно отвалится?
30 июн 11, 14:02    [10899468]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить