SQL-Wiederherstellung schlägt fehl mit "Datenbank ist bereits geöffnet und kann nur einen Nutzer gleichzeitig haben"

Summary: Wissensdatenbank-Artikel (KB), der eine Lösung für Fehler bei der SQL-Datenbankwiederherstellung bietet, wenn Nutzer auf die Datenbank zugreifen.

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

Die SQL-Datenbankwiederherstellung am ursprünglichen Speicherort schlägt mit Fehlern ähnlich der folgenden Anzeige fehl:
 

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

Ein oder mehrere Nutzer oder Verbindungen greifen auf die Datenbank zu, in der wiederhergestellt wird. Die ursprüngliche Datenbank kann nicht überschrieben werden, wenn Nutzer oder Verbindungen auf die Datenbank zugreifen.

Resolution

Ändern Sie den Status der Datenbank von Multi-User in Single-User Mode.

Verwenden von SQL Server Management Studio

So legen Sie eine Datenbank in den Einzelnutzermodus fest:

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Instanz von SQL Server-Datenbankmodul her, und erweitern Sie diese Instanz.

  2. Klicken Sie mit der rechten Maustaste auf die zu ändernde Datenbank und klicken Sie dann auf Eigenschaften.

  3. Klicken Sie im Dialogfeld Datenbankeigenschaften auf die Seite Optionen.

  4. Wählen Sie in der Option Zugriff einschränkendie Option Einzeln aus.

  5. Wenn andere Nutzer mit der Datenbank verbunden sind, wird die Meldung Open Connections angezeigt. Um die Eigenschaft zu ändern und alle anderen Verbindungen zu schließen, klicken Sie auf Ja.

 

Verwenden von Transact-SQL

So legen Sie eine Datenbank in den Einzelnutzermodus fest:

  1. Stellen Sie eine Verbindung mit der Datenbank-Engine her.

  2. Klicken Sie in der Leiste Standard auf New Query.

  3. Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein und klicken Sie auf die Schaltfläche "Ausführen". In diesem Beispiel wird die Datenbank auf Folgendes festgelegt: SINGLE_USER Modus, um exklusiven Zugriff zu erhalten. Im Beispiel wird dann der Status der Avamar1-Datenbank wie folgt festgelegt: READ_ONLY und gibt den Zugriff auf die Datenbank an alle Benutzer zurück. Die Kündigungsmöglichkeit WITH ROLLBACK IMMEDIATE wird in der ersten ALTER DATABASE Aussage. Dies führt dazu, dass für alle unvollständigen Transaktionen ein Rollback ausgeführt wird und alle anderen Verbindungen zur Avamar1-Datenbank sofort getrennt werden.

 

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

 


Referenz:  

https://docs.microsoft.com/en-us/sql/relational-databases/databases/set-a-database-to-single-user-mode?view=sql-server-2017Sobald dies abgeschlossen ist, wiederholen Sie die Wiederherstellung der SQL-Datenbank am ursprünglichen Speicherort.

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.