WSUS 3.0: Errore 9100 Possible index corruption detected
Controllando un WSUS che non si sincronizzava più ho rilevato il seguente errore probabilmente dovuto ad un arresto improvviso del computer:
Tipo evento: Errore
Origine evento: MSSQL$MICROSOFT##SSEE
Categoria evento: (2)
ID evento: 9100
Descrizione:
Possible index corruption detected. Run DBCC CHECKDB
L’errore è autoesplicativo infatti occorre eseguire il comando DBCC CHECKDB per ripristinare l’integrità del database. La procedura da seguire è la seguente:
- Installare l’utility sqlcmd disponibile nel Feature Pack for Microsoft SQL Server 2005.
- Arrestare il servizio Wsusservice (net stop wsusservice)
- Arrestare il servizio che esegue l’istanza di Sql server MSSQL$MICROSOFT##SSEE utilizzata da WSUS tramite la console dei servizi (services.msc)
- Aggiungere al servizio MSSQL$MICROSOFT##SSEE il parametro –m per avviarlo in modalità Single User.
- Connettersi all’istanza tramite il comando eseguioto dal prompt dei comandi:
“%ProgramFiles%\Microsoft SQL Server\90\Tools\binn\sqlcmd” -I -S np:\\.\pipe\MSSQL$MICROSOFT##SSEE\sql\query - Eseguire i seguenti comandi:
USE SUSDB
ALTER DATABASE SUSDB SET SINGLE_USER
GO
DBCC CHECKDB (SUSDB,REPAIR_ALLOW_DATA_LOSS)
GO
ALTER DATABASE SUSDB SET MULTI_USER
GO
QUIT - Terminato il ripristino della consistenza del DB conviene eseguire una ricostruzione degli indici tramite il procedimento descritto al seguente Appendix I: Database Maintenance.
- Inoltre potrebbe essere utile cancellare la cronologia degli aggiornamenti a riguardi si veda il seguente Cancellare la cronologia degli aggiornamenti in WSUS 3.0 SP1
- Eseguire anche anche il reset di WSUS per allineare i metadati agli aggiornamenti scaricati su file system tramite il comando:
”%ProgramFiles%\Update Services\Tools\wsusutil.exe” reset - Riavviare i servizi Wsusservice e MSSQL$MICROSOFT##SSEE per rilasciare la memoria occupata dalle operazioni di ripristino
Dopo questi passaggio la sincronizzazione ha ripreso a funzionare correttamente.