#sql-server #ssms
Вопрос:
Компания, в которой я работаю, обычно имеет для нас личную базу данных, которая является клоном промежуточной базы данных. Иногда мне нужно будет удалить свою базу данных и восстановить ее в текущей версии промежуточной базы данных, поэтому процесс, с помощью которого я это делаю,:
- Откройте среду SQL Server Management Studio
- Подключение к серверу
- Откройте обозреватель объектов
- Разверните узел дерева серверов
- Разверните узел дерева баз данных
- Щелкните правой кнопкой мыши на моей базе данных
- Нажмите Удалить (проверьте параметры Закрытия существующих подключений).
- Нажмите кнопку ОК
- Щелкните правой кнопкой мыши на узле дерева баз данных
- Нажмите кнопку Восстановить базу данных…
- В раскрывающемся списке исходная база данных выберите промежуточную копию
- В поле «База данных назначения» измените значение на имя моей базы данных
- Нажмите кнопку ОК
Проблема в том, что чаще всего база данных застревает в восстановленном состоянии. Проблему достаточно просто решить, поскольку я могу выполнить следующий запрос сразу после шага 13:
RESTORE DATABASE stagingdatabase WITH RECOVERY;
Но предпочтительно я хотел бы знать, почему он для начала застревает в восстановленном состоянии, и посмотреть, есть ли что-то, что я могу добавить в свой список шагов, чтобы предотвратить его застревание в первую очередь.
Комментарии:
1. Предположительно, когда вы запустили
RESTORE
выбранноеRESTORE WITH NORECOVERY
вами состояние восстановления в диалоговом окне.2. @Larnu — Когда я выполняю шаги 10-13, я сохраняю параметры, установленные по умолчанию. Я дважды проверил состояние восстановления, и это
RESTORE WITH RECOVERY
по умолчанию, и флажки над этим выпадающим списком все не отмечены.3. Затем база данных выйдет из режима восстановления в конце
RESTORE
, @David .4. При восстановлении базы данных состояние базы данных должно быть «восстановлено», поскольку она будет воспроизводить некоторые последние транзакции, в которых данные еще не записаны в файл данных. Иногда это может занять много времени из-за нехватки ресурсов, например, когда вы делаете это на ПК или ноутбуке с ограниченной оперативной памятью…
5. @SQLPro — он будет в основном оставаться в этом состоянии, пока я не выполню команду. Самое долгое, что у меня оставалось, — это 2 дня, и оно так и не вышло. Я не думаю, что это оперативная память, потому что я только что проверил, и у меня 32 ГБ установленной памяти с 31,8 ГБ в качестве «полезной». Единственное предостережение заключается в том, что на сервере, на котором находится база данных, имеется довольно много баз данных (125, если быть точным), и некоторые из них, вероятно, могут быть удалены (старые проекты больше не поддерживаются). Может ли это быть проблемой?