Создание резервной копии журнала транзакцийBack Up a Transaction Log

Применимо к:Applies to: даSQL ServerSQL Server (все поддерживаемые версии) yesSQL ServerSQL Server (all supported versions) Применимо к:Applies to: даSQL ServerSQL Server (все поддерживаемые версии) yesSQL ServerSQL Server (all supported versions)

В этом разделе описано, как создать резервную копию журнала транзакций в SQL Server 2019 (15.x)SQL Server 2019 (15.x) с помощью среды SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQLили PowerShell.This topic describes how to back up a transaction log in SQL Server 2019 (15.x)SQL Server 2019 (15.x) by using SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQL, or PowerShell.

Перед началомBefore You Begin

ОграниченияLimitations and restrictions

Инструкция BACKUP не разрешена в явных и неявных транзакциях.The BACKUP statement is not allowed in an explicit or implicit transaction. Явными транзакциями являются транзакции, для которых явно назначаются запуск и остановка.An explicit transaction is one in which you explicitly define both the start and end of the transaction.

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

  • Если в базе данных используется полная модель восстановления или модель восстановления с неполным протоколированием, то необходимо регулярно создавать резервную копию журнала транзакций, чтобы защитить данные и предотвратить переполнение журнала транзакций.If a database uses either the full or bulk-logged recovery model, you must back up the transaction log regularly enough to protect your data, and to prevent the transaction log from filling. При этом журнал усекается и поддерживает восстановление базы данных на определенный момент времени.This truncates the log and supports restoring the database to a specific point in time.

  • По умолчанию каждая успешная операция резервного копирования добавляет запись в журнал ошибок служб SQL ServerSQL Server и в журнал системных событий.By default, every successful backup operation adds an entry in the SQL ServerSQL Server error log and in the system event log. Если создание резервной копии журналов производится очень часто, сообщения об успешном завершении накапливаются очень быстро. Это приводит к увеличению журналов ошибок, затрудняя поиск других сообщений.If you back up the log frequently, these success messages accumulate quickly, resulting in huge error logs, making finding other messages difficult. Если работа существующих скриптов не зависит от этих записей, то их можно отключить с помощью флага трассировки 3226. См. статью Флаги трассировки (Transact-SQL).In such cases you can suppress these log entries by using trace flag 3226, if none of your scripts depend on those entries, see Trace Flags (Transact-SQL).

PermissionsPermissions

Нужные разрешения BACKUP DATABASE и BACKUP LOG назначаются по умолчанию членам предопределенной роли сервера sysadmin и предопределенным ролям базы данных db_owner и db_backupoperator.The BACKUP DATABASE and BACKUP LOG permissions needed are granted by default to members of the sysadmin fixed server role, and the db_owner and db_backupoperator fixed database roles. Перед началом убедитесь в наличии необходимых разрешений.Check for the correct permissions before you begin.

