Come risolvere l’errore 3417 di SQL Server?
Riassunto: In qualità di utenti di SQL, può capitare di imbattersi in una situazione in cui il tentativo di avviare SQL Server genera l'errore 3417. Questo blog analizza le diverse occorrenze dell'errore e le cause che lo determinano. Inoltre, il blog esplora le soluzioni per risolvere l'errore 3417 di SQL Server. È possibile risolvere l'errore manualmente o utilizzando uno strumento di riparazione SQL.
A volte, quando si tenta di avviare manualmente il servizio SQL Server, può verificarsi l’errore 3417 di SQL Server. Il messaggio di errore completo è il seguente:
“Windows non è riuscito ad avviare SQL Server (MSSQLSERVER) sul computer locale. Per ulteriori informazioni, consultare il Registro eventi di sistema. Se si tratta di un servizio non Microsoft, contattare il fornitore del servizio e fare riferimento al codice di errore 3417 specifico del servizio”.
Prima di discutere i motivi alla base dell’errore 3417 del servizio SQL e le soluzioni per risolverlo, analizziamo innanzitutto alcune istanze di utenti che riportano l’errore.
Occorrenze dell’errore SQL 3417
Caso 1: In questo caso, un utente ha segnalato che quando ha spostato la cartella: (Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL) su un’altra unità, il server SQL ha smesso di funzionare. Quando si è provato a riavviare il server, è stato visualizzato un messaggio di errore: “Windows non ha potuto avviare SQL Server (MSSQLSERVER) sul computer locale“. Per ulteriori informazioni, consultare il Registro eventi di sistema. Se si tratta di un servizio non Microsoft, contattare il fornitore del servizio e fare riferimento al codice di errore 3417 specifico del servizio“.
Istanza 2: durante il tentativo di connettersi a SQL Server per eseguire un progetto Web, un utente ha ricevuto un messaggio di errore: “Si è verificato un errore relativo alla rete o specifico dell’istanza durante la connessione a SQL Server. Il server non è stato trovato o non era accessibile. Verificare che il nome dell’istanza sia corretto e che SQL Server sia configurato per consentire le connessioni remote”. (provider: SQL Network Interfaces, errore: 40 – Errore nell’individuazione del server/istanza specificata)“.
L’utente ha riscontrato che SQL Server Express ha smesso di funzionare in SQL Server Configuration Manager. Quando si è tentato di eseguire SQL Server Express, il servizio non ha risposto. Quando l’utente ha provato ad aprire services.msc per avviare un’istanza di SQL Server (SQLEXPRESS), è stato visualizzato il messaggio di errore “Windows non ha potuto avviare SQL Server (SQLEXPRESS) sul computer locale” con il codice di errore 3417.
Cosa causa l’errore 3417 di SQL Server?
Questo errore può verificarsi quando SQL Server non si avvia per uno dei seguenti motivi:
- “Il database master o tempdb non può essere portato online”. Questo evento può verificarsi quando il db è danneggiato a causa di un guasto hardware o software.
- La cartella contenente i file MDF e NDF viene compressa.
- Problema di autorizzazione della cartella in cui risiede il file db.
Suggerimento: l’errore 3417 di SQL Server può rendere inaccessibile il database SQL. Sebbene esistano soluzioni manuali, la risoluzione dei problemi può richiedere molto tempo e aumentare i tempi di inattività del database. Utilizzate uno strumento di riparazione SQL per ripristinare il database in pochi semplici clic. |
Come risolvere l’errore 3417 di SQL Server?
Per risolvere l’errore 3417 di MS SQL, provare le seguenti soluzioni nella sequenza indicata di seguito:
Soluzione 1: decomprimere il file MDF del database SQL
Se non si riesce ad aprire il database master, verificare se il file del database master (.mdf) è compresso. Se il file è compresso, è necessario decomprimerlo. Per farlo, seguire i seguenti passaggi:
Passo 1: sfogliare e individuare la cartella dei dati di Microsoft SQL Server contenente i file db (MDF e NDF).
Nota: è possibile individuare la cartella dei dati del server SQL consultando il percorso: “C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data”.
Fase 2: Fare clic con il pulsante destro del mouse sulla cartella dei dati di SQL Server. Viene visualizzata la finestra Proprietà di Microsoft SQL Server. Fare clic su Avanzate.
Fase 3: nella finestra di dialogo Attributi avanzati visualizzata, deselezionare la casella di controllo Comprimi contenuto per risparmiare spazio su disco e fare clic su OK.
Fase 4: Si apre nuovamente la finestra di dialogo Proprietà di Microsoft SQL Server. Fate clic sul pulsante Applica e poi su OK. Quando viene visualizzata la casella Conferma modifiche attributi, fare clic su OK.
Figura 5 – Conferma della modifica dell’attributo
Fase 5: fare clic su Continua per procedere.
Figura 6: Continuare a modificare gli attributi
Fase 6: Attendere il completamento delle modifiche agli attributi. Una volta applicate le modifiche, fare clic su OK.
Figura 7: Uscita dalla finestra delle proprietà di Microsoft SQL Server
Dopo aver eseguito questi passaggi, provare a riavviare il servizio SQL Server. Se l’errore persiste, procedere con la soluzione successiva.
Soluzione 2: controllare le autorizzazioni delle cartelle
Nota: questa soluzione all’errore SQL 3417 si applica agli utenti che ricevono l’errore durante lo spostamento di una cartella in un’altra unità.
Assicuratevi che l’account che esegue il servizio SQL Server abbia i diritti di accesso (autorizzazioni di rete) alla cartella contenente i file db di SQL. In caso contrario, seguite questi passaggi per concedere i diritti alla cartella:
Fase 1: Accedere alla cartella dei file SQL e fare clic con il pulsante destro del mouse su di essa, quindi scegliere Proprietà.
Fase 2: dalla casella Proprietà, fare clic sulla scheda Protezione.
Fase 3: nella finestra di dialogo che si apre, scegliere l’account Network Service nella sezione Gruppo o nomi utente:.
Fase 4: selezionare la casella di controllo Controllo completo nella sezione Autorizzazioni per gli utenti autenticati e premere il pulsante OK.
Ora controllate se l’istanza di SQL Server si avvia senza errori.
Soluzione 3: Ricostruire il database master
È possibile ripristinare il db master dal backup completo del database più recente, ma solo se l’istanza di SQL Server è in esecuzione. Poiché non è possibile avviare l’istanza del server, la ricostruzione del db master potrebbe aiutare a risolvere l’errore 3417.
Per ulteriori informazioni sulla ricostruzione del database master, consultare questo link.
Soluzione 4: Riparazione del file MDF
Se la ricostruzione del db master non aiuta a risolvere l’errore, è probabile che il file del db master sia gravemente danneggiato. In questo caso, si può provare a riparare il file MDF danneggiato. Per ulteriori informazioni sulla riparazione del file db, leggete qui: Riparazione del file MDF corrotto del database di SQL Server.
Conclusione
È possibile che si verifichi l’errore 3417 di SQL Server quando si tenta di avviare il servizio SQL Server. L’errore può verificarsi quando non è possibile portare online il master o il tempdb, la cartella contenente i file del database (.mdf o .ndf) è compressa o non si dispone dei diritti di accesso alla cartella. Si può cercare di risolvere il problema seguendo le soluzioni manuali descritte in questo post. Tuttavia, la risoluzione manuale dell’errore SQL 3417 può richiedere molto tempo e aumentare i tempi di inattività del database. Un approccio migliore consiste nell’utilizzare uno strumento specializzato nella riparazione di database SQL, come Stellar Repair for MS SQL, per riparare il file MDF e risolvere l’errore.