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

Откуда: Украина, Киев
Сообщений: 1440
Коллеги, перечитал кучу веток, проблему вижу, решить не могу. Шринк лога транзакций не проходит, файл не уменьшается.
Вывод
DBCC loginfo(имябазы)

выдает
FileId FileSize StartOffset FSeqNo Status Parity CreateTime
----------- ---------------------- ---------------------- ----------- ----------- ------
...........................................................
2 87031808 195538845696 26260 2 64 2009-12-30 03:18:00.007

То есть застряло что то в логе и не дает уменьшится.

DBCC OPENTRAN(имябазы)

говорит что нет активных транзакций!

Лог заполнен на 5.5929385E-2%

При этом занимает в системе 187Гб.

Что делать в этой ситуации?
30 дек 09, 17:17    [8138696]     Ответить | Цитировать Сообщить модератору
 Re: Застряла транзакция в логе, не могу Truncate сделать.  [new]
Охрименко
Member

Откуда: Украина, Киев
Сообщений: 1440
MS SQL 7.0 забыл указать
30 дек 09, 17:17    [8138701]     Ответить | Цитировать Сообщить модератору
 Re: Застряла транзакция в логе, не могу Truncate сделать.  [new]
Le Peace
Member

Откуда: Москва
Сообщений: 8969
Может, checkpoint?
https://www.sql.ru/forum/actualthread.aspx?tid=721218&hl=checkpoint
30 дек 09, 17:46    [8138828]     Ответить | Цитировать Сообщить модератору
 Re: Застряла транзакция в логе, не могу Truncate сделать.  [new]
Охрименко
Member

Откуда: Украина, Киев
Сообщений: 1440
перезапускал сервис MS SQL. Думаю вызывал Checkpoint этим, не изменилась картина.
30 дек 09, 17:49    [8138841]     Ответить | Цитировать Сообщить модератору
 Re: Застряла транзакция в логе, не могу Truncate сделать.  [new]
Охрименко
Member

Откуда: Украина, Киев
Сообщений: 1440
Победил такой глюк!

Все решилось просто взял где то тут в смежных темах:

CREATE TABLE my_table( t1 int );

declare @i int
set @i = 0

while @i < 200000 begin
  begin tran
  insert into my_table values (default)
  commit tran
  set   @i = @i+1
end  
go

Это вставило новые записи в транзакшен лог и мозги у SQL прочистились! C 187Гб файлик стал размером 760Кб.

Никакие другие команды не помогали
30 дек 09, 18:11    [8138925]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить