В двух рассмотренных выше типах резервного копирования фиксируется состояние системы на конкретный момент времени. Восстановив полную копию базы данных или дополнительно еще и разностную копию, можно восстановить систему в том состоянии, в котором она была на момент создания архива. Однако нельзя восстановить систему в промежуточном состоянии. В некоторых случаях требуется восстановить систему в состоянии, в котором она была за полчаса до выполнения операции резервного копирования. Такая ситуация нередка при повреждении большого объема данных и недостаточно частом резервном копировании.
Предположим, что полная резервная копия создается раз в неделю, а каждую ночь формируется разностная резервная копия базы данных. В 8 часов утра вы обнаруживаете, что один из пользователей вчера по ошибке удалил большое количество информации из базы данных. Хотя у вас и имеется резервная копия, созданная в прошлую ночь, вы не сможете воспользоваться ею, так как она содержит уже поврежденные данные. Для восстановления данных придется использовать еще более раннюю резервную копию. При этом будут потеряны все изменения, внесенные пользователями в базу данных за прошлый день. Эти изменения необходимо будет восстанавливать вручную.
Решением подобных проблем является применение резервного копирования журнала транзакций (transaction log backup). Этот тип резервного копирования позволяет сохранять информацию обо всех транзакциях, выполненных в базе данных. В итоге резервная копия содержит непрерывную цепочку изменений, которые претерпели данные со времени последнего архивирования. Такая цепочка позволяет восстановить систему в состоянии, в котором она была в любой момент времени и этот момент отображен в резервной копии. При восстановлении резервной копии журнала транзакций SQL Server 2000 последовательно выполняет все изменения, выполненные пользователями в базе данных.
Если вы планируете применять резервное копирование журнала транзакций, необходимо следить за тем, чтобы в нем отображалась информация обо всех транзакциях, выполненных в базе данных, и чтобы эта информация была непрерывной.