Авамар: Відновлення SQL невдало з «База даних вже відкрита і може мати лише одного користувача одночасно»

Summary: Стаття бази знань (KB), яка пропонує рішення проблеми невдачі відновлення SQL бази даних при зверненні користувачів до бази даних.

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-бази даних до початкового розташування не дає результатів із помилками, подібними до наступного відображення:

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

Один або кілька користувачів або з'єднань отримують доступ до бази даних, до якої відновлюються. Оригінальна база даних не може бути перезаписана, якщо до бази даних звертаються користувачі або з'єднання.

Resolution

Змініть статус бази даних з режиму мультикористувача на режим для одного користувача.

Використання SQL Server Management Studio

Щоб перевести базу даних у режим для одного користувача:

  1. В Object Explorer підключіться до екземпляра SQL Server Database Engine, а потім розгорніть цей екземпляр.

  2. Натисніть правою кнопкою миші по базі даних, щоб змінити, а потім натисніть «Властивості».

  3. У діалоговому вікні «Властивості бази даних» натисніть на сторінку «Опції».

  4. У опції «Обмежений доступ» виберіть «Одинокий».

  5. Якщо інші користувачі підключені до бази даних, з'являється повідомлення Open Connections. Щоб змінити властивість і закрити всі інші з'єднання, натисніть «Так».

 

Використання Transact-SQL

Щоб перевести базу даних у режим для одного користувача:

  1. Підключіться до движка бази даних.

  2. Зі стандартної панелі натисніть Новий запит.

  3. Скопіюйте та вставте наступний приклад у вікно запиту та натисніть кнопку «Виконати». Цей приклад встановлює базу даних на SINGLE_USER режим для отримання ексклюзивного доступу. Приклад тоді встановлює стан бази даних Avamar1 як READ_ONLY і повертає доступ до бази даних усім користувачам. Опція завершення WITH ROLLBACK IMMEDIATE зазначено у першому ALTER DATABASE Заява. Це призводить до відкату всіх неповних транзакцій, а інші підключення до бази даних Avamar1 негайно відключаються.

 

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

Джерело:  https://docs.microsoft.com/en-us/sql/relational-databases/databases/set-a-database-to-single-user-mode?view=sql-server-2017

Після цього спробуйте відновити SQL-базу даних до початкового місця.

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.