0. TravkinSV 3 13.01.16 20:22 Сейчас в теме

Скрипт SQL для включения SIMPLE модели восстановления и обрезания ldf файлов

Очень часто возникает ситуация, когда на диске заканчивается свободное место из-за неприлично разросшегося журнала транзакций. Подробно проблема описана в статье http://infostart.ru/public/168314/index.php?ID=168314, там же описано ручное исправление проблемы средствами MS SQL Managment Studio. Скрипт позволяет автоматически включить простую модель восстановления и обрезать ldf файлы для всех баз на сервере.

Перейти к публикации

Комментарии
Сортировка: Древо
1. CheBurator 3558 14.01.16 00:28 Сейчас в теме
Зачем нужна фулл-модель, если симпл-модель "без вреда для баз данных"..? Симпл модель позволяет откатиться/восстаовиться на любой момент времени?
2. TravkinSV 3 14.01.16 00:43 Сейчас в теме
(1) CheBurator, вопрос не в том, что для чего нужно. Без вреда имеется ввиду, что mdf не урезаются, а только лог транзакций. Этот скрипт для тех, кто решил установить Simple модель, что бы не настраивать вручную во всех базах и не делать shrink вручную. Я не настаиваю на использовании простой модели, но лично я ни разу не сталкивался с требованием загрузки бэкапа с точностью до минуты
3. insurgut 182 14.01.16 08:14 Сейчас в теме
(2) шринкать не обязательно, просто бэкапы нужно настраивать средствами SQL... либо на симпл переходить и тоже бэкапы настраивать на случай чего :)
7. PVG_73 17 20.01.16 13:28 Сейчас в теме
(1) CheBurator,
Фулл-модель актуально если делать деференциальные бакапы, т.е. имеем возможность восстановить данные до определенного момента времени и он же подразумевает чистку лога от ненужной информации.
Симпл-модель нужня для всех остальных, которые делают бакапы от случая к случаю или по расписанию.... ;-) В этом случае в логе хранится только текущая транзакция и после того как она завершится она автоматически оттуда удаляется. Проблемы могут возникнуть только в одном случае, если идет большая транзакция. Если мне память не изменяет, то групповое проведение как раз выполняется в неявной транзакции, поэтому лог может вырости до разных размеров.

Ну и всегда нужно помнить, что при любом восстановлении базы размер файла лога всегда соответствует размеру файла лога при совершении бакапа, и это не смотря на то что он просто создается пустой. Поэтому идеальной схемой бакапирования при симп модели : сначала шринк лога, потом бакап.
8. insurgut 182 20.01.16 20:04 Сейчас в теме
(7) PVG_73, стандартное групповое перепроведение выполняется не в транзакции (ну и галочку конечно редко кто взводит) :) Но многие любят писать сложные обработки документов и заключать их от начала до конца в транзакцию. Тут конечно может случится казус.
4. wbazil 122 14.01.16 08:51 Сейчас в теме
когда-то пользовался скриптом

USE MSklad;
GO
ALTER DATABASE MSklad
SET RECOVERY SIMPLE;
GO
DBCC SHRINKFILE('MSklad_log',100);
GO
ALTER DATABASE MSklad
SET RECOVERY FULL;
5. insurgut 182 14.01.16 09:30 Сейчас в теме
(4) wbazil, если перевести на русский народный, то называется этот скрипт - извращение :)
6. wbazil 122 15.01.16 18:01 Сейчас в теме
-когда-то ........

все были молодыми,можно конечно бекап лога настроить, но надо заметить задачу он выполнял
это было ночное задание, делаем фул бекап, реиндексацию, обновление стат., очистка кэша, и шринк
9. aspirator23 358 23.01.16 16:40 Сейчас в теме
...Автоматически 1С создает базу с моделью восстановления FULL...
Такие голословные предположения не стоит делать.
Модель восстановления SQL сервера для создаваемых новых баз определяется базой model.
Правильная ее настройка позволяет правильно создавать любую новую базу на сервере.
11. TravkinSV 3 25.01.16 18:44 Сейчас в теме
(9) aspirator23, Извиняюсь, не знал, отредактировал....
10. insurgut 182 23.01.16 20:29 Сейчас в теме
12. aspirator23 358 13.02.16 16:02 Сейчас в теме
13. TravkinSV 3 17.03.16 17:12 Сейчас в теме
(12) aspirator23, Даты говорят, что не я. Но судя по скрипту на скриншоте - никто ни у кого.
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Удаленный консультант-разработчик 1С
Краснодар
зарплата от 60 000 руб. до 60 000 руб.
Полный день



Ведущий программист 1С
Москва
зарплата от 150 000 руб. до 180 000 руб.
Полный день

Руководитель проектов 1С
Москва
Полный день