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