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

Откуда:
Сообщений: 1366
Здравствуйте.
Помогите решить проблему.
Есть сервер MS SQL 2008R2
Создал RAM-диск куда поместил 4 файла с темпДБ размером по 4 гига с ограничением по размеру. И создал один файл (300 мб) на обычном харде без ограничения по размеру. Сервер почему-то работает только с файлами на раме, а файл на харде даже не изменяется в размерах.
Так вот, при работе случается так, что валится ошибка "Журнал транзакций для базы данных "tempdb" заполнен." И в одном из файлов на рам-диске остается незавершенная транзакция. При этом файл на харде совсем не используется.
Вопрос - почему сервер не продолжает работу с файлом на харде? Как избежать этой ошибки?
11 апр 18, 15:34    [21330078]     Ответить | Цитировать Сообщить модератору
 Re: Журнал транзакций для базы данных "tempdb" заполнен.  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
Диам
4 файла с темпДБ размером по 4 гига с ограничением по размеру. И создал один файл (300 мб) на обычном харде без ограничения по размеру

и что из этого файлы данных, а что файл(ы) лога?
11 апр 18, 15:36    [21330088]     Ответить | Цитировать Сообщить модератору
 Re: Журнал транзакций для базы данных "tempdb" заполнен.  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
Диам
Вопрос - почему сервер не продолжает работу с файлом на харде? Как избежать этой ошибки?

это 2 разных вопроса.
1.
автор
почему сервер не продолжает работу с файлом на харде?

с файлом в 300Мб не работает, т.к. файлы данных заполняются в пропорции свободного места в них.
соответственно, пока в файлах по 4Гб не заполнятся 3,7Гб, на файл в 300Мб сервер даже не посмотрит.
2.
автор
Как избежать этой ошибки?

судя по всему, все файлы -- файлы данных.
а переполняется лог.
а о нем вы не пишете.
для решения проблемы
надо увеличить размер файла лога,
ну или ограничение сверху убрать, оно наверное у вас выставлено
11 апр 18, 15:43    [21330147]     Ответить | Цитировать Сообщить модератору
 Re: Журнал транзакций для базы данных "tempdb" заполнен.  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7403
Диам,

автор
И в одном из файлов на рам-диске остается незавершенная транзакция

Из-за этого и валится. Ищите виновника.
Ну, и справку не помешает изучить - как усекается журнал транзакций при простой модели восстановления.
11 апр 18, 15:50    [21330205]     Ответить | Цитировать Сообщить модератору
 Re: Журнал транзакций для базы данных "tempdb" заполнен.  [new]
Диам
Member

Откуда:
Сообщений: 1366
Yasha123,
да, вы правы, я упустил из виду, что это совсем разные файлы. Надо сделать файл тр.лога большего размера. Он тоже на рам-диске, поэтому ограничение на размер там актуально.
12 апр 18, 13:54    [21333291]     Ответить | Цитировать Сообщить модератору
 Re: Журнал транзакций для базы данных "tempdb" заполнен.  [new]
Jasonclark03
Member [скрыт] [заблокирован]

Откуда:
Сообщений: 17
Если вы выполняете операцию поиска или сортировки, данные сохраняются в базе данных tempdb. Теперь, если одна транзакция выполняет аналогичную операцию и обрабатывает большой объем данных, находящихся в базе данных tempdb, журнал транзакций для tempdb станет большим. Я видел это в нашей среде в диспетчере решений и системах BI.

В то время, когда он заполнен, вы можете сделать Select * из sys.databases и прочитать Col. log_reuse_wait_desc, чтобы получить то, что заставляет его заполняться. обычно вы увидите «active_transaction». Если это что-то еще, вам может потребоваться изучить его, сообщить мне, и я могу помочь вам диагностировать его.

Вы можете перейти к SSMS, Right Click, свойствам базы данных и увеличить начальный размер до того, что вам кажется подходящим. Также сохраняйте автовышку до некоторой величины, поэтому, даже если она заполняется, она расширяется. Удаление автокроста - не очень хорошая идея. Он сбрасывается, если он заполняется. Будьте осторожны, чтобы обеспечить достаточное пространство для хранения tempdb, будь то журнал или данные, особенно в OLAP-системах, таких как NW BI, диспетчер решений, APO и т. Д
25 апр 18, 09:04    [21366653]     Ответить | Цитировать Сообщить модератору
 Re: Журнал транзакций для базы данных "tempdb" заполнен.  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6794
Jasonclark03
Если вы выполняете операцию поиска или сортировки, данные сохраняются в базе данных tempdb. Теперь, если одна транзакция выполняет аналогичную операцию и обрабатывает большой объем данных, находящихся в базе данных tempdb, журнал транзакций для tempdb станет большим. Я видел это в нашей среде в диспетчере решений и системах BI.

В то время, когда он заполнен, вы можете сделать Select * из sys.databases и прочитать Col. log_reuse_wait_desc, чтобы получить то, что заставляет его заполняться. обычно вы увидите «active_transaction». Если это что-то еще, вам может потребоваться изучить его, сообщить мне, и я могу помочь вам диагностировать его.

Вы можете перейти к SSMS, Right Click, свойствам базы данных и увеличить начальный размер до того, что вам кажется подходящим. Также сохраняйте автовышку до некоторой величины, поэтому, даже если она заполняется, она расширяется. Удаление автокроста - не очень хорошая идея. Он сбрасывается, если он заполняется. Будьте осторожны, чтобы обеспечить достаточное пространство для хранения tempdb, будь то журнал или данные, особенно в OLAP-системах, таких как NW BI, диспетчер решений, APO и т. Д

да тут каждое предложение фейк, как жеж так
25 апр 18, 09:06    [21366657]     Ответить | Цитировать Сообщить модератору
 Re: Журнал транзакций для базы данных "tempdb" заполнен.  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
мдя ....занавес
25 апр 18, 09:27    [21366705]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить