Когда-то мне доводилось довольно много работать с Microsoft SQL Server. Администратором баз данных я себя не считал, но в приложениях этого типа кое-что смыслил. Поскольку я работаю в Veeam, то всегда с удовольствием рассказываю связанную с нашей компанией историю об использовании SQL Server в качестве критически важного приложения, которому необходимы лучшие средства Availability. Вот почему меня особенно заинтересовал пакет Veeam Explorer for Microsoft SQL Server, вошедший в систему Veeam Backup & Replication.

В нем сочетаются функциональные возможности признанных средств обработки изображений, учитывающих особенности используемых приложений, и специализированный инструмент восстановления баз данных, реализованный в Veeam Explorer for Microsoft SQL Server. К тому же Veeam Backup & Replication и Veeam Agent for Microsoft Windows позволяют получать резервный образ всей системы.

Возможно, тем, кто не является администратором баз данных, разобраться в материях, касающихся SQL Server, будет не так просто. Чтобы облегчить таким пользователям задачу, я составил несколько сценариев, которые послужат для них подспорьем в овладении данным типом взаимодействия с SQL Server. Три сценария (и удаленный сценарий) я выложил на сайте Veeam Github (https://github.com/VeeamHub/SQLScripts-VESQL). Для использования сценария требуется только накопитель S:\ (путь можно модифицировать). Вам нужно создать тестовую базу данных и ввести задание для агента SQL Server Agent. Этот агент в автоматическом режиме выполнит несколько хранимых процедур, которые в свою очередь будут вставлять и удалять произвольные данные. В результате будет создана база данных SQLGREENDREAM.

Выполнив три указанных сценария с целью создания базы данных, реализуйте функцию генератора случайных чисел. Составьте график, в соответствии с которым будут сгенерированы произвольные данные (две записи) и удалена одна запись. Модуль SQL Server Transaction Log Backup отобразит процесс резервирования новой базы данных после следующего сеанса инкрементного копирования, как показано на экране 1.

Информация о процессе резервного копирования
Экран 1. Информация о процессе резервного копирования 

По истечении интервала, в течение которого выполняется задание агента SQL Server Agent (12 минут для сценария из GitHub) и интервала для выполнения задания Veeam Backup Job вы можете в программе Veeam Explorer for Microsoft SQL Server выбрать наиболее подходящую точку восстановления. Эта операция выбора, которая дает возможность восстановить базу данных на момент совершения определенной транзакции, представлена на экране 2.

Восстановление базы данных
Экран 2. Восстановление базы данных

Когда задание агента SQL Server Agent будет выполнено (12 минут по сценарию GitHub) и после того, как интервал резервирования Veeam Backup пройдет через точку запуска тестовых данных, восстановление базы данных SQLGREENDREAM к состоянию на момент совершения заданной транзакции станет видимым управляемому сценарию в репозитории GitHub. Тогда пользователь сможет увидеть, как сценарий подобным образом обрабатывает упомянутые записи; при этом две записи добавляются и одна удаляется. Эти операции выполняются агентом SQL Server Agent (экран 3).

Процесс восстановления
Экран 3. Процесс восстановления

С этого момента операции восстановления могут быть выполнены надежно, и вы увидите, как базы данных SQL восстанавливаются с помощью средств Veeam. Используя демонстрационные сценарии из репозитория GitHub, вы научитесь действовать увереннее в ситуациях, когда вам нужно будет решать задачи восстановления вне привычных условий. Если вы пользуетесь версией Veeam Backup Free Edition, а SQL Server в вашем случае — это резервируемая виртуальная машина, у вас сохраняется возможность использования Veeam Explorer for Microsoft SQL Server для приведения базы данных в состояние на момент получения резервного образа. Правда, при этом вы не сможете выполнить «откат» по цепочке транзакций. Кстати, программу NFR можно задействовать и для выполнения полнофункциональной процедуры установки.