Резервные копии баз данных MS SQL Server могут быть нескольких видов: полные, дифференциальные и копии журналов транзакций (их содержимое меняется в зависимости от модели восстановления, в которой работает БД [7]). Выбор модели восстановления и стратегии резервного копирования зависит от предъявляемых к базе требований и является слишком объемной темой для обсуждения в рамках этой статьи. Поэтому в описываемом далее решении рассматривается только создание полных копий баз данных, чего достаточно в большинстве случаев.

Базовая логика сценария аналогична предыдущим решениям для резервного копирования виртуальных машин Hyper-V и работы с Windows Backup, поэтому в статье рассматривают только подробности, касающиеся работы с MS SQL Server с помощью PowerShell. Описываемый далее скрипт для автоматического резервного копирования баз данных MS SQL Server поддерживает полноценные и экспресс-редакции MS SQL Server 2005 и выше на любых ОС, где доступны PowerShell 2.0 и SQL Server Management Objects.

Список основных возможностей:

> создание на локальных или сетевых дисках резервных копий БД и управление их ротацией с настраиваемыми параметрами;

> ведение подробного журнала операций;

> отправка отчетов по электронной почте;

> легкая настройка и переносимость.

Поддерживаются следующие варианты резервного копирования:

> все базы данных;

> только системные БД;

> только пользовательские БД;

> базы данных из файла-списка.

Резервные копии сжимаются одним из алгоритмов на выбор (zip64, bzip2, gzip) с поддержкой указания степени компрессии.

Полную версию скрипта, снабженную подробными комментариями, вы можете скачать в дополнительных материалах к номеру на сайте журнала [8].

Предыдущая статьяПараметры командной строки
Следующая статьяMicrosoft SQL Server