2011-07-05 8 views
8

Tengo una base de datos sql 2008 que está fuera de línea que me gustaría tomar en línea y establecer en multiusuario. Utilizando SQL Server Management Studio - nueva ventana de consulta - cuando yo haga lo siguiente:cambiar a la base de datos a 'en línea' y establecer db a 'multi-usuario'

ALTER DATABASE mydb SET ONLINE; 

    ALTER DATABASE mydb SET MULTI_USER; 

recibo este mensaje de error:

Msg 5064, nivel 16, estado 1, línea 1 cambios en el el estado u opciones de la base de datos 'mydb' no se pueden hacer en este momento . La base de datos se encuentra en el modo de usuario único , y un usuario está actualmente conectado al .
Msg 5069, nivel 16, Estado 1, línea 1 ALTER DATABASE error de instrucción. Msg 5064, nivel 16, Estado 1, línea 3 Cambios en el estado u opciones de la base de datos 'mydb' no se pueden en este momento. La base de datos es en modo de usuario único, y un usuario es actualmente conectado. Msg 5069, nivel 16, estado 1, línea 3 ALTER instrucción DATABASE failed.

¿Cómo obtendría la base de datos en línea y en modo multiusuario?

Respuesta

6

Asegúrese de que no se encuentre en esa base de datos. Cierre todas las ventanas de consulta que están conectados a él, concluya el Explorador de objetos cercanos Detalles, SSMS y volver a abrir sin el Explorador de objetos conectados a ese servidor, etc. Ejecutar este:

USE [master]; 
GO 

ALTER DATABASE mydb SET SINGLE_USER WITH ROLLBACK IMMEDIATE; 
GO 

Eso le debería permitir llevarlo en línea, entonces ejecutaría los comandos que enumeró.

+2

USE [master]; GO ALTER DATABASE mydb SET MULTI_USER CON ROLLBACK INMEDIATO; GO – FiveTools

+1

El problema es que puede haber un solo usuario con una transacción abierta que impida un cambio en el estado. Nunca intenté configurarlo directamente en multi_user sin expulsar primero a ese usuario. En cualquier caso, una de las sugerencias anteriores al código puede ser todo lo que se requiere. –

0

Bueno, detuve ese servicio de base de datos en particular en Herramientas de administrador> Servicios. Luego, hizo clic derecho en el servidor de la base de datos para obtener opciones y luego cambió el modo staus a multiusuario.

Cuestiones relacionadas