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 2022, SQL Server 2019, SQL Server 2017, SQL Server 2016
Sommario
Questo articolo descrive i problemi comuni che è possibile riscontrare quando si esegue l'aggiornamento a SQL Server 2022 e vengono fornite soluzioni e soluzioni alternative per ognuno di essi. Gli scenari trattati includono dump di violazione di accesso associati alla profilazione leggera delle query, aggiornamenti bloccati causati da un'installazione parziale di SQL Server, istanze del cluster di failover (FCI) che non si attivano dopo l'aggiornamento ed errori dello script di aggiornamento della replicazione quando il database di distribuzione fa parte di un gruppo di disponibilità Always On (AG). Usare questa guida per risolvere i problemi relativi a un aggiornamento sul posto non riuscito a SQL Server 2022 e per ripristinare online l'istanza di SQL Server.
Dump delle violazioni di accesso durante l'aggiornamento in un ambiente AlwaysOn
Questo errore si verifica quando si esegue l'aggiornamento a SQL Server 2022 in un ambiente Always On. Il messaggio di errore e le voci di log associate indicano un'eccezione irreversibile generata durante il processo di aggiornamento.
Messaggio d'errore
Codice di eccezione: c0000005 EXCEPTION_ACCESS_VIOLATION
Registro eventi dell'applicazione
Error: A user request from the session with SPID <SPID> generated a fatal exception. SQL Server is terminating this session.
Information: Windows Error Reporting - Fault bucket INVALID_REQUEST, type 0
Log degli errori di SQL Server
Error: A user request from the session with SPID <SPID> generated a fatal exception. SQL Server is terminating this session. Contact Product Support Services with the dump produced in the log directory.
Soluzione
Questo problema è un problema noto con LIGHTWEIGHT_QUERY_PROFILING in SQL Server 2022.
Il problema è stato risolto in Aggiornamento cumulativo 4 per SQL Server 2022 e in Aggiornamento cumulativo 20 per SQL Server 2019.
Soluzione
Se non è ancora possibile applicare l'aggiornamento cumulativo, disattivare LIGHTWEIGHT_QUERY_PROFILING. La profilatura leggera è disattivata a livello di database usando la LIGHTWEIGHT_QUERY_PROFILING configurazione con ambito database:
ALTER DATABASE SCOPED CONFIGURATION SET LIGHTWEIGHT_QUERY_PROFILING = OFF;
Aggiornamento bloccato da un'istanza di SQL Server 2022 inattiva
Non è possibile eseguire l'aggiornamento a SQL Server 2022 perché il computer dispone di un'istanza inattiva SQL Server 2022.
Motivo
Questo problema si verifica quando un'installazione SQL Server precedente ha esito negativo e lascia un'istanza parzialmente installata nel computer. Il programma di installazione di SQL Server non esegue automaticamente il rollback dell'installazione quando si verifica un errore. L'istanza parzialmente installata non include l'edizione di SQL Server si sta tentando di installare, causando l'esito negativo dei tentativi di installazione successivi per la stessa versione.
Soluzione
Seguire la procedura descritta in Remove un'installazione parziale di SQL Server e quindi riavviare l'aggiornamento.
L'istanza del cluster di failover non riesce ad andare online dopo l'aggiornamento
Dopo aver aggiornato SQL Server da una versione precedente a SQL Server 2022 in un'istanza del cluster failover (FCI), l'istanza può non essere online. In Gestione cluster di failover il ruolo SQL Server viene visualizzato come non riuscito e l'istanza non viene avviata.
Motivo
L'istanza di SQL Server è bloccata in modalità di aggiornamento dello script, che impedisce l'avvio. Durante un aggiornamento, SQL Server esegue script di aggiornamento come parte della sequenza di avvio. Se uno di questi script ha esito negativo o non termina, l'istanza rimane in modalità di aggiornamento dello script e non può essere online.
Soluzione
Per portare online l'istanza di SQL Server, aggirare lo script di aggiornamento in esecuzione seguendo i passaggi descritti in Risolvere i problemi relativi agli errori dello script di aggiornamento durante l'applicazione di un aggiornamento.
Nota
Il flag di traccia -T902 disattiva l'esecuzione dello script di aggiornamento durante l'avvio. Rimuovi il flag di traccia dopo aver risolto il problema alla base dello script di aggiornamento, in modo che i passaggi dell'aggiornamento in sospeso possano essere completati.
Errore dello script di aggiornamento della replica quando il database di distribuzione si trova in un gruppo di disponibilità
Si verifica un errore di replica quando si esegue l'aggiornamento a SQL Server 2022 in un server che ospita il database distribution in un gruppo di disponibilità.
Nota
Questo problema può verificarsi anche quando si esegue l'aggiornamento di SQL Server dalla versione 2016 SP2 CU3, SQL Server 2017 CU6 o versioni successive a SQL Server 2019. La correzione per questo problema è disponibile nell'aggiornamento cumulativo 21 per SQL Server 2019.
Messaggio d'errore
SQL Server installazione viene completata ma viene visualizzato l'errore "Si è verificato un errore durante l'esecuzione degli script di aggiornamento della replica" per il componente di replica. Se si esegue un ripristino in un'istanza in questo stato, viene visualizzato lo stesso messaggio di errore.
Log degli errori di SQL Server
Executing sp_vupgrade_replication.
Could not open distribution database <distribution_db_name> because it is offline or being recovered. Replication settings and system objects could not be upgraded. Be sure this database is available and run sp_vupgrade_replication again.
Error executing sp_vupgrade_replication.
Saving upgrade script status to 'SOFTWARE\Microsoft\MSSQLServer\Replication\Setup'.
Motivo
L'errore si verifica quando il database di distribuzione fa parte di un gruppo di disponibilità e viene tentato un aggiornamento sul posto.
Soluzione
La correzione è disponibile in Aggiornamento cumulativo 5 per SQL Server 2022.
Soluzione
Se non è possibile applicare l'aggiornamento cumulativo, seguire questa procedura:
- Rimuovere il database di distribuzione dall'AG.
- Eseguire l'aggiornamento a SQL Server 2022.
- Al termine dell'aggiornamento, aggiungere nuovamente il database di distribuzione al gruppo di disponibilità.
Contenuti correlati
- Rimuovere un'installazione parziale di SQL Server
- Disinstallare un'istanza esistente di SQL Server (programma di installazione)
- Aggiornamenti di versione ed edizione supportati (SQL Server 2022)
- Aggiornare le repliche del gruppo di disponibilità
- Risolvere gli errori dello script di aggiornamento durante l'applicazione di un aggiornamento
- Risolvere i problemi comuni di installazione dell'aggiornamento cumulativo di SQL Server