SQL-återställning misslyckas med "Databasen är redan öppen och kan bara ha en användare i taget"

Summary: Kunskapsbasartikel (KB) som tillhandahåller en lösning på SQL-databasåterställningsfel när användare får åtkomst till databasen.

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

SQL-databasåterställning till den ursprungliga platsen misslyckas med fel som liknar följande skärm:
 

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

En eller flera användare eller anslutningar har åtkomst till databasen som återställs till. Den ursprungliga databasen kan inte skrivas över om det finns användare eller anslutningar som har åtkomst till databasen.

Resolution

Ändra status för databasen från fleranvändarläge till enanvändarläge.

Använda SQL Server Management Studio

Så här ställer du in en databas i enanvändarläge:

  1. I Object Explorer ansluter du till en instans av SQL Server Database Engine och expanderar sedan den instansen.

  2. Högerklicka på den databas som du vill ändra och klicka sedan på Egenskaper.

  3. I dialogrutan Databasegenskaper klickar du på sidan Alternativ.

  4. I alternativet Begränsa åtkomst väljer du Enkel.

  5. Om andra användare är anslutna till databasen visas meddelandet Öppna anslutningar. Om du vill ändra egenskapen och stänga alla andra anslutningar klickar du på Ja.

 

Använda Transact-SQL

Så här ställer du in en databas i enanvändarläge:

  1. Anslut till databasmotorn.

  2. I fältet Standard klickar du på Ny fråga.

  3. Kopiera och klistra in följande exempel i frågefönstret och klicka på knappen "Execute". I det här exemplet anges databasen till SINGLE_USER läge för att få exklusiv åtkomst. Exemplet anger sedan tillståndet för Avamar1-databasen till READ_ONLY och returnerar åtkomst till databasen till alla användare. Möjligheten till uppsägning WITH ROLLBACK IMMEDIATE anges i den första ALTER DATABASE uttalande. Detta gör att alla ofullständiga transaktioner återställs och att alla andra anslutningar till Avamar1-databasen omedelbart kopplas bort.

 

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

 


Referens:  

https://docs.microsoft.com/en-us/sql/relational-databases/databases/set-a-database-to-single-user-mode?view=sql-server-2017När det är gjort försöker du återställa SQL-databasen till den ursprungliga platsen igen.

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.