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

Откуда:
Сообщений: 18
Добрый день.
Подскажите каким образом определить причину роста tempdb?
И нормально ли, что используемого места в базе temdb меньше 1 процента от общего размера базы?
26 дек 17, 10:42    [21062348]     Ответить | Цитировать Сообщить модератору
 Re: Рост tempdb  [new]
Goga-Gola
Guest
Dr.Livsi,

причина роста - в том, что SQL работает
26 дек 17, 10:46    [21062358]     Ответить | Цитировать Сообщить модератору
 Re: Рост tempdb  [new]
LSV
Member [заблокирован]

Откуда: Киев
Сообщений: 30817
Dr.Livsi
Добрый день.
Подскажите каким образом определить причину роста tempdb?
И нормально ли, что используемого места в базе temdb меньше 1 процента от общего размера базы?
1. Сложные сортировки больших выборок. Использование больших врем. таблиц. Использование 1С, особенно отчетов. :)
2. Это нормально. Это же временные данные. Сама база своб. место не схлопнет. Только вручную или регламентом.
26 дек 17, 10:49    [21062367]     Ответить | Цитировать Сообщить модератору
 Re: Рост tempdb  [new]
Dr.Livsi
Member

Откуда:
Сообщений: 18
Вопрос в том, что в тестовой базе внезапно выросла tempdb. Хотя работы там не ведутся.
Вот я и пытаюсь найти причину.
Где-нибудь фиксируется увеличение, в каком нибудь журнале? Кто когда на сколько? Или может включить подобное логирование можно?
26 дек 17, 10:57    [21062393]     Ответить | Цитировать Сообщить модератору
 Re: Рост tempdb  [new]
aleks222
Guest
LSV
Dr.Livsi
Добрый день.
Подскажите каким образом определить причину роста tempdb?
И нормально ли, что используемого места в базе temdb меньше 1 процента от общего размера базы?
1. Сложные сортировки больших выборок. Использование больших врем. таблиц. Использование 1С, особенно отчетов. :)
2. Это нормально. Это же временные данные. Сама база своб. место не схлопнет. Только вручную или регламентом.


3. BULK INSERT в таблицу без кластерного индекса.

ЗЫ. На эти грабли я лично наступал. Extent на строку в полсотни байт.
26 дек 17, 11:10    [21062447]     Ответить | Цитировать Сообщить модератору
 Re: Рост tempdb  [new]
человек_ниоткуда
Guest
Dr.Livsi
Добрый день.
Подскажите каким образом определить причину роста tempdb?

Можно логировать факт выростания файла БД (кстати: полезно это для логов), но запрос который в этом повинен надо отлавливать руками через dmv. Плюс это может быть запрос который держит транзакцию долгую, а может быть запрос который сам много понаписал в лог, а может быть и то и другое.
Короче: если выросло, значит что-то таки было.


Dr.Livsi
И нормально ли, что используемого места в базе temdb меньше 1 процента от общего размера базы?

Да нормально. tempdb сама не сжимается, только руками через DBCC. Такчто если она выросла, то такой и останется.

Что выросло-то? - mdf или ldf?
26 дек 17, 11:35    [21062547]     Ответить | Цитировать Сообщить модератору
 Re: Рост tempdb  [new]
Dr.Livsi
Member

Откуда:
Сообщений: 18
DBCC SQLPERF(LOGSPACE) вернул tempdb 285,0547 57,62875 0
Хотя в свойствах temdb Размер - 150337,06 МБ, Доступное место - 150040,53 МБ.

Не пойму куда смотреть.
26 дек 17, 11:38    [21062563]     Ответить | Цитировать Сообщить модератору
 Re: Рост tempdb  [new]
Dr.Livsi
Member

Откуда:
Сообщений: 18
aleks222, у меня база 1С, BULK это же команда SQL, врядли кто у нас ее пользовал.
26 дек 17, 11:39    [21062568]     Ответить | Цитировать Сообщить модератору
 Re: Рост tempdb  [new]
Dr.Livsi
Member

