Potrzebuję zmienić nazwę bazy danych, ale nie mogę, ponieważ używają jej inne procesy. Nie dbam o ten proces i muszę go zabić.Serwer sql 2008 Jak mogę rozłączyć wszystkich z mojego db?
Jak usunąć wszystkie połączenia z bazy danych?
Potrzebuję zmienić nazwę bazy danych, ale nie mogę, ponieważ używają jej inne procesy. Nie dbam o ten proces i muszę go zabić.Serwer sql 2008 Jak mogę rozłączyć wszystkich z mojego db?
Jak usunąć wszystkie połączenia z bazy danych?
Jak na mój komentarz raz w single_user
tryb trzeba wykonać polecenie Zmień nazwę z tego samego połączenia. Nie próbuj zmieniać nazwy w Eksploratorze obiektów, ponieważ spróbuje otworzyć nowe połączenie. Następujące prace to koniec ...
ALTER DATABASE AdventureWorks SET single_user WITH ROLLBACK IMMEDIATE
ALTER DATABASE AdventureWorks MODIFY NAME = NewAdventureWorks
ALTER DATABASE NewAdventureWorks SET multi_user
Pamiętaj, że działa to w przypadku MS SQL 2005 i nowszych wersji. Dla tych, którzy nadal działają w poprzedniej wersji, musielibyśmy użyć 'EXEC sp_dboption 'nazwa DB', 'pojedynczy użytkownik', 'TRUE'' – Nux
Uruchom sp_who, a następnie zabij [pid] dla wszystkich w bazie danych.
Jest to uciążliwe, kłopotliwe, a podczas tego 500 kolejnych spidorów może połączyć się z serwerem. Czy kiedykolwiek grasz w whack-a-mole? Ustaw bazę danych na SINGLE_USER - jest to pojedyncze polecenie i blokuje nowe połączenia. –
Jak to: Kill All Active Connections To A Database
ALTER DATABASE oldNameSET SINGLE_USER WITH ROLLBACK IMMEDIATE
EXEC sp_renamedb 'oldName', 'newName'
ALTER DATABASE newName SET MULTI_USER --new name of course
To działało w porządku dla mnie, aby zmienić nazwę bazy danych i siła rozłączania wszystkich:
ALTER DATABASE [old_name]
SET SINGLE_USER WITH ROLLBACK IMMEDIATE
GO
ALTER DATABASE [old_name]
MODIFY NAME = [new_name]
GO
ALTER DATABASE [new_name]
SET MULTI_USER
GO
starałem się zrobić wszystko co sugeruje, ale otrzymuję DB jest otwarty alr3ady i może mieć tylko jednego użytkownika atime –
Nie próbuj zmienić jego nazwy za pomocą Eksploratora obiektów, który będzie korzystał z innego połączenia. Musisz użyć TSQL. –