Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a: SQL Server su Windows
Sommario
Questo articolo è il punto di riferimento per gli errori di installazione, aggiornamento, avvio dei servizi, SQL Server Agent, istanza del cluster di failover (FCI), Kerberos, server collegato e gruppo di disponibilità che si verificano quando i servizi di SQL Server vengono eseguiti con un account del servizio gestito di gruppo (gMSA). La maggior parte di questi sintomi ha le stesse cause alla radice, che sia coinvolto o meno un gMSA, quindi ogni articolo relativo allo scenario si concentra sui controlli specifici del gMSA e rimanda, per tutti gli altri aspetti, all'articolo canonico sulla risoluzione dei problemi.
Iniziare con l'elenco di controllo rapido per la convalida. Usare quindi il percorso di risoluzione dei problemi corrispondente all'errore osservato per trovare l'articolo dello scenario con i passaggi di diagnostica e risoluzione. Per informazioni di base sulla selezione e la configurazione degli account di servizio per SQL Server, inclusi gli account di servizio gestiti e i gMSA, vedere Configurare gli account di servizio e le autorizzazioni di Windows. Per la creazione e la gestione dei gMSA in Active Directory, vedere Gestire gli account di servizio gestiti di gruppo.
Prerequisiti
- Accesso amministrativo locale a ogni host SQL Server o nodo del cluster interessato.
- Accesso ai log di bootstrap di SQL Server di installazione, al log degli errori SQL Server, al log degli errori SQL Server Agent e ai log dell'applicazione e del sistema Windows.
- Modulo di PowerShell Active Directory per
Get-ADServiceAccounteTest-ADServiceAccount. Se il modulo non è presente, vedere Installare e gestire Strumenti di amministrazione remota del server in Windows. - Autorizzazioni di Active Directory appropriate o assistenza da parte di un amministratore Active Directory, per convalidare il recupero delle password, i nomi delle entità servizio (SPN), la delega e gli host autorizzati.
- Autorizzazione per eseguire query di diagnostica Transact-SQL quando è disponibile l'motore di database. Le query di diagnostica in questo articolo e negli articoli relativi agli scenari leggono viste a gestione dinamica con ambito a livello di server e le viste del catalogo. Per le autorizzazioni necessarie, che variano in base alla versione, vedere Funzioni e viste a gestione dinamica del sistema.
Importante
Raccogli informazioni prima di modificare gli account di servizio, i criteri di sicurezza, i valori del Registro di sistema, gli SPN o le impostazioni del cluster di failover. Registrare l'ora dell'errore e il fuso orario del server. Eseguire i comandi di convalida host in locale in ogni server autonomo, nodo del cluster o replica interessata e quindi confrontare i risultati. Sostituire l'account, il servizio, l'istanza e i nomi di dominio di esempio con i valori del proprio ambiente.
Elenco di controllo per la convalida rapida
Eseguire questi controlli su ogni host interessato prima di aprire un articolo specifico dello scenario. Per un'FCI o un gruppo di disponibilità, eseguirli su tutti i possibili nodi proprietari o su tutte le repliche e confrontare i risultati.
Verificare le identità configurate per i servizi SQL Server e SQL Server Agent esaminando il valore Accesso come in Gestione configurazione SQL Server e l'output
SERVICE_START_NAMEdisc.exe qc.Per un'istanza predefinita, eseguire i comandi seguenti.
sc.exe qc MSSQLSERVER sc.exe qc SQLSERVERAGENTRisultato previsto:
SERVICE_START_NAMEidentifica il gMSA previsto. Per un'istanza denominata, usareMSSQL$<InstanceName>eSQLAgent$<InstanceName>. Sostituire<InstanceName>con il nome dell'istanza.Verificare che Active Directory possa trovare l'account del servizio gestito di gruppo (gMSA) eseguendo
Get-ADServiceAccounte verificando che restituisca l'account corretto.Eseguire il comando seguente in una sessione di PowerShell con privilegi elevati.
Get-ADServiceAccount -Identity 'SQLgMSA' -Properties PrincipalsAllowedToRetrieveManagedPasswordRisultato previsto:
Get-ADServiceAccountrestituisce l'account previsto ed elenca l'host.Verificare che l'account del computer host, o un gruppo che lo include, sia elencato in
PrincipalsAllowedToRetrieveManagedPassword.Testare il recupero delle password da ogni host interessato o da un possibile nodo proprietario eseguendo
Test-ADServiceAccountin locale e confermando che restituisceTrue.Eseguire il comando seguente in una sessione di PowerShell con privilegi elevati.
Test-ADServiceAccount -Identity 'SQLgMSA'Risultato previsto:
Test-ADServiceAccountrestituisceTruein ogni host che può eseguire il servizio SQL Server.Verificare che Service Control Manager consideri l'account del servizio come gestito eseguendo
sc.exe qmanagedaccountper l'esatto SQL Server o SQL Server Agent nome del servizio e verificando che restituiscaTRUE.Per un'istanza predefinita, eseguire i comandi seguenti.
sc.exe qmanagedaccount MSSQLSERVER sc.exe qmanagedaccount SQLSERVERAGENTRisultato previsto:
qmanagedaccountsegnalaTRUE.Verificare la sincronizzazione DNS, l'individuazione del controller di dominio, l'integrità del canale sicuro e la sincronizzazione dell'ora.
Eseguire i comandi seguenti. Sostituire
contoso.comcon il nome di dominio Active Directory.nltest /dsgetdc:contoso.com nltest /sc_verify:contoso.com w32tm /query /statusRisultato previsto: viene individuato un controller di dominio, il canale protetto ha esito positivo e lo stato dell'ora è integro.
Se SQL Server viene avviato, verificare lo schema di autenticazione corrente eseguendo
sys.dm_exec_connectionsquery da una sessione Windows remota autenticata.
Per ulteriori controlli relativi ai gMSA a livello host che non sono specifici di SQL Server, vedere Risolvere i problemi dei gMSA per i contenitori Windows.
Scegliere un percorso di risoluzione dei problemi
Raccogliere i dati di diagnostica
Se la checklist di convalida rapida e i controlli specifici dello scenario non consentono di individuare la causa, raccogliere i dati diagnostici seguenti prima di continuare l'indagine o aprire un caso di supporto. Raccogliere ogni elemento dallo stesso intervallo di errore in modo che l'evidenza sia correlata.
Raccogli le seguenti informazioni specifiche di gMSA da ogni host, nodo o replica interessati:
-
Get-ADServiceAccountoutput, inclusoPrincipalsAllowedToRetrieveManagedPassword. -
Test-ADServiceAccountrisultato. -
sc.exe qcesc.exe qmanagedaccountoutput per i servizi di SQL Server e SQL Server Agent. -
nltest /dsgetdc,nltest /sc_verifyew32tm /query /statususcita. - Assegnazioni efficaci dei diritti utente e
gpresultoutput. - Proprietà degli SPN e controlli dei duplicati per il gMSA.
- Per un'istanza del cluster di failover, il log del cluster relativo alla transizione della risorsa.
Raccogliere i dati di diagnostica standard SQL Server seguenti per lo stesso intervallo:
- Log di installazione, inclusi
Summary.txt,Detail.txte log specifici delle funzionalità. Vedere Visualizzare e leggere i file di log del programma di installazione di SQL Server. - Log degli errori correnti e archiviati di SQL Server, log di SQL Server Agent e cronologia dei processi non riusciti.
- Registri eventi di sistema, dell'applicazione e di sicurezza pertinenti.
Per la selezione degli strumenti e la raccolta automatica, vedere Risoluzione dei problemi e strumenti di diagnostica per SQL Server. È possibile usare SQL LogScout per automatizzare la raccolta quando è appropriata per l'indagine.