Si applica a
SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2016 Service Pack 1 SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2014 Service Pack 2 - duplicate (do not use)

Sintomi

Supponiamo che tu usi un Microsoft SQL Server 2014 o 2016 always on Availability Group (AG). Se si verifica un errore di scrittura simile al seguente in un database secondario, il database potrebbe essere sospeso.

Errore: 17053, gravità: 16, stato: 1. SQLServerLogMgr:: per: errore del sistema operativo 6 (l'handle non è valido). encountered. Errore di scrittura durante lo svuotamento del log.

In questa situazione, se si riprende lo spostamento dei dati, il database non viene ripreso e rimane nello stato Suspended.

Soluzione alternativa

Per risolvere il problema, è possibile riavviare l'istanza di SQL Server oppure è possibile rimuovere il database secondario dal gruppo disponibilità e quindi aggiungerlo di nuovo.

Risoluzione

Questo problema è stato risolto con l'aggiornamento cumulativo seguente per SQL Server:

       Aggiornamento cumulativo 8 per SQL Server 2016 RTM

       Aggiornamento cumulativo 5 per SQL Server 2016 CU5

       Aggiornamento cumulativo 6 per SQL Server 2014 SP2

Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nell'aggiornamento cumulativo precedente. Vedere gli ultimi aggiornamenti cumulativi per SQL Server:

Ultimo aggiornamento cumulativo per SQL Server 2016

Ultimo aggiornamento cumulativo per SQL Server 2014

Nota

Dopo aver installato questo aggiornamento, se si verifica questo problema, è possibile eseguire il comando Transact-SQL seguente per riavviare il database e quindi riprendere lo spostamento dei dati per il database.

ALTER DATABASE <database_name> SET HADR RESUME

Questa operazione non è automatizzata. Di conseguenza, è necessario emettere manualmente l'operazione di ripresa. Poiché la maggior parte dei tipi di errori che causano la sospensione di movimenti di dati nella replica secondaria richiede l'intervento manuale. 

Ad esempio, se il file di log si trova in una cartella condivisa o archiviato in Microsoft Azure BLOB e la connessione viene persa, si verificherà l'errore 17053. L'intervento manuale assicura che la connessione alla cartella condivisa o a Azure BLOB venga ripristinata prima di emettere il comando Riprendi HADR.

Stato

Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".

Riferimenti

Informazioni sulla terminologiautilizzata da Microsoft per descrivere gli aggiornamenti software.

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.