Impostare un database in modalità utente singolo
In questo argomento si descrive come impostare un database definito dall'utente in modalità utente singolo in SQL Server 2012 utilizzando SQL Server Management Studio o Transact-SQL. Questa modalità consente l'accesso a un solo utente alla volta e viene in genere utilizzata per azioni di manutenzione.
Contenuto dell'argomento
Prima di iniziare:
Limitazioni e restrizioni
Prerequisiti
Sicurezza
Per impostare un database in modalità utente singolo utilizzando:
SQL Server Management Studio
Transact-SQL
Prima di iniziare
Limitazioni e restrizioni
Se altri utenti sono connessi al database nel momento in cui viene impostata la modalità utente singolo, le relative connessioni verranno chiuse senza preavviso.
Il database rimane in modalità utente singolo anche se l'utente che ha impostato l'opzione si disconnette. A questo punto, un altro utente (ma solo uno) potrà connettersi al database.
Prerequisiti
- Prima di impostare il database in modalità SINGLE_USER, verificare che l'opzione AUTO_UPDATE_STATISTICS_ASYNC sia impostata su OFF. Se l'opzione è impostata su ON, tramite il thread in background utilizzato per aggiornare le statistiche viene stabilita una connessione con il database che non sarà quindi accessibile in modalità utente singolo. Per ulteriori informazioni, vedere Opzioni ALTER DATABASE SET (Transact-SQL).
Sicurezza
Autorizzazioni
È richiesta l'autorizzazione ALTER per il database.
[Top]
Utilizzo di SQL Server Management Studio
Per impostare un database in modalità utente singolo
In Esplora oggetti connettersi a un'istanza del Motore di database di SQL Server, quindi espandere questa istanza.
Fare clic con il pulsante destro del mouse sul database di cui modificare l'impostazione e quindi scegliere Proprietà.
Nella finestra di dialogo Proprietà database fare clic sulla pagina Opzioni.
Selezionare Single nell'opzione Limitazione accesso.
Se altri utenti sono connessi al database, verrà visualizzato il messaggio Connessioni aperte. Per modificare la proprietà e chiudere tutte le altre connessioni, fare clic su Sì.
Tramite questa procedura, è inoltre possibile impostare l'accesso Multiple o Restricted per il database. Per ulteriori informazioni sulle opzioni di limitazione dell'accesso, vedere Proprietà database (pagina Opzioni).
[Top]
Utilizzo di Transact-SQL
Per impostare un database in modalità utente singolo
Connettersi al Motore di database.
Dalla barra Standard fare clic su Nuova query.
Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui. In questo esempio si imposta il database in modalità SINGLE_USER in modo da ottenere l'accesso esclusivo. Nell'esempio lo stato del database AdventureWorks2012 viene quindi impostato su READ_ONLY e viene ripristinato l'accesso al database per tutti gli utenti. L'opzione di chiusura WITH ROLLBACK IMMEDIATE è specificata nella prima istruzione ALTER DATABASE. Questa operazione comporterà il rollback di tutte le transazioni incomplete e l'immediata interruzione di qualsiasi altra connessione al database AdventureWorks2012 .
USE master;
GO
ALTER DATABASE AdventureWorks2012
SET SINGLE_USER
WITH ROLLBACK IMMEDIATE;
GO
ALTER DATABASE AdventureWorks2012
SET READ_ONLY;
GO
ALTER DATABASE AdventureWorks2012
SET MULTI_USER;
GO
[Top]