Sintomi
Si supponga di aver configurato più eventi di controllo di SQL Server per scrivere nel log di sicurezza in Microsoft SQL Server 2022, Microsoft SQL Server 2019 o Microsoft SQL Server 2016 Service Pack 2 (SP2). In questo scenario, si noterà che tutti i controlli del server tranne il primo controllo server non scrivono. Inoltre, quando si aggiunge il secondo controllo server, potrebbe essere visualizzato un messaggio di errore simile al seguente nel log degli errori di SQL Server:
Errore: 33204, Gravità: 17, Stato: 1.
Il controllo di SQL Server non è riuscito a scrivere nel log di sicurezza.
Causa
Questo problema si verifica se il flag origine eventi del Registro di sistema è impostato su 0.
Soluzione alternativa
Per risolvere il problema, utilizzare uno dei metodi descritti di seguito.
-
Impostare gli eventi di controllo del server da scrivere in un file anziché nel log di sicurezza di SQL Server.
-
Per abilitare più eventi di controllo server da scrivere nel log di sicurezza di SQL Server, modificare il valore della sottochiave del Registro di sistema seguente da 0 a 1:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Security\MSSQL$<InstanceName>$Audit\EventSourceFlags
Nota: i controlli del server devono essere riavviati per rendere effettiva la nuova impostazione del Registro di sistema.
ALTER SERVER AUDIT [AuditName] WITH (STATE = OFF)
GO
ALTER SERVER AUDIT [AuditName] WITH (STATE = ON)
GO
Importante: La modifica non corretta del Registro di sistema può provocare seri danni al sistema. Prima di apportare modifiche al Registro di sistema, è consigliabile eseguire il backup dei dati apprezzati nel computer.
Risoluzione
Questo problema è stato risolto nei seguenti aggiornamenti cumulativi per SQL Server:
Nota: anche dopo l'installazione dell'aggiornamento cumulativo 6 (CU6) di SQL Server 2022 o versioni successive per le istanze esistenti, è comunque necessaria una soluzione alternativa perché la correzione non modifica il valore del Registro di sistema esistente. Per le nuove istanze, il valore corretto del Registro di sistema verrà usato dopo l'applicazione della correzione.
Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli aggiornamenti rapidi e le correzioni per la sicurezza inclusi nella build precedente. È consigliabile installare la build più recente per la versione di SQL Server:
Informazioni sui Service Pack per SQL Server 2016
Questo problema è stato risolto nel Service Pack seguente per SQL Server:
I Service Pack sono cumulativi. Ogni nuovo Service Pack contiene tutte le correzioni incluse nei Service Pack precedenti, insieme a eventuali nuove correzioni. È consigliabile applicare il Service Pack più recente e l'aggiornamento cumulativo più recente per tale Service Pack. Non è necessario installare un Service Pack precedente prima di installare il Service Pack più recente. Usare la tabella 1 nell'articolo seguente per trovare altre informazioni sull'ultimo Service Pack e sull'aggiornamento cumulativo più recente.
Stato
Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".
Riferimenti
Informazioni sulla terminologia utilizzata da Microsoft per descrivere gli aggiornamenti software.