Резервное копирование SQL базы 1С | MS SQL Server
Всем привет, на одном из вебинаров мы рассматривали тему администрирования файловой и SQL базы 1С. Теперь давайте немного разберемся с процессом резервного копирования, так как это одна из основных и важнейших функций системного администратора.
А конкретно разберем процесс резервного копирования базы данных 1С средствами Microsoft SQL Server
Регистрируйся на следующий вебинар по системному администрированию!
>> Подробнее о вебинаре <<
Для начала разберемся с основными понятиями резервного копирования в SQL Server. Здесь есть три типа резервного копирования:
♦ полное копирование базы данных – как следует из названия, это резервное копирование полностью базы данных;
♦ дифференциальная или разностная резервная копия– это создание копии, в которой хранятся только изменения, внесенные после создания полной резервной копии. Такие копии занимают меньше места, но для восстановления потребуется обе резервные копии, полная и дифференциальная. Я бы его назвал параллельное, так как резервные копии, согласно данной логики создаются как бы параллельно и не зависят друг от друга.
♦ резервное копирование протокола транзакций – в данном случае, резервная копия хранит только изменение внесенные с момента создания последней резервной копии. Если вы работали с Acronis, то у них такой способ называется инкрементная копия и логика последовательного создания копий.
В основном, на практике используют полное и журнал транзакций, так что их рассмотрим на практике.
Чтобы продемонстрировать логику работы системы резервного копирования, я буду создавать дополнительных пользователей в 1С при каждом создании разного типа копии, так мы сможем отслеживать, из какой копии мы восстановились, чтобы быть уверенным, что все работает правильно.
Создадим пользователя p1, чтобы понимать, что мы на этапе, когда у нас была только 1 полная резервная копия
Для начала рассмотрим вариант создания полной резервной копии (Пуск \ Microsoft SQL Server Management Studio 18 \ Логинимся \ Базы данных \ПКМ \ Задачи \ Создать резервную копию \ Тип архивной копии: Полная,
Тут еще такой момент, если у вас выбрана модель восстановления ПОЛНАЯ, то доступны все типы резервных копий, если ПРОСТАЯ, то только полная и разностная. Изменить это можно в База данных \ Свойства \ Параметры \ Модель восстановления: Полная
База данных: buh \ Тип архивной копии: Полная \ Компоненты архивной копии: База данных \ Назначение: Диск \ Путь к резервной копии: Добавить \ Место назначения: Имя файла \ D:\BACKUP\buh-sql\p1 \ ОК)
Если вы хотите дополнительно сохранить резервную копию в другом месте или на сетевом ресурсе, то указываем все места, где будем хранить резервную копию.
Создадим пользователя J1 для первой резервной копии журнала транзакций и т.д. J2, J3, J4
Восстановление резервной копии
Попробуем восстановить резервную копию (Microsoft SQL Server Management Studio 18 \ Логинимся \ Базы данных \ buh \ Задачи \ Восстановить \ Файлы и группы файлов \ Выбираем нужную копию J2 \ Параметры: Перезаписать существующую базу данных \ Состояние восстановления, если мы будем еще последовательно накатывать копии, то оставить базу данных в нерабочем состоянии, если нет, то оставить базу данных готовой к использованию \ Выгоняем пользователей \ ОК)
Если мы переместим файл полной резервной копии, то не получится восстановить, так как нет полной копии
Если уберем из цепочки одну инкрементную, то последнюю тоже не получится восстановить.
Настоятельно рекомендую поэкспериментировать с бэкапом и восстановлением с тестовой базой в виртуальной среде, чтобы убедиться, что все делаете правильно!
+ для надежности выполнить выгрузку базы данных через конфигуратор.
Конечно, все это ручные способы резервного копирования, которые подходят в основном для ситуаций, когда нужно выполнить обновление или внести изменения в базу. Однако, средствами SQL Server можно данный процесс автоматизировать. Но, об этом мы поговорим в следующем видео…