Резервное копирование данных
MS SQL Server предлагает следующие типы резервного копирования информации:
полная копия базы данных, которая является отправной точкой при восстановлении базы данных после сбоя, однако в зависимости от объема данных этот процесс может занимать много времени, поэтому не рекомендуется выполнять его слишком часто. Полная копия содержит все данные, содержащиеся в базе данных на момент окончания резервирования;
копия журнала транзакций, необходима для фиксирования всех изменений данных, произошедших в системе с момента последнего резервного копирования. Сама копия журнала содержит сведения о транзакциях и лишь только вместе с копией базы данных позволяет вернуться к состоянию, предшествующему сбою;
дифференциальная копия данных содержит изменения данных, произошедшие с момента последнего создания полной копии базы данных. При этом сохраняются только страницы подвергшиеся изменениям. Таким образом, для восстановления базы данных достаточно самой последней дифференциальной копии.
Для выполнения резервного копирования необходимо выбрать носитель, т.е. определить устройство, которое будет использоваться для создания копий. Для добавления устройства используется хранимая процедура:
sp_addumpdevice ‘тип_устройства’, ‘логическое_имя’, ‘физическое_имя’
Описание параметров:
тип_устройства – тип устройства резервного копирования. Допустимые значения: TAPE (магнитная лента), DISK (магнитный диск), Virtual_Device (виртуальное хранилище);
логическое_имя, физическое_имя – логическое и физическое имя устройства резервного копирования соответственно.
Для создания резервной копии базы данных, журнала транзакций, файлов и файловых групп необходимо воспользоваться командой:
BACKUP {LOG | DATABASE } имя_БД
[ FILE = ‘логическое_имя_файла’, ...]
[ FILEGROUP = ‘имя_группы’ ]
TO логическое_имя_устройства
[ WITH
[ DESCRIPTION = ‘комментарий’ ]
[ DIFFERENTIAL ]
[ EXPIREDATE = ‘дата’ ]
[ INIT | NOINIT ] ... ]
Описание параметров:
DIFFERENTIAL – создается дифференциальная копия базы данных;
EXPIREDATE – определяется дата, после которой резервная копия считается устаревшей и может быть перезаписана;
INIT | NOINIT – система осуществляет или нет инициализацию устройства.
Пример. Создадим устройство для резервирования:
sp_addumpdevice 'disk', 'backupdisk', 'e:\MYDB.bak'
Воспользуемся функцией BACKUP для выполнения резервного копирования:
BACKUP DATABASE MYDB TO backupdisk
Результат выполнения показан на рисунке
Достарыңызбен бөлісу: |