Журналы транзакций и файлы контрольных точек для резервного копирования и восстановления в ExchangeTransaction logs and checkpoint files for backup and restore in Exchange

Сведения о журналах транзакций и файлах контрольных точек, а также о том, как они используются для резервного копирования и восстановления данных Exchange 2013.Find information about transaction logs and checkpoint files and how they are used to back up and restore Exchange 2013 data.

Применимо к: Exchange Server 2013Applies to: Exchange Server 2013

В этой статье описывается, как Exchange Server 2013 использует журналы транзакций и файлы контрольных точек для предотвращения потери данных.This article describes how Exchange Server 2013 uses transaction logs and checkpoint files to help prevent data loss. При разработке приложений для резервного копирования и восстановления, использующих службу теневого копирования томов (VSS), в версиях Windows Server, начиная с Windows Server 2008, важно знать об этих сведениях.It is important to be aware of this information when you develop backup and restore applications that use the Volume Shadow Copy Service (VSS) in versions of Windows Server starting with Windows Server 2008.

Журналы транзакций в Exchange 2013Transaction logs in Exchange 2013

Exchange 2013 поддерживает единый набор файлов журналов транзакций для каждой базы данных.Exchange 2013 maintains a single set of transaction log files for each database. Транзакция определяется как любая операция, которая изменяет состояние или содержимое базы данных.A transaction is defined as any operation that changes the state or contents of the database. Файлы журнала транзакций для отдельной базы данных записывают все транзакции, выполняемые в базе данных.The transaction log files for an individual database record all the transactions performed on the database. Записи транзакций записываются в журналы транзакций до их внесения в саму базу данных, чтобы гарантировать, что все зафиксированные транзакции могут быть восстановлены в случае сбоя базы данных.Records of the transactions are written to the transaction logs before they are made in the database itself, to ensure that all committed transactions can be recovered in the event of a database failure. Журналы транзакций базы данных Exchange 2013 хранятся на диске до того, как транзакции будут зафиксированы в файле базы данных.Exchange 2013 database transaction logs are stored on disk before the transactions are committed to the database file.

Запись транзакций перед обновлением базы данных называется ведением журнала с упреждающей записью.The recording of the transactions before the database is updated is called write-ahead logging. Чтобы убедиться, что база данных правильно возвращена в соответствующее состояние, Exchange 2013 записывает данные в файлы базы данных с помощью операций записи и контрольных точек на основе страниц.To help ensure that the database is correctly brought back to the proper state, Exchange 2013 writes data into the database files by using page-based writes and checkpoints. В ходе обычных операций хранилище Exchange сначала записывает изменения базы данных в журналы транзакций, а затем вносит изменения в копию базы данных, находящиеся в памяти.During regular operations, the Exchange store first records database changes in the transaction logs, and then makes those changes on an in-memory copy of the database. В журналах транзакций записываются начало и конец каждой транзакции.The transaction logs record the beginning and end of each transaction. Это гарантирует, что в базе данных будет доступно достаточно информации для последующего отмены или отката операций в базе данных.This ensures that sufficient information is available to later undo or roll back operations in the database.

При восстановлении после ошибок, когда файл базы данных на диске поврежден, но журналы транзакций не повреждены, приложение восстановления должно сначала восстановить известную работоспособную копию файла базы данных.When recovering from errors in which the database file on disk is damaged, but the transaction logs are intact, your restore application must first restore a known good copy of the database file.

Хранилище Exchange воспроизводит транзакции из архивных журналов транзакций, а затем воспроизводит все оставшиеся транзакции из файлов журнала транзакций на диске.The Exchange store replays the transactions from the previously backed up transaction logs, and then replays any remaining transactions from the on-disk transaction log files. Обратите внимание, что иногда транзакции могут быть потеряны в случае сбоя системы между моментом записи транзакций в журналы транзакций и при их фактическом написании в файлах базы данных.Note that sometimes transactions can be lost if the system fails between when the transactions are recorded in the transaction logs, and when they are actually written to the database files.

Периодически хранилище Exchange проверяет изображение базы данных в памяти, а затем определяет, какие страницы изменились.Periodically, the Exchange store checks the in-memory database image, and then determines which pages have changed. Хранилище Exchange объединяет ожидающие изменения, а затем записывает эти страницы в файл базы данных на диске.The Exchange store combines the pending changes, and then writes those pages to the database file on disk.

Файлы контрольных точек в Exchange 2013Checkpoint files in Exchange 2013

Файл контрольной точки записывает записанные транзакции в файлы базы данных на диске.A checkpoint file records which logged transactions have been written to the on-disk database files. Контрольная точка является расширенной, когда все страницы базы данных, которые были изменены записями в журналах транзакций, успешно записаны на диск.The checkpoint is advanced when all the database pages that have been modified by entries in the transaction logs are successfully written to disk. Так как файл контрольной точки записывает, какие транзакции уже находятся в образе базы данных на диске, хранилище Exchange должно выполнять только транзакции, произошедшие после создания контрольной точки.Because the checkpoint file records which transactions are already in the on-disk database image, the Exchange store only needs to replay transactions that occurred after the checkpoint. В зависимости от периода времени между резервными копиями это может значительно уменьшить количество транзакций, которые необходимо преобразовать в базу данных в случае сбоя системы.Depending on the time period between backups, this can greatly decrease the number of transactions that must be replayed into the database if a system failure occurs.

См. такжеSee also