Опубликован: 11.12.2006 | Уровень: специалист | Доступ: свободно
Лекция 32:

Резервное копирование Microsoft SQL Server

Необязательные параметры

В табл. 32.1 приводится список дополнительных параметров, которые можно использовать в операторе BACKUP. Если какой-либо параметр доступен для резервного копирования только базы данных или только журнала транзакций, это исключение оговаривается.

Таблица 32.1. Необязательные параметры оператора BACKUP
Параметр Описание
BLOCKSIZE Этот параметр указывает размер физического блока в байтах
DESCRIPTION Этот параметр указывает текстовое описание набора резервного копирования. Его полезно использовать для поиска нужной резервной копии, с которой будет выполняться восстановление
DIFFERENTIAL Этот параметр указывает разностное резервное копирование. Его можно использовать только при наличии полной резервной копии базы данных
EXPIREDATE = дата RETAINDAYS = дни Параметр EXPIREDATE указывает дату, когда истекает срок действия данного набора резервного копирования (и когда его можно перезаписывать).
RETAINDAYS указывает количество дней, соответствующих сроку действия данного набора резервного копирования
PASSWORD = пароль Параметр PASSWORD позволяет вам задавать пароль для резервной копии, что повышает безопасность самой резервной копии
FORMAT | NOFORMAT Параметр FORMAT указывает, что заголовок носителя должен быть перезаписан, делая тем самым недействительными первоначальные данные на этом носителе. Параметр NOFORMAT указывает, что заголовок носителя не должен перезаписываться
INIT | NOINIT Параметр INIT указывает, что набор резервной копии должен находиться в первом файле на данном носителе, причем заголовок носителя остается без изменений, но все данные на этом носителе перезаписываются; иными словами, INIT указывает перезапись всего, чт.е. на ленте. Параметр NOINIT указывает, что данный набор резервной копии добавляется к содержимому носителя. Если вы повторно используете ленты, то вам нужно использовать этот параметр
MEDIADESCRIPTION = текст Это текстовое поле задает описание набора носителей
MEDIANAME= имя_носителя Указывает имя носителя
MEDIAPASSWORD = пароль С помощью этого параметра вы можете указывать пароль для набора носителей
NAME= имя_набора_резервной_копии Этот параметр позволяет вам задавать имя набора резервной копии
NOSKIP | SKIP Параметр NOSKIP указывает, что прежде чем перезаписывать наборы резервных копий на данном носителе, будут проверяться даты истечения срока действия соответствующих наборов резервных копий. Параметр SKIP отключает проверку этой даты
NO_TRUNCATE Этот параметр запрещает усечение журнала транзакций после создания резервной копии. Используется только для резервного копирования журнала транзакций
NOUNLOAD | UNLOAD Параметр NOUNLOAD указывает, что после завершения резервного копирования носитель не будет выгружаться из устройства (например, не будет извлекаться лента). Параметр UNLOAD указывает, что по окончании резервного копирования носитель будет выгружен
RESTART Этот параметр указывает SQL Server необходимость перезапуска резервного копирования, которое было прервано
STATS [ = процент ] Этот параметр указывает вывод сообщения после выполнения определенного процента резервного копирования. Его полезно использовать, если вы любите следить за ходом выполнения операций

Проследите за тем, что вы задали, – добавление резервной копии к существующим данным носителя или перезапись данных носителя, как это описано выше; выбранный вами вариант влияет на количество данных, которое можно разместить на ленте. При резервном копировании данных на уже используемое ленточное устройство без стирания этой ленты (или запрещая перезапись) вам может не хватить места на ленте. В режиме добавления программа резервного копирования будет использовать только пространство, оставшееся свободным до конца ленты.

Практические советы.
Использование оператора BACKUP

В этом разделе мы рассмотрим пару примеров использования оператора T-SQL BACKUP. Следующий оператор используется для резервного копирования файлов данных базы данных Example:

BACKUP DATABASE Example 
TO Backup_Dev_1, Backup_Dev_2 
WITH 
DESCRIPTION = "DB backup of example", 
STATS = 5 
GO

Здесь устройства резервного копирования – это Backup_Dev_1 и Backup_Dev_2, а сообщение о состоянии будет выводиться после выполнения очередных 5 процентов резервного копирования. Отметим, что в этом примере задано описание резервной копии.

Если вы будете проверять этот пример на небольшой базе данных, такой как Northwind, то вы не увидите сообщений с приращением по 5 процентов. Это будут приращения, например, в 7 процентов, 16 процентов и т.д. Дело в том, что программа резервного копирования читает и записывает за один раз более 5 процентов от объема всех данных такой базы данных. Для наборов данных большего размера за один раз будет записываться меньше 5 процентов данных и поэтому сообщения будут появляться ожидаемым образом.

Следующий оператор используется для резервного копирования журнала транзакций базы данных Example:

BACKUP LOG Example 
TO Backup_Dev_3, Backup_Dev_4 
WITH 
DESCRIPTION = "DB backup of example", 
STATS = 25 
GO

Здесь устройства резервного копирования – это Backup_Dev_3 и Backup_Dev_4, а сообщения о состоянии будут выводиться с интервалом в 25 процентов. В результирующем наборе будет представлен процент выполненных операций, а также результаты резервного копирования. Будет указано количество скопированных страниц, сколько времени длится резервное копирование и какова скорость (Мб/с).

Управление резервным копированием

Поскольку оператор T-SQL BACKUP не выполняется под управлением Enterprise Manager и, тем самым, не выполняется под управлением SQL Server Agent, вы не можете задать расписание этого задания в операторе BACKUP . Но вы можете задать расписание для оператора T-SQL BACKUP с помощью средств планирования заданий в SQL Server. После того как составлено расписание для задания, им можно управлять точно так же, как и заданиями резервного копирования в Enterprise Manager.

Светлана Красюк
Светлана Красюк
Россия, г.Кемерово ул.Весенняя д.21 кв.29, КузГТУ, 2003