Проблемы, связанные с владельцем и разрешениями у физических файлов на устройстве резервного копирования, могут помешать операции резервного копирования.Ownership and permission problems on the backup device's physical file can interfere with a backup operation. SQL ServerSQL Server должен иметь возможность считывать и записывать данные на устройстве; учетная запись, от имени которой выполняется служба SQL ServerSQL Server , должна иметь разрешения на запись.must be able to read and write to the device; the account under which the SQL ServerSQL Server service runs must have write permissions. Однако процедура sp_addumpdevice, добавляющая запись для устройства резервного копирования в системные таблицы, не проверяет разрешения на доступ к файлу.However, sp_addumpdevice, which adds an entry for a backup device in the system tables, does not check file access permissions. Проблемы доступа к физическому файлу устройства резервного копирования могут не проявляться до обращения к физическому ресурсу при попытке резервного копирования или восстановления.Permissions problems on the backup device's physical file may not become obvious to you until you attempt to access the physical resource when you try to backup or restore. Поэтому обязательно убедитесь в наличии необходимых разрешений, прежде чем начать.So again, check permissions before you begin.

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

  1. После подключения к соответствующему экземпляру компонента Компонент SQL Server Database EngineSQL Server Database Engineв обозревателе объектов разверните дерево сервера, щелкнув его имя.After connecting to the appropriate instance of the Компонент SQL Server Database EngineSQL Server Database Engine, in Object Explorer, click the server name to expand the server tree.

  2. Раскройте узел Базы данных и в зависимости от типа восстанавливаемой базы данных выберите пользовательскую базу данных или раскройте узел Системные базы данных и выберите системную базу данных.Expand Databases, and, depending on the database, either select a user database or expand System Databases and select a system database.

  3. Щелкните правой кнопкой мыши базу данных, выберите пункт Задачи, а затем команду Создать резервную копию.Right-click the database, point to Tasks, and then click Back Up. Откроется диалоговое окно Резервное копирование базы данных .The Back Up Database dialog box appears.

  4. В списке База данных проверьте имя базы данных.In the Database list box, verify the database name. При необходимости можно выбрать другую базу данных из списка.You can optionally select a different database from the list.

  5. Убедитесь в том, что используется либо модель восстановления FULL , либо BULK_LOGGED.Verify that the recovery model is either FULL or BULK_LOGGED.

  6. Выберите Журнал транзакций в списке Тип резервного копирования.In the Backup type list box, select Transaction Log.

  7. (Необязательно) Выберите вариант Копировать только резервные копии, чтобы создать резервную копию только для копирования.(optional) Select Copy Only Backup to create a copy-only backup. Резервная копия только для копирования — это резервная копия SQL ServerSQL Server, которая не зависит от последовательности создания традиционных резервных копий SQL ServerSQL Server. См. статью Резервные копии только для копирования (SQL Server).A copy-only backup is a SQL ServerSQL Server backup that is independent of the sequence of conventional SQL ServerSQL Server backups, see Copy-Only Backups (SQL Server).

    Примечание

    Если выбран параметр Разностная , то резервную копию только для копирования создать не удастся.When the Differential option is selected, you cannot create a copy-only backup.

  8. Оставьте имя резервного набора данных, предложенное по умолчанию в текстовом поле Имя , или введите другое имя резервного набора данных.Either accept the default backup set name suggested in the Name text box, or enter a different name for the backup set.

  9. (Необязательно) В текстовом поле Описание введите описание резервного набора данных.(optional) In the Description text box, enter a description of the backup set.

  10. Укажите, когда истекает срок действия резервного набора данных.Specify when the backup set will expire:

    • Чтобы задать срок действия резервного набора данных, выберите пункт После (параметр по умолчанию) и введите срок действия набора в днях с момента его создания.To have the backup set expire after a specific number of days, click After (the default option), and enter the number of days after set creation that the set will expire. Это значение может быть задано в диапазоне от 0 до 99 999 дней. Значение 0 означает, что срок действия резервного набора данных не ограничен.This value can be from 0 to 99999 days; a value of 0 days means that the backup set will never expire.

      Значение по умолчанию задается в параметре Срок хранения носителей резервных копий по умолчанию (дней) диалогового окна Свойства сервера (страница Параметры базы данных ).The default value is set in the Default backup media retention (in days) option of the Server Properties dialog box (Database Settings page). Для этого щелкните правой кнопкой мыши имя сервера в обозревателе объектов и выберите его свойства, затем страницу Параметры базы данных .To access this dialog box, right-click the server name in Object Explorer and select properties; then select the Database Settings page.

    • Чтобы указать дату истечения срока действия резервного набора данных, выберите пункт На и введите дату истечения срока действия резервного набора данных.To have the backup set expire on a specific date, click On, and enter the date on which the set will expire.

  11. Чтобы выбрать тип назначения резервной копии, выберите пункт Диск, URL-адрес или Лента.Choose the type of backup destination by clicking Disk, URL or Tape. Чтобы выбрать пути к 64 (или менее) дискам или накопителям на магнитной ленте, содержащим один набор носителей, нажмите кнопку Добавить.To select the paths of up to 64 disk or tape drives containing a single media set, click Add. Выбранные пути отображаются в списке Создать резервную копию в .The selected paths are displayed in the Backup to list box.

    Чтобы удалить носитель резервной копии, выберите его и нажмите кнопку Удалить.To remove a backup destination, select it and click Remove. Чтобы просмотреть содержимое носителя резервной копии, выберите его и щелкните Содержимое.To view the contents of a backup destination, select it and click Contents.

  12. Чтобы просмотреть или выбрать дополнительные параметры, нажмите кнопку Параметры на панели Выбор страницы .To view or select the advanced options, click Options in the Select a page pane.

  13. Выберите параметр Переписать носитель , указав один из следующих вариантов:Select an Overwrite Media option, by clicking one of the following:

    • Создать резервную копию в существующем наборе носителейBack up to the existing media set

      Для этого параметра выберите вариант Добавить в существующий резервный набор данных или Перезаписать все существующие резервные наборы данных. См. статью Наборы носителей, семейства носителей и резервные наборы данных (SQL Server).For this option, click either Append to the existing backup set or Overwrite all existing backup sets, see Media Sets, Media Families, and Backup Sets (SQL Server).

      • (Необязательно) Выберите Проверить имя набора носителей и срок действия резервного набора данных, чтобы при выполнении операции резервного копирования проверялся срок действия набора носителей и резервного набора данных.(optional) Select Check media set name and backup set expiration to cause the backup operation to verify the date and time at which the media set and backup set expire.

      • (Необязательно) Введите имя в текстовом поле Имя набора носителей.(optional) Enter a name in the Media set name text box. Если имя не указано, создается набор носителей с пустым именем.If no name is specified, a media set with a blank name is created. Если имя набора носителей указано, то для носителя (ленточного или дискового) проверяется совпадение введенного и существующего имени.If you specify a media set name, the media (tape or disk) is checked to see whether the actual name matches the name you enter here.

      Если оставить имя носителя пустым и установить рядом с ним флажок для проверки, имя носителя при успешном завершении также станет пустым.If you leave the media name blank and check the box to check it against the media, success will equal the media name on the media also being blank.

    • Создать резервную копию в новом наборе носителей и удалить все существующие резервные наборы данныхBack up to a new media set, and erase all existing backup sets

      Для этого параметра введите имя в текстовом поле Имя нового набора носителей и при необходимости введите описание набора носителей в текстовом поле Описание нового набора носителей. См. статью Наборы носителей, семейства носителей и резервные наборы данных (SQL Server).For this option, enter a name in the New media set name text box, and, optionally, describe the media set in the New media set description text box, see Media Sets, Media Families, and Backup Sets (SQL Server).

  14. В разделе Надежность можно установить следующие флажки.In the Reliability section, optionally, check:

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

    • Для повседневного резервного копирования журналов оставьте вариант по умолчанию Обрезать журнал транзакций путем удаления неактивных записей.For routine log backups, keep the default selection, Truncate the transaction log by removing inactive entries.

    • Для создания резервной копии заключительного фрагмента журнала (активного журнала) включите параметр Выполнять резервное копирование заключительного фрагмента журнала, оставляя базу данных в состоянии восстановления.To back up the tail of the log (the active log), check Back up the tail of the log, and leave database in the restoring state.

      Резервное копирование заключительного фрагмента журнала выполняется после сбоя, чтобы предотвратить потерю сделанной работы.A tail-log backup is taken after a failure to back up the tail of the log in order to prevent work loss. Резервное копирование активного журнала (резервное копирование заключительного фрагмента журнала) следует выполнять как после сбоя, так и перед началом восстановления базы данных, а также при сбое базы данных-получателя.Back up the active log (a tail-log backup) both after a failure, before beginning to restore the database, or when failing over to a secondary database. Выбор этого параметра равносилен применению параметра NORECOVERY в инструкции BACKUP LOG языка Transact-SQL.Selecting this option is equivalent to specifying the NORECOVERY option in the BACKUP LOG statement of Transact-SQL.

      Дополнительные сведения о резервных копиях заключительного фрагмента журнала см. в разделе Резервные копии заключительного фрагмента журнала (SQL Server).For more information about tail-log backups, see Tail-Log Backups (SQL Server).

  16. При резервном копировании на накопитель на магнитной ленте (как указано в разделе Назначение страницы Общие ) активен параметр Выгрузить ленту после резервного копирования .If you are backing up to a tape drive (as specified in the Destination section of the General page), the Unload the tape after backup option is active. Щелкните этот параметр, чтобы активировать параметр Перемотать ленту перед выгрузкой .Clicking this option activates the Rewind the tape before unloading option.

  17. SQL Server 2008 EnterpriseSQL Server 2008 Enterprise и более поздние версии поддерживают сжатие резервных копий.and later supports backup compression. По умолчанию сжатие резервных копий зависит от значения параметра конфигурации сервера backup-compression default .By default, whether a backup is compressed depends on the value of the backup-compression default server configuration option. Однако независимо от текущего значения по умолчанию на уровне сервера можно сжать резервные копии, установив параметр Сжимать резервные копии, или отказаться от сжатия резервных копий, установив параметр Не сжимать резервные копии.However, regardless of the current server-level default, you can compress a backup by checking Compress backup, and you can prevent compression by checking Do not compress backup.

    Сведения о том, как просмотреть текущую настройку сжатия резервных копий по умолчанию, см. в разделе Параметр конфигурации сервера "Просмотр или настройка параметра сжатия резервных копий по умолчанию".To view the current backup compression default, see View or Configure the backup compression default Server Configuration Option.

    Для шифрования файла резервной копии установите флажок Зашифровать файл резервной копии .To encrypt the backup file check the Encrypt backup check box. Выберите алгоритм шифрования файла резервной копии и выберите сертификат или асимметричный ключ.Select an encryption algorithm to use for encrypting the backup file and provide a Certificate or Asymmetric key. Доступны следующие алгоритмы шифрования:The available algorithms for encryption are:

    • AES 128AES 128

    • AES 192AES 192

    • AES 256AES 256

    • Triple DESTriple DES

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

