Резервное копирование и восстановление баз данных Microsoft SQL Server
Для защиты виртуализованных серверов Microsoft SQL Server вы можете сконфигурировать задание резервного копирования, которое будет не только создавать резервные копии на уровне образа, но и копировать журналы транзакций. Резервные копии на уровне образа будут играть роль точек восстановления. Копии журналов транзакций будут содержать данные обо всех транзакциях, которые были выполнены с момента последнего резервного копирования. В случае аварии вы сможете восстановить виртуальную машину, на которой работает Microsoft SQL Server, на нужную точку восстановления, а затем применить журнал транзакций, чтобы вернуть базу данных в нужное состояние.
Для создания задания такого типа необходимо создать обычное задание резервного копирования и указать в нем настройки для копирования журналов транзакций. В настройках указывается:
- как часто необходимо копировать журналы транзакций;
- каким образом журналы транзакций должны копироваться на целевое устройство хранения;
- как долго необходимо хранить журналы транзакций.
При включении режима копирования журналов транзакций Veeam Backup & Replication создает 2 задания, связанных друг с другом:
- обычное задание резервного копирования;
- вспомогательное задание, которое копирует журналы транзакций баз данных Microsoft SQL Server.
Обычное задание резервного копирования запускается по расписанию. Оно создает резервную копию на уровне образа и сохраняет резервную копию в репозитории. После успешного создания резервной копии Veeam Backup & Replication обрезает журналы транзакций на виртуализованном сервере Microsoft SQL Server.
Вспомогательное задание работает в непрерывном режиме. Задание копирует журналы транзакций, которые накапливаются между точками восстановления виртуальной машины, с заданной периодичностью — например, раз в 15 минут. В результате в репозитории сохраняются точки восстановления и набор журналов транзакций, которые «покрывают» интервалы между этими точками восстановления.
Журналы транзакций копируются в репозиторий и сохраняются в файлах формата VLB рядом с файлами резервных копий. Для копирования журналов транзакций Veeam Backup & Replication использует серверы доставки (shipping servers) — машины под управлением Microsoft Windows, добавленные в инфраструктуру резервного копирования. Вы можете самостоятельно указать, какие серверы доставки вы хотите использовать или позволить Veeam Backup & Replication самостоятельно выбрать нужные серверы для копирования журналов транзакций.
Для восстановления баз данных Veeam Backup & Replication предлагает отдельный инструмент — Veeam Explorer for Microsoft SQL. Veeam Explorer for Microsoft SQL полностью интегрирован с Veeam Backup & Replication. Инструмент устанавливается автоматически при развертывании Veeam Backup & Replication.
Veeam Explorer for Microsoft SQL предлагает ряд сценариев восстановления:
- восстановление Microsoft SQL Server на определенную точку или определенную транзакцию.
- восстановление Microsoft SQL Server на определенную точку или определенную транзакцию и экспорт в нужное местоположение.
Убедитесь, что для баз данных на Microsoft SQL Server используется модель полного восстановления (Full) или модель восстановления с неполным протоколированием (Bulk-logged). Если для базы данных используется простая модель восстановления (Simple), Veeam Backup & Replication не сможет обнаружить базы данных и обработать журналы транзакций.
- Сконфигурируйте задание резервного копирования для виртуальной машины, на которой установлен Microsoft SQL Server.
- На шаге мастера Guest Processing установите флаг Enable application-aware processing .
В разделе VM Guest OS credentials укажите данные учетной записи пользователя гостевой ОС виртуальной машины. Учетная запись должна иметь права sysadmin на Microsoft SQL Server. В противном случае Veeam Explorer для Microsoft SQL Server не сможет автоматически обнаружить базы данных Microsoft SQL Server в созданных резервных копиях.
- Нажмите Applications .
- Выберите в списке нужную виртуальную машину и нажмите Edit .
- Убедитесь, что на вкладке General в разделе Transaction logs выбрана опция Process transaction logs with this job .
- Перейдите на вкладку SQL .
- Выберите опцию Backup logs periodically .
- В поле Backup logs every <N> minutes укажите, как часто вы хотите копировать журналы транзакций с Microsoft SQL Server в репозиторий. По умолчанию, Veeam Backup & Replication запускает новый цикл копирования каждые 15 минут.
- В секции Retain log backups укажите, как долго вы хотите хранить журналы транзакций.
- Выберите опцию Until the corresponding image-level backup is deleted , если вы хотите хранить журналы до тех пор, пока предшествующая точка восстановления не будет удалена из цепочки резервных копий.
- Выберите опцию Keep only last … days , если вы хотите хранить журналы транзакций определенное количество дней. Укажите, какое количество дней вы хотите хранить журналы транзакций.
- В поле Log shipping servers оставьте выбранной опцию Automatic selection . Veeam Backup & Replication автоматически определит наименее загруженную машину под управлением Microsoft Windows в инфраструктуре резервного копирования и будет использовать ее для копирования журналов транзакций.
- На шаге Schedule установите флаг Run the job automatically . Если вы не установите эту опцию, задание резервного копирования не сможет автоматически копировать журналы транзакций в репозиторий.
- Сохраните настройки задания и запустите его. Veeam Backup & Replication создаст полную резервную копию виртуальной машины, на которой установлен Microsoft SQL Server.
- При включении режима копирования журналов транзакций создается 2 задания резервного копирования – основное и вспомогательное. Чтобы увидеть созданные задания, откройте представление Home и щелкните по узлу Last 24 hours в панели инструментов.
- Выполните какую-либо транзакцию в базе данных на виртуализованном сервере Microsoft SQL Server. Например, если вы используете тестовую базу данных, вы можете вручную запустить простой сценарий добавления записи или удаления записи в/из базы данных.
- Убедитесь, что интервал времени, который вы указали в поле Backup logs every <N> minutes , истек. По прошествии этого времени Veeam Backup & Replication запустит новый цикл копирования журналов транзакций.
Журналы транзакций будут скопированы и сохранены в файле формата VLB рядом с цепочкой резервных копий в репозитории.
- Откройте представление Backup & Replication .
- В иерархии объектов щелкните по узлу Backups .
- В рабочей области разверните задание резервного копирования, щелкните правой кнопкой мыши по виртуальной машине и выберите Restore application items > Microsoft SQL Server databases .
- Пройдите по шагам мастера Microsoft SQL Server Database Restore : выберите нужную точку восстановления и укажите причину восстановления базы данных. На последнем шаге мастера нажмите Finish .
Veeam Backup & Replication автоматически обнаружит базу данных в резервной копии и подсоединит ее к вспомогательному серверу Microsoft SQL Server. По умолчанию в роли вспомогательного сервера Microsoft SQL Server используется сервер, на котором развернута база даных Veeam Backup & Replication. Затем Veeam Backup & Replication запустит Veeam Explorer для Microsoft SQL и откроет в нем обнаруженную базу данных.
- Найдите нужную базу данных в панели слева, щелкните по ней и выберите Restore point-in-time state to <Microsoft SQL Server\Instance Name> .
- Veeam Backup & Replication запустит мастер восстановления баз данных. На шаге Specify restore point выберите Restore to a specific point in time . Чтобы выбрать состояние базы данных, перетащите бегунок в нужное место.
- Установите флаг Perform restore to the specific transaction и нажмите Next .
- На шаге Fine-tune the restore point выберите нужную транзакцию и нажмите Restore .
- Veeam Backup & Replication восстановит базу данных на выбранную транзакцию. После завершения процесса восстановления Veeam Explorer для Microsoft SQL Server покажет всплывающее сообщение с результатами операции восстановления.
Проверьте базу данных на виртуализованном сервере Microsoft SQL Server и убедитесь, что она восстановлена в требуемое состояние.