НАЗНАЧЕНИЕ
Настройка плана обслуживания баз данных через MS SQL.
ПРИМЕНЕНИЕ
Когда нужно настроить автоматическое резервное копирование и обслуживание баз данных по расписанию.
УСЛОВИЕ
-
Права администратора в Windows и в MS SQL;
-
Умение работать с СУБД;
-
Достаточный объем памяти в диске или на сетевой шаре;
-
Наличие тестовой копии боевой базы;
-
Простая модель у тестовой и полная модель восстановления у боевой базы;
-
Бесперебойная работа сервера и служб MS SQL — периодически проверять!
РЕШЕНИЕ:
Создание плана обслуживания:
-
Запустить MS SQL Server Management Studio и авторизоваться от имени администратора (обычно sa);
-
Перейти в «Управление» -> «План обслуживания», ПКМ и выбрать «Создать план обслуживания»;
-
Дать имя плану обслуживания и создать три вложенных плана: еженедельный полный бэкап, ежедневный разностный бэкап и ежечасный бэкап журнала транзакции.
Настройка плана полного бэкапа:
-
Полный бэкап рекомендуется создавать в каждый понедельник во внерабочее время;
-
Создать следующие задачи, которые должны быть соединены последовательно (скриншот прилагается):

-
В задаче «Проверка целостности базы данных» выбрать базы, оставить галочки только на «Включить индексы» и «Только физическое»;
-
В задаче «Перестроение индекса» выбрать базы, остальное оставить по умолчанию;
-
В задаче «Обновление статистики» выбрать базы, остальное так же по умолчанию;
-
В задаче «Выполнение инструкции T-SQL» написать запрос очистки кэша:
DBCC FREEPROCCACHE
-
В задаче «Резервное копирование базы данных» выбрать базы, во вкладке «Целевой объект» указать каталог хранения бэкапа и его расширение bak, во вкладке «Параметры» поставить галочку на «Проверять целостность резервной копии», остальное не трогать;
-
В задаче «Очистка после обслуживания» указать каталог, где будут находиться бэкапы с расширением bak, поставить галочку на «Удалять файлы на основе возраста во время выполнения задачи», затем указать время хранения бэкапов (рекомендуется 1 месяц).
Настройка плана разностного бэкапа:
-
Разностный бэкап рекомендуется создавать каждый день в конце рабочего дня (оптимальное время — 22:00);
-
Создать задачи резервного копирования и очистки после обслуживания, остальное не нужно;
-
Повторить шаги 10 (только указать другой каталог) и 11 (только поменять время хранения бэкапов, рекомендуется 1-2 недели).
Настройка плана бэкапа журнала транзакций:
-
Журнал транзакции рекомендуется создавать ежечасно с 9:00 до 21:00;
-
Повторить шаг 13;
-
Повторить шаги 10 (только расширение trn и другой каталог) и 11 (только с расширением trn и поменять время хранения бэкапов, рекомендуется 3 дня);
-
Сохраняем все.
РЕЗУЛЬТАТ
План обслуживания баз данных настроен. Остается лишь периодически следить за тем, что бэкапы создаются в указанных папках и удаляются оттуда спустя время.
ТИПОВЫЕ ОШИБКИ
❌ Проблема: бэкап не был создан после настройки плана обслуживания.
✅ Решение: проверить состояние службы MS SQL, объем диска и права доступа к целевой папке, иногда помогает перезапуск сервера.
❌ Проблема: разрастается журнал с расширением .ldf.
✅ Решение: если тестовая база — ПКМ на тестовой базе, оттуда «Задачи» -> «Сжать» -> «Файлы». Там выбрать тип файла «Журнал» и реорганизовать. Если боевая база — настроить вложенный план бэкапа журнала транзакций и участить его бэкапирование (через каждые полчаса, например).
---
**Связанные инструкции:** [Настроить резервное копирование баз через MS SQL на сетевую шару](http://localhost:10011/nastroit-rezervnoe-kopirovanie-baz-cherez-ms-sql-na-setevuyu-sharu)



