Создание резервных копий файлов и файловых групп (SQL Server)

В этом разделе описывается создание резервной копии файлов и файловых групп в SQL Server 2012 с помощью среды Среда SQL Server Management Studio, Transact-SQL или PowerShell. Если размер базы данных и требования по производительности делают полное резервное копирование базы данных нецелесообразным, можно создать резервную копию файлов. Резервная копия файлов содержит данные одного или нескольких файлов или файловых групп. Дополнительные сведения о резервных копиях файлов см. в разделах полные резервные копии файлов (SQL Server) и Разностные резервные копии (SQL Server).

В этом разделе

  • Перед началом работы выполните следующие действия.

    Ограничения

    Рекомендации

    Безопасность

  • Создание резервных копий файлов и файловых групп с помощью следующих средств:

    SQL Server Management Studio

    Transact-SQL

    PowerShell

Перед началом работы:

Ограничения

  • Инструкция BACKUP не разрешена в явных и неявных транзакциях.

  • В простой модели восстановления резервные копии файлов для чтения и записи должны создаваться вместе. Это помогает обеспечить восстановление базы данных до согласованного момента времени. Вместо того чтобы указывать каждый файл или файловую группу для чтения и записи, воспользуйтесь параметром READ_WRITE_FILEGROUPS. Этот параметр создает резервные копии всех файловых групп, доступных для чтения и записи, в базе данных. С помощью параметра READ_WRITE_FILEGROUPS создаются так называемые частичные резервные копии. Дополнительные сведения см. в разделе Частичные резервные копии (SQL Server).

  • Дополнительные сведения об ограничениях этой возможности см. в разделе Общие сведения о резервном копировании (SQL Server).

Рекомендации

  • По умолчанию каждая успешная операция резервного копирования добавляет запись в журнал ошибок SQL Server и в журнал системных событий. Если создание резервной копии журналов производится очень часто, сообщения об успешном завершении накапливаются очень быстро. Это приводит к увеличению журналов ошибок, затрудняя поиск других сообщений. Если работа существующих скриптов не зависит от этих записей, их вы можете отключить с помощью флага трассировки 3226. Дополнительные сведения см. в разделе Флаги трассировки (Transact-SQL).

Безопасность

Разрешения

Разрешения BACKUP DATABASE и BACKUP LOG предоставлены по умолчанию членам предопределенной роли сервера sysadmin, а также членам предопределенных ролей базы данных db_owner и db_backupoperator.

Проблемы, связанные с владельцем и разрешениями у физических файлов на устройстве резервного копирования, могут помешать операции резервного копирования. SQL Server должен иметь возможность считывать и записывать данные на устройстве; учетная запись, от имени которой выполняется служба SQL Server, должна иметь разрешения на запись. Однако процедура sp_addumpdevice, добавляющая запись для устройства резервного копирования в системную таблицу, не проверяет разрешения на доступ к файлу. Проблемы физического файла устройства резервного копирования могут не проявляться до момента доступа к физическому ресурсу во время операции резервного копирования или восстановления.

Значок стрелки, используемый со ссылкой «В начало»[В начало]

Использование среды SQL Server Management Studio

