Действия, применяемые в первых пяти планах обслуживания MS SQL Server являются обязательными к применению в регулярном порядке. Есть ещё два действия, Rebuild Index и Reorganize Index, которые нужно выполнять по необходимости. В этих целях лучше всего использовать не планы обслуживания, а готовые соответствующие скрипты с сайта Ола Халленгрен, о которых мы поговорим в отдельной статье.
Что же касается регулярных действий, то есть ещё две процедуры, связанные с удалением устаревших (уже не нужных) данных, о которых и поговорим ниже.
В самом деле, зачем нам бесконечное время хранить резервные копии баз данных, особенно резервные копии журнала транзакций. Они полезны только до момента создания очередной полной резервной копии. Всё, что было создано до создания полной резервной копии уже фактически не нужно. Ну, в крайнем случае, для страховки можно хранить предыдущий день. То же самое касается разностных (дифференциальных) резервных копий, если они создаются. Полные резервные копии стоит хранить, скажем месяц, в отдельных случаях квартал, но не более того. Так что напрашивается к выполнению некий план регулярного удаления устаревших резервных копий баз данных и, к счастью, в системе планов обслуживания SSMS есть возможность его реализовать! На самом деле речь идёт об обычном удалении файлов и осуществить его можно при помощи PowerShell-скрипта или даже скрипта Windows Command. Однако, удобнее администрировать и проще создать его с помощью планов обслуживания, при этом все планы будут видны в одном месте.
Итак, приступим. Аналогично тому, как мы делали для предыдущих планов, выбираем из меню SSMS “Management (Управление)” –> “Maintenance Plans (Планы обслуживания)”, пункт контекстного меню “Maintenance Plan Wizard (Мастер планов обслуживания)”.
В следующем окне нам нужно будет дать имя нашему плану, например “MaintenancePlan6”, которое будет отражать тот факт, что этот план должен будет выполняться шестым в нашей цепочке
Затем, как и ранее, даём описание (Description) плана, например “Delete Obsolete Backups” и нажимаем на кнопку “Next (Далее)”. В новом окне выбора задач ставим птичку на последней позиции “Maintenance Cleanup Task” (“Очистка после обслуживания”):

Выбор задачи “Очистка после обслуживания”
и снова нажимаем на кнопку “Next (Далее)” до тех пор, пока не дойдём до окна определения задачи:

Определение задачи “Очистка после обслуживания”
Заполняем его в соответствии с нашим желанием удалять все файлы с расширением .bak которые были созданы ранее. чем 4 недели назад, с каталога, в который регулярно осуществляется полное резервное копирование базы данных с именем “1C-Production” в плане обслуживания MaintenancePlan4:

Заполненное окно определения задачи “Очистка после обслуживания” в русском варианте SSMS
После этого, в этом же окне в строке “Расписание” жмём кнопку “Изменить”, где, также как и для других планов, задаём расписание, назначив выполнение плана каждый день без исключений, например, в пять часов утра:
У вдумчивого читателя должен был бы возникнуть вопрос, а как быть для других баз данных. Для них что, в этом случае нужно заводить отдельный план обслуживания? Ведь у нас тут не было возможности выбрать несколько баз данных. Да, действительно, в случае, когда мы использовали опцию записи резервных копий в отдельный свой подкаталог файловой системы, мы не можем сделать это сразу. Однако, вспомните про цепочки задач (или по другому, вложенные планы), которые можно реализовать в рамках одного единого плана. Мы обсуждали эту тему в статье про обновление статистики баз данных.
Действуя точно также вы можете создать сколько угодно вложенных планов, необходимых для реализации удаления соответствующих файлов и для других баз данных.
Повторяем вышеописанные действия и для резервных копий журнала транзакций. Изменяем только расширение на trn и периодичность ставим 2 дня вместо 4 недель исходя из того что наша задача удалять все файлы с расширением .trn, которые были созданы ранее, чем два дня назад, из каталога файловой системы, куда записываются резервные копии журнала транзакций баз данных.