Risoluzione dei problemi: Connessione a SQL Server se gli amministratori di sistema sono bloccati

In questo argomento viene descritto come ottenere nuovamente l'accesso al Motore di database di SQL Server come amministratore di sistema. Un amministratore di sistema può perdere l'accesso a un'istanza di SQL Server per uno dei motivi seguenti:

  • Tutti gli account di accesso membri del ruolo predefinito del server sysadmin sono stati rimossi per errore.

  • Tutti i gruppi di Windows membri del ruolo predefinito del server sysadmin sono stati rimossi per errore.

  • Gli account di accesso membri del ruolo predefinito del server sysadmin sono assegnati a utenti che hanno lasciato la società o che non sono disponibili.

  • L'account sa è disabilitato o la password non è nota ad alcun utente.

Un metodo per ottenere nuovamente l'accesso consiste nel reinstallare SQL Server e nel collegare tutti i database alla nuova istanza. Questa soluzione richiede molto tempo. Per recuperare gli account di accesso, inoltre, può essere necessario ripristinare il database master da un backup. Se il backup del database master è meno recente, potrebbe non contenere tutte le informazioni. Se il backup del database master è più recente, potrebbe includere gli stessi account di accesso dell'istanza precedente e, pertanto, gli amministratori possono risultare ancora bloccati.

Soluzione

Avviare l'istanza di SQL Server in modalità utente singolo utilizzando l'opzione -m o -f. Qualsiasi membro del gruppo Administrators locale del computer potrà quindi connettersi all'istanza di SQL Server come membro del ruolo predefinito del server sysadmin.

Nota

Quando si avvia un'istanza di SQL Server in modalità utente singolo, arrestare innanzitutto il servizio SQL Server Agent. In caso contrario, SQL Server Agent potrebbe eseguire per primo la connessione impedendo la connessione come secondo utente.

Quando si utilizza l'opzione -m con sqlcmd o SQL Server Management Studio, è possibile limitare le connessioni a un'applicazione client specifica. L'uso di -m"sqlcmd" consente ad esempio di limitare le connessioni a una singola connessione che deve identificarsi come programma client sqlcmd. Utilizzare questa opzione quando si avvia SQL Server in modalità utente singolo e un'applicazione client sconosciuta accede all'unica connessione disponibile. Per connettersi tramite l'editor di query in Management Studio, utilizzare l'opzione -m"Microsoft SQL Server Management Studio - Query".

Nota importanteImportante

Non utilizzare tale opzione come caratteristica di sicurezza. L'applicazione client fornisce il nome dell'applicazione client e può indicare un nome falso come parte della stringa di connessione.

Per istruzioni dettagliate su come avviare SQL Server in modalità utente singolo, vedere Procedura: Configurazione delle opzioni di avvio del server (Gestione configurazione SQL Server).