Откуда:
Сообщений: 18
человек_ниоткуда,
Ага, получается вырос mdf, ldf малюсенький.
26 дек 17, 11:43    [21062590]     Ответить | Цитировать Сообщить модератору
 Re: Рост tempdb  [new]
человек_ниоткуда
Guest
Dr.Livsi
человек_ниоткуда,
Ага, получается вырос mdf, ldf малюсенький.

Значит что-то делали, а тебе не сказали! Мониторь размер tempdb.
26 дек 17, 11:45    [21062599]     Ответить | Цитировать Сообщить модератору
 Re: Рост tempdb  [new]
Eleanor
Member

Откуда:
Сообщений: 2859
Dr.Livsi
Где-нибудь фиксируется увеличение, в каком нибудь журнале? Кто когда на сколько? Или может включить подобное логирование можно?

В дефолтном трейсе увеличение файлов логируется. См. скрипты в категории Database Events.
26 дек 17, 11:47    [21062611]     Ответить | Цитировать Сообщить модератору
 Re: Рост tempdb  [new]
Dr.Livsi
Member

Откуда:
Сообщений: 18
Eleanor, отличная статья, спасибо.
Сразу возникло несколько вопросов.
1. В папке с логами есть файлы только за сегодняшний день - за вчера их SQL сам удалил или логи только сегодня включили?
2. Как увидеть когда были включены логи?
26 дек 17, 12:51    [21062868]     Ответить | Цитировать Сообщить модератору
 Re: Рост tempdb  [new]
Eleanor
Member

Откуда:
Сообщений: 2859
Dr.Livsi,

Посмотрите в select * from sys.traces where id=1:
- максимальный размер в МБ и количество файлов логов max_size и max_files. Данные записываются по кругу, поэтому если указанный размер оказывается превышен, то старые данные начинают затираться новыми.
- дата запуска логирования start_trace. Если сервер перезапускали, то логирование начнется с нуля.

В целом дефолтный трейс нужен, если вам нужно быстро посмотреть, что происходило в прошлом, а никакого логирования вы предварительно не настраивали.

Такой же трейс в профайлере или расширенных событиях вы можете настроить самостоятельно, используя события Data File Auto Growth, Log File Auto Growth.
26 дек 17, 13:48    [21063099]     Ответить | Цитировать Сообщить модератору
 Re: Рост tempdb  [new]
LSV
Member [заблокирован]

Откуда: Киев
Сообщений: 30817
Dr.Livsi
aleks222, у меня база
Ключевое слово прозвучало ! Моя догадка "не в бровь а в глаз" :)
Ищите кривой отчет/обработку. Odis Ass мегаактивно использует сабж.
В контексте tempdb выполните:

dbcc shrinkfile ('templog')
dbcc shrinkfile ('tempdev',200000) где 200000 - конечный размер в Мб.

Для высоконагруженных БД, значение надо выставлять близкое к уже занятому и постепенно снижать. Если сразу указать мало, то выполнение может зафейлиться. В некот. случаях успешное выполнение может не урезать файл. Просто повторите позже.
26 дек 17, 14:57    [21063423]     Ответить | Цитировать Сообщить модератору
 Re: Рост tempdb  [new]
архивариус
Member

Откуда:
Сообщений: 150
LSV
Dr.Livsi
aleks222, у меня база
Ключевое слово прозвучало ! Моя догадка "не в бровь а в глаз" :)
Ищите кривой отчет/обработку. Odis Ass мегаактивно использует сабж.

ошибка програмиста 1С и tempdb растет как в этом плане :-(

К сообщению приложен файл. Размер - 106Kb
26 дек 17, 15:51    [21063714]     Ответить | Цитировать Сообщить модератору
 Re: Рост tempdb  [new]
Ролг Хупин
Member

Откуда: Чебаркуль
Сообщений: 3708
Dr.Livsi
Вопрос в том, что в тестовой базе внезапно выросла tempdb. Хотя работы там не ведутся.
Вот я и пытаюсь найти причину.
Где-нибудь фиксируется увеличение, в каком нибудь журнале? Кто когда на сколько? Или может включить подобное логирование можно?


далдано чудить, темп база в некоей юзерской базе?
26 дек 17, 15:58    [21063741]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить