Мой SQL Server 2005 не восстанавливает резервную копию из-за активных подключений. Как я могу заставить это?
sql-server
sql-server-2005
backup
restore
disconnect
Джадер Диас
источник
источник
Ответы:
SQL Server Management Studio 2005
Когда вы щелкаете правой кнопкой мыши по базе данных,
Tasks
затем щелкаетеDetach Database
, а затем щелкаете , открывается диалоговое окно с активными соединениями.Нажав на гиперссылку в разделе «Сообщения», вы можете отключить активные соединения.
Затем вы можете уничтожить эти соединения, не отключая базу данных.
Больше информации здесь .
SQL Server Management Studio 2008
Интерфейс изменился для SQL Server Management Studio 2008, вот шаги (через: Тим Леунг )
источник
Вы хотите установить db в однопользовательский режим, выполнить восстановление, а затем установить его обратно в многопользовательский режим:
Ссылка: Пинал Дэйв ( http://blog.SQLAuthority.com )
Официальная ссылка: https://msdn.microsoft.com/en-us/library/ms345598.aspx
источник
ROLLBACK IMMEDIATE
и у васROLLBACK AFTER 60
. Единственный способ сохранить эти данные - выполнить другое резервное копирование после отката. Но вы восстанавливаете из другой резервной копии. Итак, какой смысл ждать? Я что-то упускаю?Этот код работал для меня, он убивает все существующие соединения базы данных. Все, что вам нужно сделать, это изменить строку Set @dbname = 'databaseName', чтобы она имела имя вашей базы данных.
после этого я смог его восстановить
источник
Попробуй это:
источник
Перезапуск сервера SQL отключит пользователей. Самый простой способ, который я нашел - хорошо, если вы хотите отключить сервер.
Но по какой-то очень странной причине опция «Отключить» делает это ненадежно и может повредить или запутать консоль управления. Перезапуск, а затем работает в автономном режиме
Иногда это вариант - если, например, вы остановили веб-сервер, который является источником соединений.
источник
Я столкнулся с этой проблемой при автоматизации процесса восстановления в SQL Server 2008. Мой (успешный) подход представлял собой сочетание двух предоставленных ответов.
Сначала я запускаю все соединения указанной базы данных и убиваю их.
Затем я установил базу данных в режим single_user
Затем я запускаю восстановление ...
Убей соединения снова
И установите базу данных обратно в multi_user.
Таким образом, я гарантирую, что нет никаких соединений, удерживающих базу данных перед установкой в одиночный режим, так как первый будет зависать, если есть.
источник
Ни один из них не работал для меня, не мог удалить или отключить текущих пользователей. Также не видел активных подключений к БД. Перезапуск SQL Server (щелкните правой кнопкой мыши и выберите «Перезагрузить») позволил мне это сделать.
источник
В дополнение к уже предоставленному совету, если у вас есть веб-приложение, работающее через IIS, использующее БД, вам также может понадобиться остановить (не перезапускать) пул приложений для приложения во время восстановления, а затем перезапустить. Остановка пула приложений убивает активные http-соединения и не позволяет больше, что в противном случае могло бы привести к запуску процессов, которые подключаются к базе данных и тем самым блокируют ее. Это известная проблема, например, с системой управления контентом Umbraco при восстановлении базы данных.
источник
Ничто из вышеперечисленного не помогло мне. В моей базе данных не было активных соединений с использованием Activity Monitor или sp_who. В конечном итоге мне пришлось:
Не самое элегантное решение, но оно работает и не требует перезапуска SQL Server (для меня это не вариант, поскольку на сервере БД размещалась куча других баз данных)
источник
Я предпочитаю делать так,
изменить базу данных в автономном режиме с немедленным откатом
а затем восстановить вашу базу данных. после этого,
изменить базу данных, установленную онлайн с немедленным откатом
источник