sql >> Database teknologi >  >> RDS >> Sqlserver

skift til database til 'online' og sæt db til 'multi-user'

^ Dette er problemet, du skal løse.

Sørg for, at du ikke er i den database. Luk alle forespørgselsvinduer, der er forbundet til den, luk Objekt Explorer Detaljer, luk SSMS og genåbn den uden at Objekt Explorer er forbundet til den server, osv. Kør dette:

USE [master];
GO

ALTER DATABASE mydb SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
GO
USE mydb;
GO

Det skulle give dig mulighed for at bringe det online, så ville du køre de kommandoer, du har angivet.

Dog:

  • Dette kan tage længere tid, end du måske, afhængigt af hvilken tilbagerulningsaktivitet, der skal ske med de sessioner, du sparker ud.
  • Det er altid muligt, at når du indstiller det til enkeltbruger, kan en anden proces være hurtigere end dig og tage den enkelte forbindelse. Hvis du opdager, at dette sker, kan du finde ud af, hvem det bruger sp_whoisactive eller DMV'er som sys.dm_tran_locks - det kan være, at du skal suspendere tilslutningsapplikationer og/eller lukke SQL Server Agent ned.


  1. GROUP_CONCAT nummerering

  2. SQL Server 2005 / 2008 - flere filgrupper?

  3. Sådan:Opret trigger for automatisk opdaterings ændret dato med SQL Server 2008

  4. Ændring af typen af ​​en kolonne, der bruges i andre visninger