2

У нас есть база данных SQL Server 2008 R2, которая время от времени резервирует журналы транзакций. Сегодня произошла большая ошибка в базе данных, вызванная примерно в 12 утра ... У меня есть транзакционные журналы до 8 утра, а затем с 12:00 до 16:00 и т. Д.Обратные изменения из журнала транзакций в SQL Server 2008 R2?

Мой вопрос: могу ли я сортировать обратное слияние этих журналов транзакций базы данных, чтобы я вернулся в состояние базы данных в 8 утра?

Или мой лучший шанс восстановить старую полную резервную копию и восстановить все журналы транзакций до 8 утра?

Первый вариант предпочтительнее, так как полная резервная копия была выполнена некоторое время назад, и я боюсь, что f * ck вещи будут восстанавливаться оттуда и применять журналы trn. Неужели я ложно встревожен об этом? Действительно ли возможно, что что-то плохое произойдет, если пойдет по этому сценарию (восстановление полной резервной копии и применение trn-журналов)?

+0

Имя вещи, которую вы хотите, - это [«восстановление по времени»] (http://technet.microsoft.com/en-us/library/ms190982 (v = sql.105) .aspx). Какая модель восстановления - это база данных? Полный или Массовый журнал (надеюсь, бывший) –

+0

У нас есть модель с полной резервной копией. –

ответ

4

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

С полной цепочкой резервных копий журнала транзакций до 8:00 вы можете успешно отбросить всю базу данных до момента времени.

Что касается восстановления полного резервного копирования и применения журналов TRN - ничто не должно пойти не так, но это всегда рекомендуется проверить сценарий на тестовом сервере первый, а не непосредственно в производстве

Для восстановления до точки во времени :

  1. В SSMS расширить базы данных
  2. правой кнопкой мыши базу данных, выберите задачи | Восстановление | База данных
  3. На вкладке «Общие» в установках «Резервное копирование» будут перечислены доступные резервные копии. Нажмите Timeline
  4. Выберите Конкретная дата и время, изменить Временной интервал, чтобы показать более широкий диапазон времени, и переместите ползунок времени вы хотите вернуться к

enter image description here

Здесь вы можете найти более подробные инструкции: How to: Restore to a Point in Time (SQL Server Management Studio)

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

Reverting your SQL Server database back to a specific point in time

Restore a database to a point in time

Отказ от ответственности: Я работаю ApexSQL как инженером технической поддержки

Смежные вопросы