Создание резервных копий файлов и файловых групп

  1. После подключения к соответствующему экземпляру компонента Компонент SQL Server Database Engine в обозревателе объектов разверните дерево сервера, щелкнув его имя.

  2. Раскройте узел Базы данных и в зависимости от типа восстанавливаемой базы данных выберите пользовательскую базу данных или раскройте узел Системные базы данных и выберите системную базу данных.

  3. Щелкните правой кнопкой мыши базу данных, выберите пункт Задачи, а затем выберите команду Создать резервную копию. Откроется диалоговое окно Резервное копирование базы данных.

  4. В списке База данных проверьте имя базы данных. При необходимости можно выбрать другую базу данных из списка.

  5. В списке Тип резервной копии выберите Полная или Разностная.

  6. Для параметра Компонент резервного копирования выберите Файл и файловые группы.

  7. В диалоговом окне Выбор файлов и файловых групп выберите файлы и файловые группы, резервные копии которых необходимо создать. Можно выбрать один или несколько отдельных файлов или установить флажок для файловой группы, чтобы автоматически выбрать все файлы в этой группе.

  8. Оставьте имя резервного набора данных, предложенное по умолчанию в текстовом поле Имя, или введите другое имя резервного набора данных.

  9. При необходимости можно ввести описание резервного набора данных в текстовом поле Описание.

  10. Укажите, когда истекает срок действия резервного набора данных:

    • Чтобы срок действия резервного набора данных истекал спустя определенное число дней, выберите После (этот параметр используется по умолчанию). Затем укажите число дней после создания набора, когда срок действия резервного набора данных истекает. Это значение может быть задано в диапазоне от 0 до 99999 дней 0 означает, что срок действия резервного набора данных не ограничен.

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

    • Чтобы указать дату истечения срока действия резервного набора данных, выберите пункт На, и введите дату истечения срока действия резервного набора данных.

  11. Чтобы выбрать тип назначения резервной копии, выберите пункт Диск или Лента. Чтобы выбрать пути к 64 (или менее) дискам или ленточным накопителям, содержащим один набор носителей, нажмите кнопку Добавить. Выбранные пути отображаются в списке Сохранить на.

    ПримечаниеПримечание

    Чтобы удалить носитель резервной копии, выберите его и нажмите кнопку Удалить. Чтобы просмотреть содержимое носителя резервной копии, выберите его и щелкните Содержимое.

  12. Чтобы просмотреть или выбрать дополнительные параметры, нажмите кнопку Параметры на панели Выбор страницы.

  13. Выберите параметр Переписать носитель, указав один из следующих вариантов:

    • Создать резервную копию в существующем наборе носителей

      Для этого параметра выберите вариант Добавить в существующий резервный набор данных или Перезаписать все существующие резервные наборы данных. Сведения о создании резервной копии к существующему набору носителей см. в разделе Наборы носителей, семейства носителей и резервные наборы данных (SQL Server).

      При необходимости выберите Проверить имя набора носителей и срок действия резервного набора данных, чтобы при выполнении операции резервного копирования производилась проверка срока действия набора носителей и резервного набора данных.

      При необходимости введите имя в текстовое поле Имя набора носителей. Если имя не указано, создается набор носителей с пустым именем. Если имя набора носителей указано, то для носителя (ленточного или дискового) проверяется совпадение введенного и существующего имени.

      Если оставить имя носителя пустым и установить рядом с ним флажок для проверки, имя носителя при успешном завершении также станет пустым.

    • Создать резервную копию в новом наборе носителей и удалить все существующие резервные наборы данных

      Для этого параметра введите имя в текстовое поле Имя нового набора носителей и при необходимости введите описание набора носителей в поле Описание нового набора носителей. Дополнительные сведения о создании нового набора носителей см. в разделе Наборы носителей, семейства носителей и резервные наборы данных (SQL Server).

  14. В разделе Надежность можно также установить флажки:

  15. При резервном копировании на накопитель на магнитной ленте (как указано в разделе Назначение страницы Общие) активен параметр Выгрузить ленту после резервного копирования. Выбор этого параметра активирует параметр Перемотать ленту перед выгрузкой.

    ПримечаниеПримечание

    Параметры в разделе Журнал транзакций доступны, только если создается резервная копия журнала транзакций (это можно указать в разделе Тип резервной копии вкладки Общие).

  16. SQL Server 2008 Enterprise и более поздние версии поддерживают сжатие резервных копий. По умолчанию сжатие резервных копий зависит от значения параметра конфигурации сервера backup-compression default. Однако, независимо от текущего значения по умолчанию на уровне сервера, можно сжать резервные копии, установив параметр Сжимать резервные копии, и отказаться от сжатия резервных копий, установив параметр Не сжимать резервные копии.

    Просмотр текущих значений параметров по умолчанию для сжатия резервных копий

Значок стрелки, используемый со ссылкой «В начало»[В начало]

Использование Transact-SQL

Создание резервных копий файлов и файловых групп

  1. Чтобы создать резервную копию файла или файловой группы, используйте инструкцию BACKUP DATABASE <файл_или_файловая_группа>. В этой инструкции должны быть указаны по меньшей мере следующие данные:

    • имя базы данных;

    • предложение FILE или FILEGROUP для каждого резервируемого файла или группы файлов;

    • устройство резервного копирования, на которое будет записываться полная резервная копия.

    Базовая структура синтаксиса Transact-SQL для резервного копирования файлов:

    BACKUP DATABASE database

    { FILE = logical_file_name | FILEGROUP = logical_filegroup_name } [ ,...f ]

    TO backup_device [ ,...n ]

    [ WITH with_options [ ,...o ] ] ;

    Параметр

    Описание

    database

    База данных, журнал транзакций и часть данных или все данные, которые подвергаются резервному копированию.

    FILE = logical_file_name

    Указывает логическое имя файла, который необходимо включить в резервную копию.

    FILEGROUP = logical_filegroup_name

    Указывает логическое имя файловой группы, которую необходимо включить в резервную копию. В простой модели восстановления создание резервной копии файловой группы разрешено лишь для файловых групп, доступных только для чтения.

    [ ,...f ]

    Заполнитель, указывающий на то, что могут быть указаны несколько файлов или файловых групп. Количество файлов или файловых групп не ограничено.

    backup_device [ ,...n ]

    Указывает список от 1 до 64 устройств резервного копирования, используемых для создания резервной копии. Можно указать как физическое устройство резервного копирования, так и соответствующее логическое устройство, если оно уже определено. Для указания физического устройства резервного копирования используйте параметр DISK или TAPE.

    { DISK | TAPE } = physical_backup_device_name

    Дополнительные сведения см. в разделе Устройства резервного копирования (SQL Server).

    WITH with_options [ ,...o ]

    При необходимости указывает один или более дополнительных параметров, например DIFFERENTIAL.

    ПримечаниеПримечание

    Основой для разностного резервного копирования файлов служит полное резервное копирование. Дополнительные сведения см. в разделе Создание разностной резервной копии базы данных (SQL Server).

  2. В рамках модели полного восстановления следует создать также резервную копию журнала. Чтобы использовать полный набор полных резервных копий файлов для восстановления базы данных, необходимо иметь достаточное количество резервных копий журнала, чтобы охватить все резервные копии файлов от начала резервной копии первого файла. Дополнительные сведения см. в разделе Создание резервной копии журнала транзакций (SQL Server).

