SQL: база данных сервера 2008 застряла в восстановлении

У меня есть два сервера SQL Server 2008 R2, один для PROD, а другой для DR. Я пытаюсь добавить доставку журналов для базы данных под названием Школа.

Шаги так далеко

  • Резервное копирование базы данных школы

  • Восстановите базу данных с помощью пользовательского интерфейса или с помощью следующего оператора SQL, т.е.

    Restore database "School" from disk ='t:\Data\School.bak' with NoRecovery,

  • В результате база данных застряла в Восстановлении

  • Если я восстановлю базу данных с Restore database "School" from disk ='t:\Data\School.bak' with recovery. восстановление базы данных завершено, но доставка журнала не удалась. Я удалил базу данных и заново создал ее, используя Restore database "School" from disk ='t:\Data\School.bak' with NoRecovery.но он все еще застрял в **Norecovery**,

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

2 ответа

Таким образом, у вас есть только два варианта в конфигурации доставки журналов. Один из них заключается в том, что база данных на вторичном сервере находится в режиме "только для чтения", где чтение может происходить в базе данных до тех пор, пока не будет восстановлен следующий журнал, не выгружает пользователей, а затем возвращается в режим только для чтения. Второй вариант, который является наиболее распространенным, заключается в том, чтобы постоянно оставлять базу данных на вторичном сервере в состоянии "восстановления". Когда наступает время переключения на вторичный сервер, база данных является такой же текущей, как и последний журнал транзакций, который был заархивирован, скопирован и восстановлен без восстановления.

Пожалуйста, попробуйте следующую команду: RESTORE DATABASE DBName WITH RECOVERY

В случае, если вам не удалось с этим, то вы также можете перейти по этой ссылке:

http://mssqllover.blogspot.com/2016/08/database-stuck-in-recovery-mode.html

Другие вопросы по тегам