L'aggiornamento di SQL Server non riesce e viene visualizzato l'errore 5133 durante l'esecuzione di script di database di aggiornamento
Questo articolo illustra come risolvere un problema a causa del quale un aggiornamento cumulativo (CU) o un Service Pack (SP) per SQL Server segnala l'errore 5133 durante l'esecuzione di script di aggiornamento del database.
Sintomi
Quando si applica un CU o SP, il programma di installazione potrebbe segnalare l'errore seguente:
Attesa dell'handle di recupero del Motore di database non riuscita. Controllare il log degli errori di SQL Server per individuare le possibili cause.
Quando si esamina il log degli errori di SQL Server, è possibile notare i messaggi di errore seguenti:
Error: 5133, Severity: 16, State: 1
Directory lookup for the file "<path>\MSSQL10.<Instancename>\MSSQL\Data\temp_MS_AgentSigningCertificate_database.mdf" failed with the operating system error 3(The system cannot find the path specified.).
Error: 1802, Severity: 16, State: 1.
CREATE DATABASE failed. Some file names listed could not be created. Check related errors.
Error: 912, Severity: 21, State: 2.
Script level upgrade for database 'master' failed because upgrade step 'sqlagent100_msdb_upgrade.sql' encountered error 598, state 1, severity 25.
This is a serious error condition which might interfere with regular operation and the database will be taken offline.
If the error happened during upgrade of the 'master' database, it will prevent the entire SQL Server instance from starting.
Examine the previous errorlog entries for errors, take the appropriate corrective actions and re-start the database so that the script upgrade steps run to completion.
Error: 3417, Severity: 21, State: 3.
Cannot recover the master database. SQL Server is unable to run. Restore master from a full backup, repair it, or rebuild it. For more information about how to rebuild the master database, see SQL Server Books Online.
Causa
SQL Server segnala l'errore 5133 quando si verifica un errore del sistema operativo quando si tenta di determinare la directory di un file. SQL Server segnala l'errore 598 quando si verifica un errore durante l'esecuzione di istruzioni CREATE DATABASE o ALTER DATABASE .
Note
Da motore di database eventi ed errori, è possibile visualizzare Error 598: An error occurred while executing CREATE/ALTER DB. Please look at the previous error for more information
.
Le voci precedenti all'errore 598 possono fornire altre informazioni sulla causa dell'errore. In questo articolo, ad esempio, l'errore precedente è 1802, che si verifica perché lo script di aggiornamento non è in grado di creare un database temporaneo nel percorso dati predefinito. Il database temporaneo viene utilizzato dal programma di installazione per varie operazioni eseguite durante il processo di aggiornamento. Per altre informazioni sugli script di aggiornamento del database eseguiti durante l'installazione di CU o SP, vedere Risoluzione degli errori di script di aggiornamento durante l'applicazione di un aggiornamento.
Risoluzione
Verificare che la proprietà Percorso dati sia configurata con un valore valido e corretto in SQL Server.
Da Gestione configurazione SQL Server:
Aprire Gestione configurazione SQL Server e selezionare Servizi di SQL Server.
Fare clic con il pulsante destro del mouse sull'istanza di SQL Server e scegliere Proprietà.
Selezionare la scheda Avanzate e verificare che il valore di Percorso dati sia corretto e non contenga errori di digitazioni o caratteri aggiuntivi. Per convalidare il valore, è possibile copiarlo e provare ad accedervi con Esplora risorse.
Dall'editor del Registro di sistema di Windows:
Nella casella Cerca sulla barra delle applicazioni digitare regedit per aprire l'editor del Registro di sistema.
Passare alla chiave del Registro di sistema per il percorso dati predefinito. Verificare quindi che il percorso sia corretto e non contenga spazi o caratteri aggiuntivi. La chiave del Registro di sistema per il percorso dati predefinito è
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.<Instance Name>\Setup\SQLDataRoot
.Se la chiave del Registro di sistema ha il percorso dati corretto e si continua a ricevere l'errore, seguire questa procedura:
Passare alla chiave del Registro di sistema:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.<Instance Name>\MSSQLServer\Parameters
.Esaminare e modificare il valore di Percorso dati in modo che corrisponda al valore in
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.<Instance Name>\Setup\SQLDataRoot
.
Riavviare l'istanza di SQL Server.
Dopo l'avvio dell'istanza di SQL Server, lo script di aggiornamento verrà eseguito di nuovo.
- Se lo script di aggiornamento sp o CU viene completato correttamente, è possibile controllare il log degli errori di SQL Server e la cartella bootstrap per verificare.
- Se lo script di aggiornamento non riesce di nuovo, controllare la presenza di altri errori nel log degli errori di SQL Server e risolvere i nuovi errori.