Поделиться через


Создание резервной копии журнала транзакций (SQL Server)

В этом разделе описывается резервное копирование журнала транзакций в SQL Server 2014 с помощью SQL Server Management Studio, Transact-SQL или PowerShell.

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

Перед началом

Ограничения

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

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

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

  • По умолчанию каждая успешная операция резервного копирования добавляет запись в журнал ошибок служб 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. Убедитесь в том, что используется либо модель восстановления FULL , либо BULK_LOGGED.

  6. Выберите Журнал транзакций в списке Тип резервного копирования.

  7. Также можно выбрать вариант Резервная копия только для копирования , чтобы создать резервную копию только для копирования. Резервная копия только для копирования — это резервная копия SQL Server, которая не зависит от обычной последовательности создания традиционных резервных копий SQL Server. Дополнительные сведения см. в статье Резервные копии только для копирования (SQL Server).

    Примечание

    Если выбран параметр Разностная , то резервную копию только для копирования создать не удастся.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  15. В разделе Журнал транзакций можно установить следующие флажки.

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

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

      Резервное копирование заключительного фрагмента журнала выполняется после сбоя, чтобы предотвратить потерю сделанной работы. Резервное копирование активного журнала (резервное копирование заключительного фрагмента журнала) следует выполнять как после сбоя, так и перед началом восстановления базы данных, а также при сбое базы данных-получателя. Выбор этого параметра равносилен применению параметра NORECOVERY в инструкции BACKUP LOG языка Transact-SQL. Дополнительные сведения о резервных копиях заключительного фрагмента журнала см. в разделе Резервные копии заключительного фрагмента журнала (SQL Server).

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

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

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

Шифрование

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

  • AES 128

  • AES 192

  • AES 256

  • Triple DES

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

Создание резервной копии журнала транзакций

  1. Выполните инструкцию BACKUP LOG для создания резервной копии журнала транзакций, указав следующее:

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

    • Устройство резервного копирования, на которое записывается резервная копия журнала транзакций.

Пример (Transact-SQL)

Важно!

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

В этом примере создается резервная копия журнала транзакций для базы данных AdventureWorks2012 на созданном ранее устройстве резервного копирования, имеющая имя MyAdvWorks_FullRM_log1.

BACKUP LOG AdventureWorks2012  
   TO MyAdvWorks_FullRM_log1;  
GO  

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

Используйте командлет Backup-SqlDatabase и укажите Log в качестве значения параметра -BackupAction.

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

```powershell
Backup-SqlDatabase -ServerInstance Computer\Instance -Database MyDB -BackupAction Log  
```  

Сведения о настройке и использовании поставщика SQL Server PowerShell см. в статье Поставщик SQL Server PowerShell.

Связанные задачи

См. также:

BACKUP (Transact-SQL)
Применение резервных копий журналов транзакций (SQL Server)
Планы обслуживания
полные резервные копии файлов (SQL Server)