Примеры (Transact-SQL)

В следующих примерах описано резервное копирование одного или нескольких файлов из вторичных файловых групп в базе данных Sales. База данных использует модель полного восстановления и содержит следующие вторичные файловые группы.

  • Файловая группа с именем SalesGroup1, содержащая файлы SGrp1Fi1 и SGrp1Fi2.

  • Файловая группа с именем SalesGroup2, содержащая файлы SGrp2Fi1 и SGrp2Fi2.

А.Создание резервной копии двух файлов

В следующем примере создается разностная резервная копия только файла SGrp1Fi2 из группы SalesGroup1 и файла SGrp2Fi2 из группы SalesGroup2.

--Backup the files in the SalesGroup1 secondary filegroup.
BACKUP DATABASE Sales
   FILE = 'SGrp1Fi2', 
   FILE = 'SGrp2Fi2' 
   TO DISK = 'G:\SQL Server Backups\Sales\SalesGroup1.bck';
GO

Б.Создание полной резервной копии вторичных файловых групп

В следующем примере создается полная резервная копия каждого файла в обеих вторичных файловых группах.

--Back up the files in SalesGroup1.
BACKUP DATABASE Sales
   FILEGROUP = 'SalesGroup1',
   FILEGROUP = 'SalesGroup2'
   TO DISK = 'C:\MySQLServer\Backups\Sales\SalesFiles.bck';
GO

В.Создание разностной резервной копии файлов вторичных файловых групп

В следующем примере создается разностная резервная копия каждого файла в обеих вторичных файловых группах.

--Back up the files in SalesGroup1.
BACKUP DATABASE Sales
   FILEGROUP = 'SalesGroup1',
   FILEGROUP = 'SalesGroup2'
   TO DISK = 'C:\MySQLServer\Backups\Sales\SalesFiles.bck'
   WITH 
      DIFFERENTIAL;
GO

Значок стрелки, используемый со ссылкой «В начало»[В начало]

Использование PowerShell

  1. Используйте командлет Backup-SqlDatabase и укажите Files в качестве значения параметра -BackupAction. Также укажите один из следующих параметров:

    • Чтобы создать резервную копию определенного файла, укажите параметр -DatabaseFile String, где String ― это одни или несколько файлов базы данных для резервного копирования.

    • Чтобы создать резервную копию всех файлов из заданной файловой группы, укажите параметр -DatabaseFileGroup String, где String ― это одна или несколько групп файлов базы данных для резервного копирования.

    В следующем примере создается полная резервная копия каждого файла из вторичных файловых групп «FileGroup1» и «FileGroup2» базы данных MyDB. Резервные копии создаются в расположении резервных копий по умолчанию экземпляра сервера Computer\Instance.

    --Enter this command at the PowerShell command prompt, C:\PS>
    Backup-SqlDatabase -ServerInstance Computer\Instance -Database MyDB -BackupAction Files -DatabaseFileGroup "FileGroup1","FileGroup2"
    

Настройка и использование поставщика SQL Server PowerShell

Значок стрелки, используемый со ссылкой «В начало»[В начало]

См. также

Справочник

BACKUP (Transact-SQL)

RESTORE (Transact-SQL)

Резервное копирование базы данных (страница «Общие»)

Резервное копирование базы данных (страница «Параметры»)

Основные понятия

Общие сведения о резервном копировании (SQL Server)

Журнал и сведения о заголовке резервной копии (SQL Server)

полные резервные копии файлов (SQL Server)

Разностные резервные копии (SQL Server)

Файлы из резервных копий (модель полного восстановления)

Восстановления файлов (простая модель восстановления)