Всякий раз, когда я пытаюсь восстановить базу данных в SQL Server, диалоги открываются слишком долго. Наихудшим нарушителем, по-видимому, является модальное вспомогательное диалоговое окно «Выбор устройств резервного копирования» в диалоговом окне «Восстановление базы данных». Обычно открытие модального окна занимает 20–30 секунд, даже если оно не содержит информации и мгновенно открывается в любом другом приложении. Я приложил скриншот ниже.
Я нашел похожий вопрос Вот об обмене стеком DBA, но это не точное совпадение, решение не работает для меня, и я чувствовал, что этот вопрос лучше подходит для ServerFault, поскольку он больше связан с приложением управления, чем с чем-либо, связанным с SQL.
Может ли кто-нибудь сказать мне, почему этот диалог открывается так медленно и (в идеале) как его открыть быстрее? Спасибо!
Скриншот:
@Randolph West предложил этот и это работает для меня.
Обычно, когда вы хотите восстановить базу данных, не нажимайте на саму базу данных. Вместо этого щелкните папку «Базы данных» и затем восстановите.
Моя открылась с 2,5 минут до 1-2 секунд.
MSDB.dbo.backupset ведет журнал резервных копий (отдельно от самих файлов резервных копий).
Пытаться
select *
from msdb.dbo.backupset
where database_name = 'Your-DB-Name-Here'
Очистить:
EXEC sp_delete_backuphistory @oldest_date = '2019-06-27 10:00:00.000';
Дата выше является примером.
Рекомендуется включить такие вещи в свой план обслуживания.
У меня была такая же проблема, и я думаю, что SSMS смутил восстановление базы данных без какой-либо локальной истории резервного копирования / наборов носителей, потому что я пытался использовать резервные копии с другого сервера при новой установке SQL.
Медлительность исчезла после того, как я создал резервную копию пустой базы данных перед попыткой восстановить настоящие резервные копии. Этого бэкапа было достаточно, чтобы кнопка «восстановить с устройства» сработала быстрее.