Помогите плз предотвратить увеличение файла журнала.

abrashka
Дата: 20.04.2015 15:29:21
День добрый!
Существует оперативная база данных Main_DB, полная модель восстановления, размер порядка 60Г.
Вторая база Reporting_DB, простая модель восстановления(можно поменять).
Переодически, раз в несколько месяцев, удаляются все данные из Reporting_DB и строятся заново на основе данных из Main_DB(полная синхронизация).
Так вот, во время синхронизации размер журнала транзакции может вырасти до порядка 200Г, что не есть хорошо, тупо нет места на диске.
Если не трогать процесс синхронизации, то можно каким-то другим способом ограничить размер лога? Возможность отката не интересует в принципе, если произойдет сбой во время синхронизации, то данные в Reporting_DB в любом случае прийдется удалить.
Правильно ли я понимаю ситуацию:
Процесс синхронизации выполняет длинные транзакции, а чекпоинт происходит редко, это приводит к тому, что файл лога растет?

Если да, более частый чекпоинт спасет ситуацию?

Спасибо!
Гавриленко Сергей Алексеевич
Дата: 20.04.2015 15:31:44
Если вы переливаете данные в одной транзакции, то никакие чекпоинты вас не спасут.
abrashka
Дата: 20.04.2015 15:33:40
Гавриленко Сергей Алексеевич,

я понимаю... Хотелось бы верить, что синхронизация не является одной большой транзакцией.
Можно как-то удостовериться в том, что это на самом деле так?
Glory
Дата: 20.04.2015 15:34:45
abrashka
Можно как-то удостовериться в том, что это на самом деле так?

Ну так спрашивайте создателя вашей синхронизации
abrashka
Дата: 20.04.2015 15:45:22
Glory,

Я имею в виду если нет доступа к синхронизации...
Гавриленко Сергей Алексеевич
Дата: 20.04.2015 15:58:57
abrashka
Glory,

Я имею в виду если нет доступа к синхронизации...
Запись в лог отключить нельзя. Если кто-то придумал делать транзакции по 200 Гб, то они буду записаны в лог.
Владислав Колосов
Дата: 20.04.2015 16:00:49
Дропайте базу, заполните базу model так, как Вам надо, создание новой базы будет выполнено по образу model.
abrashka
Дата: 20.04.2015 16:08:02
Гавриленко Сергей Алексеевич,
Спасибо!
Если одна транзакция- то понятно, нужно фиксить синхронизацию.
А если речь идет о многочисленных транзакциях? Стоит ли менять частоту чекпоинта или есть другие варианты?
abrashka
Дата: 21.04.2015 15:34:06
Синхронизация таки не является одной большой транзакцией, видимо есть одна или несколько, которые раздувают лог.
Каким образом можно "выловить" транзакции, которые так сильно влияют на размер лога?
o-o
Дата: 21.04.2015 15:53:38
abrashka,

покажите, какой у вас выставлен прирост лога,
и в результате сколько VLF имеем (DBCC LOGINFO)
не сильно-то похоже на "несколько транзакций".
у вас же простая модель, чекпойнт по заполнении 70% лога срабатывает.
и чего же не вышло "перезаписать" лог прежде, чем 200 Гигов лога набралось?
наверное, хорошая открытая транзакция держала?