Ответ 1
Не закрывайте SQL во время восстановления. Пусть закончится. Проверьте журналы ошибок. Если он не завершится, восстановите резервную копию.
Я вчера восстановил базу данных 35Gb на своей машине dev, и все было хорошо до сегодняшнего утра, когда мое клиентское приложение не могло подключиться. Поэтому я открыл SQL Management Studio, чтобы найти базу данных "In Recovery".
Я не знаю огромной суммы об этом, кроме как обычно это связано с незафиксированными транзакциями. Теперь, поскольку я знаю, что не являются незавершенными транзакциями, это должно быть что-то другое. Итак, во-первых, я хотел бы знать, при каких условиях это может произойти. Во-вторых, пока это происходит, я не могу работать, если есть способы остановить восстановление, ускорить его или, по крайней мере, найти, как долго это будет помогать.
Не закрывайте SQL во время восстановления. Пусть закончится. Проверьте журналы ошибок. Если он не завершится, восстановите резервную копию.
Вы можете узнать, сколько времени это займет, посмотрев в средстве просмотра событий. В разделе "Приложения" в журналах Windows вы должны получать информационные сообщения от MSSQLSERVER с EventID 3450, рассказывающие вам, для чего это необходимо. Что-то вроде:
Восстановление базы данных "XYZ" завершено на 10% (осталось примерно 123456 секунд) и т.д.
Боюсь, я не знаю, как остановить его (пока).