La restauración de SQL falla con "La base de datos ya está abierta y solo puede tener un usuario a la vez"

Summary: Artículo de la base de conocimientos (KB) que proporciona una solución para la falla de restauración de la base de datos SQL cuando los usuarios acceden a la base de datos.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

La restauración de la base de datos de SQL a la ubicación original falla con errores similares a los que se muestran a continuación:
 

avsql Error <40258>: sqlconnectimpl_smo::get_database_data_names Microsoft.SqlServer.Management.Common.ExecutionFailureException: An exception occurred while executing a Transact-SQL statement or batch. ---> System.Data.SqlClient.SqlException: Database 'Avamar1' is already open and can only have one user at a time.



 

Cause

Uno o más usuarios o conexiones están accediendo a la base de datos a la que se está restaurando. La base de datos original no se puede sobrescribir si hay usuarios o conexiones que acceden a la base de datos.

Resolution

Cambie el estado de la base de datos del modo multiusuario al modo de usuario único.

Uso de SQL Server Management Studio

Para establecer una base de datos en modo de usuario único:

  1. En el Explorador de objetos, conéctese a una instancia del Motor de base de datos de SQL Server y, a continuación, expanda esa instancia.

  2. Haga clic con el botón secundario en la base de datos que desea cambiar y, a continuación, haga clic en Propiedades.

  3. En el cuadro de diálogo Propiedades de la base de datos, haga clic en la página Opciones.

  4. En la opción Restringir el acceso, seleccione Único.

  5. Si hay otros usuarios conectados a la base de datos, aparece un mensaje de Open Connections. Para cambiar la propiedad y cerrar todas las demás conexiones, haga clic en .

 

Uso de Transact-SQL

Para establecer una base de datos en modo de usuario único:

  1. Conéctese al motor de base de datos.

  2. En la barra Standard, haga clic en New Query.

  3. Copie y pegue el siguiente ejemplo en la ventana de consulta y haga clic en el botón "Execute". En este ejemplo, se configura la base de datos en SINGLE_USER para obtener acceso exclusivo. A continuación, en el ejemplo, se establece el estado de la base de datos de Avamar1 en READ_ONLY y devuelve el acceso a la base de datos a todos los usuarios. La opción de rescisión WITH ROLLBACK IMMEDIATE se especifica en el primer ALTER DATABASE declaración. Esto hace que todas las transacciones incompletas se reviertan y cualquier otra conexión a la base de datos de Avamar1 se desconecte inmediatamente.

 

SQLCopy

USE master; GO ALTER DATABASE Avamar1 SET SINGLE_USER WITH ROLLBACK IMMEDIATE; GO ALTER DATABASE Avamar1 SET READ_ONLY; GO ALTER DATABASE Avamar1 SET MULTI_USER; GO

 


Referencia:  

https://docs.microsoft.com/en-us/sql/relational-databases/databases/set-a-database-to-single-user-mode?view=sql-server-2017Una vez hecho esto, vuelva a intentar la restauración de la base de datos SQL a la ubicación original.

Affected Products

Avamar

Products

Avamar, Avamar Plug-in for SQL
Article Properties
Article Number: 000038587
Article Type: Solution
Last Modified: 11 Dec 2025
Version:  5
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.