Выполните инструкцию BACKUP LOG для создания резервной копии журнала транзакций, указав следующее:Execute the BACKUP LOG statement to back up the transaction log, specifying the following:

  • имя базы данных, которой принадлежит журнал транзакций, резервную копию которого необходимо создать;The name of the database to which the transaction log that you want to back up belongs.

  • Устройство резервного копирования, на которое записывается резервная копия журнала транзакций.The backup device where the transaction log backup is written.

Важно!

В этом примере используется база данных AdventureWorks2012AdventureWorks2012 , которая опирается на простую модель восстановления.This example uses the AdventureWorks2012AdventureWorks2012 database, which uses the simple recovery model. Чтобы разрешить создание резервных копий журналов, перед созданием полной резервной копии база данных должна быть настроена на использование модели полного восстановления.To permit log backups, before taking a full database backup, the database was set to use the full recovery model.

Дополнительные сведения см. в разделе Просмотр или изменение модели восстановления базы данных (SQL Server).For more information, see View or Change the Recovery Model of a Database (SQL Server).

В этом примере создается резервная копия журнала транзакций для базы данных AdventureWorks2012AdventureWorks2012 на созданном ранее устройстве резервного копирования, имеющая имя MyAdvWorks_FullRM_log1.This example creates a transaction log backup for the AdventureWorks2012AdventureWorks2012 database to the previously created named backup device, MyAdvWorks_FullRM_log1.

BACKUP LOG AdventureWorks2012  
   TO MyAdvWorks_FullRM_log1;  
GO  

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

Настройка и использование поставщика SQL Server PowerShell.Set up and use the SQL Server PowerShell Provider. Используйте командлет Backup-SqlDatabase и укажите Log в качестве значения параметра -BackupAction .Use the Backup-SqlDatabase cmdlet and specify Log for the value of the -BackupAction parameter.

В следующем примере создается полная резервная копия журналов базы данных <myDatabase> в заданном по умолчанию расположении резервного копирования на экземпляре сервера Computer\Instance.The following example creates a log backup of the <myDatabase> database to the default backup location of the server instance Computer\Instance.

Backup-SqlDatabase -ServerInstance Computer\Instance -Database <myDatabase> -BackupAction Log  

См. также разделSee also

BACKUP (Transact-SQL) BACKUP (Transact-SQL)
Применение резервных копий журналов транзакций (SQL Server) Apply Transaction Log Backups (SQL Server)
Планы обслуживания Maintenance Plans
Полные резервные копии файлов (SQL Server)Full File Backups (SQL Server)