Главная > 1С Предприятие 8.2 > Восстановление поврежденного лог-файла базы SQL

Восстановление поврежденного лог-файла базы SQL

Я уже пару раз встречал ошибку, когда база данных работает и вроде бы все нормально. Модель восстановления у базы данных «Простая», но очистка файла логов не происходит. И делаешь полный бекап и журнала транзакций, но сокращение не происходит. В итоге куча данных просто остается на системном диск, а копия базы в архиве просто громадных размеров. Зачастую при простой модели восстановления файлы логов журнала транзакций никому не нужны и их можно было удалить, но не получается.

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

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

Инструкция по работе простая:

1. Отсоединяем базу данных с удалением используемых сеансов подключений.
2. Удаляем или перемещаем большой и старый файл логов на резервный диск.
3. Файл базы остается на старом месте.
4. В запросе примера укажите старое расположение файла базы данных *.mdf
5. Выполняем присоединение с помощью запроса.

В примере у меня база данных называется «utp», но вам надо подставить свое имя, которое имеет база. Ну, и проследите что бы путь к ней тоже был правильным. Удачи!

 
Категории: 1С Предприятие 8.2
Вы должны залогинится для комментирования.